LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .
-
Upload
dorotea-piccolo -
Category
Documents
-
view
221 -
download
1
Transcript of LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .
![Page 1: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/1.jpg)
L’Informatica dal Problema alla Soluzione
Il Processo di sviluppo del software
Mario Capursohttp://info.bazarinfo.info
![Page 2: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/2.jpg)
Il ProblemaLa necessità di risolvere problemi è una
esigenza umana fondamentaleQuesta esigenza presume l’esistenza di
diverse categorie di persone: Coloro che sentono il problema e desiderano
risolverlo (utenti finali) Coloro che cercano soluzioni per il problema
(ricercatori, analisti, progettisti) Coloro che costruiscono strumenti e dispositivi
che risolvono i problemi (costruttori)
![Page 3: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/3.jpg)
Il Problema
Intuibile Formalizzabile Risolubile
![Page 4: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/4.jpg)
Risolvere il ProblemaPer risolvere un problema è necessario
Intuirlo Esprimerlo con formule Trovare un metodo di soluzione Usare il metodo correttamente
E’ sempre possibile tutto ciò ?
![Page 5: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/5.jpg)
Il Problema: risolubile ?
Problema nonesprimibileProblema intuibile
Problema formalizzabile
Risolubile
Col computer
![Page 6: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/6.jpg)
Il Problema: non risolubile ?
Perché: Non esprimibile Esprimibile solo intuitivamente Formalizzabile ma non risolubile Formalizzabile, risolubile ma non col
computer Formalizzabile, risolubile col computer
ma in tempi e costi inaccettabili
![Page 7: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/7.jpg)
Il Ciclo di sviluppo del Software Analisi Progettazione Programmazione Test (Ricerca e correzione degli errori) Documentazione Installazione Manutenzione
![Page 8: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/8.jpg)
Il Sistema Un Sistema è un insieme di
Componenti legate da forme di Interazione
![Page 9: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/9.jpg)
In un Sistema bisogna osservare…
AmbienteComponente
Interazione
•Obiettivo
•Strumenti
•Risorse
•Procedure
•Variabili di Stato
•Stati
•Eventi
![Page 10: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/10.jpg)
Un Sistema può essere… Naturale o Artificiale Semplice o Complesso Deterministico o Probabilistico Aperto o Chiuso Con o senza Feedback
![Page 11: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/11.jpg)
Notazione di Yourdon-De Marco
Ambiente
Componenteulteriormentedecomponibile
Interazione
ComponenteNON
ulteriormentedecomponibile
Archivio
![Page 12: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/12.jpg)
Esempio: Il nostro Istituto
Istituto
La nostracittà
Didattica
U.Tecnico
Studenti
Genitori
PresideFa Iscrizione
Archiviostudenti
Chiede libretto
![Page 13: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/13.jpg)
Fase di Analisi Obiettivo: Analizzare i termini del problema Lavora l’Analista di Sistema Produce un Documento di Analisi
Sintomi e conseguenze del problema Analisi dell’esistente Analisi dei Requisiti
NON deve produrre una soluzione Prepara il terreno per il progettista
![Page 14: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/14.jpg)
Analisi dell’esistente Descrive il sistema esistente, usando la
notazione di Yourdon-De Marco Riporta e descrive obiettivo, ambiente,
componenti, interazioni, risorse, strumenti, procedure, variabili di stato, stati ed eventi del sistema
Ripete la cosa per le componenti ulteriormente decomponibili (sottosistemi)
![Page 15: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/15.jpg)
Analisi dei Requisiti Riporta le caratteristiche che il cliente
desidera siano presenti nella soluzione Un requisito comincia con la frase “La
soluzione dovrebbe…” e ha una priorità Priorità alta: deve esserci per forza Priorità media: meglio se c’è Priorità bassa: non è importante
![Page 16: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/16.jpg)
Tipi di RequisitiSecondo la Metodologia ISO (International Standard
Organization) ODP (Open Distributed Processing), i Requisiti vanno raggruppati in cinque Punti di Vista (Viewpoints):
Enterprise (Parlano dell’utente, di uso, tempi e costi)
Information (Parlano di Informazioni da gestire) Computation (Parlano di Funzionalità da eseguire) Engineering (Parlano di Architettura da
possedere) Technology (Parlano di Tecnologia da utilizzare)
![Page 17: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/17.jpg)
Esempi Enterprise: La soluzione dovrebbe essere
usata… Information: La soluzione dovrebbe gestire le
seguenti informazioni… Computation: La soluzione dovrebbe realizzare
le seguenti funzionalità… Engineering: La soluzione dovrebbe avere la
seguente architettura… Technology: La soluzione dovrebbe usare la
seguente tecnologia…
![Page 18: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/18.jpg)
Analisi e Costruzione di Prototipi L’ingegnere edile mostra al cliente un
modellino del palazzo prima di costruirlo, per capire meglio le sue esigenze
Così l’informatico potrebbe mostrare al cliente un prototipo usa e getta del programma prima di costruirlo, per capire meglio le sue esigenze (REQUISITI)
Questa tecnica viene chiamata di Quick Prototyping
![Page 19: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/19.jpg)
Fase di Progettazione Obiettivo: Progettare una o più soluzioni Lavora il Progettista di Sistema Produce un Documento di Progettazione
Soluzione 1 Soluzione 2 Soluzione n Analisi Costi-Benefici
Richiede che il cliente decida quale soluzione realizzare (oppure che decida di lasciar tutto com’è adesso)
Prepara il terreno per la realizzazione della soluzione
![Page 20: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/20.jpg)
Soluzioni Possibili Lascia tutto com’è adesso Compra invece che costruire Sostituisci archivi manuali con archivi
informatici e procedure manuali con procedure informatiche (soluzione di minimo impatto)
Guarda le soluzioni sul mercato e prendi il meglio da tutte
Inventati qualcosa, perché non esiste nulla da cui copiare
![Page 21: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/21.jpg)
Come appare una Soluzione ? Descrizione della Soluzione Descrizione del sistema progettato, usando la
notazione di Yourdon-De Marco Descrizione di obiettivo, ambiente, componenti,
interazioni, procedure, risorse, strumenti, variabili di stato, stati ed eventi del sistema progettato. Descrivere le procedure in pseudocodice. Descrivere gli archivi come tabelle
Ripetere la cosa per le componenti ulteriormente decomponibili (sottosistemi)
Descrizione dei requisiti utente posseduti e non posseduti dalla soluzione
![Page 22: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/22.jpg)
Suggerimenti per una Soluzione di Minimo Impatto Ogni requisito di tipo Information
“La soluzione dovrebbe gestire le seguenti
informazioni sull’entità X…” diventa un archivio X ed un insieme di funzionalità “inserisci, modifica, cancella, stampa, vai all’inizio, alla fine, avanti, indietro nell’archivio X” (diverranno form e bottoni in Visual Basic, moduli e sottoprogrammi in C, classi e metodi in Java…)
![Page 23: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/23.jpg)
Ulteriori Suggerimenti Ogni procedura manuale diventa
una procedura informatica Ogni requisito di tipo computation
diventa una procedura di tipo informatico
Le procedure informatiche vengono raggruppate in menù
![Page 24: LInformatica dal Problema alla Soluzione Il Processo di sviluppo del software Mario Capurso .](https://reader036.fdocument.pub/reader036/viewer/2022062418/5542eb4c497959361e8b943a/html5/thumbnails/24.jpg)
Analisi Costi-Benefici Analizza in maniera comparativa
costi e benefici delle varie soluzioni Cerca di quantificare i benefici di
ciascuna soluzione Distingue i costi iniziali dai costi
ricorrenti Serve al cliente per decidere quale
soluzione realizzare