|
analisi-disegno.com Homepage | Blog | Per essere avvisati in caso di nuovi documenti | In English
|
|
Processo di sviluppo software incrementale Non è certo chi sia stato il vero ideatore, ma una delle prime presentazioni è quella di Barry Boehm, nel 1981 ("Software Engineering Economics", editore Prentice Hall). La figura riportata sotto (un activity diagram UML) non rappresenta la versione originale del processo, ma una delle sue derivazioni più diffuse.
E' una derivazione del processo di sviluppo a cascata (Waterfall). Completata la fase di analisi, viene effettuata una attività di design dell'architettura del sistema. Vengono, cioè, effettuate le scelte "di alto livello" relative alla strutturazione del sistema in (macro)parti distinte (sottosistemi), definite le responsabilità di ciascun sottosistema, le modalità di dialogo (interfacce) tra i diversi sottosistemi. A questo punto vengono definite delle priorità di realizzazione, sulla base di due aspetti:
Sulla base delle priorità definite, il progetto viene articolato in una serie di sottoprogetti realizzativi, ciascuno dei quali produrrà uno o più sottosistemi (parti del sistema complessivo). I sottoprogetti realizzativi potranno essere condotti in sequenza rigida (uno dopo l'altro), oppure essere condotti parzialmente in parallelo (con sovrapposizioni temporali). Diffusione del processo incrementale Viene spesso utilizzato, in progetti di complessità medio-grande, come variante di un processo a cascata, in quanto costituisce un modo di ridurne i rischi. Vantaggi Rispetto al processo a cascata, permette di arrivare a consegnare qualcosa di concreto prima di aver completato l'intero sistema. In questo modo si ottengono feedback (riscontri) concreti, con indicazioni utilizzabili anche nei sottoprogetti realizzativi ancora in corso o successivi. E si riducono i rischi di insuccesso. L'articolazione del piano di progetto è più complessa (rispetto al processo di sviluppo a cascata), ma permette una maggiore flessibilità nell'assegnazione delle persone ai compiti progettuali, quando i sottoprogetti vengono pianificati con una parziale sovrapposizione temporale. Svantaggi Condivide con il processo a cascata le due assunzioni - erronee - che:
Torna a pagina introduttiva processo |
| analisi-disegno.com, servizi e materiali per lo sviluppo dei sistemi software, a cura di Adriano Comai. |