Luca Cabibbo Analisi e Progettazione del Software Ideazione (non è la fase dei requisiti) Capitolo 4 marzo 2013 Il meglio è nemico del bene. Voltaire 1 *** AVVERTENZA *** I lucidi messi a disposizione sul sito del corso di Analisi e progettazione del software NON sostituiscono il libro di testo 2
4.1 Che cos è l ideazione In UP, l ideazione è la fase iniziale spesso breve che ha lo scopo di avviare il progetto qual è la visione del progetto? la portata? lo studio economico? è fattibile? compro o costruisco? stima approssimativa dei costi procedo o mi fermo? 3 Che cosa è (e non è) l ideazione L ideazione, in una frase considerare la portata (scope) del prodotto, la visione e lo studio economico Il problema risolto dall ideazione, in una frase le parti interessate hanno un accordo di base sulla visione del progetto, e vale la pena effettuare un investigazione seria? Che cosa non è l ideazione lo scopo della fase di ideazione non è definire tutti i requisiti l analisi dei requisiti viene avviata (ma certamente non completata) durante l ideazione l analisi dettagliata dei requisiti avviene principalmente durante la fase di elaborazione insieme ad analisi, progettazione, implementazione, test,... 4
Un analogia Nel settore petrolifero, quando viene considerato un nuovo campo da cui estrarre petrolio ci sono prove sufficienti o uno studio economico che giustificano una trivellazione esplorativa? se sì, vengono effettuate delle misure e la trivellazione esplorativa vengono quindi fatte delle stime La fase di ideazione è simile al primo passo in questa analogia non permette di capire quanto e quando permette di decidere se continuare o interrompere l esplorazione 5 4.2 Durata dell ideazione Scopo dell ideazione è fissare una visione comune (tra le parti interessate) sul prodotto determinare la fattibilità del progetto decidere se vale la pena approfondire l investigazione, svolgendo anche la fase di elaborazione La fase di ideazione può essere molto breve comprende almeno un primo incontro per stabilire i requisiti la pianificazione della prima iterazione di elaborazione 6
4.3 Elaborati iniziati durante l ideazione Durante l ideazione inizia la creazione di vari elaborati gli elaborati vengono prodotti in modo iterativo e incrementale alcuni elaborati vengono iniziati (spesso semplicemente abbozzati) durante l ideazione non tutti gli elaborati vengono comunque prodotti durante il progetto ciascun progetto dovrebbe produrre solo gli elaborati che hanno un valore effettivo per il progetto L importanza di alcuni elaborati è spesso più legata alla loro progettazione che non alla loro realizzazione i piani sono inutili, ma la pianificazione è indispensabile [Eisenhower] 7 Elaborati iniziati durante l ideazione Visione (Vision) e Studio economico (Business Case) principali obiettivi e vincoli, studio economico, sommario del progetto Modello dei casi d uso (Use-Case Model) requisiti funzionali, e relativi requisiti non funzionali Specifiche supplementari (Supplementary Specification) Glossario (Glossary) Lista dei rischi (Risk List) e Piano di gestione dei rischi (Risk Management Plan) Prototipi e proof-of-concept Piano dell iterazione (Iteration Plan) Piano delle fasi (Phase Plan) e Piano di sviluppo del software (Software Development Plan) Scenario di sviluppo (Development Case) 8
4.5 Ideazione e UML Durante l ideazione c è poca modellazione la modellazione è importante soprattutto durante l elaborazione UML viene applicato soprattutto durante l elaborazione 9 4.4 Non hai capito l ideazione se dura più di qualche settimana provi a definire molti requisiti ci si aspetta che i piani e le stime siano affidabili viene definita l architettura del sistema credi che la sequenza giusta di attività sia: (1) definire i requisiti; (2) definire l architettura; (3) implementare il sistema manca la Visione o lo Studio economico i nomi di molti attori e casi d uso non sono stati identificati la maggior parte dei casi d uso sono stati scritti in dettaglio nessun caso d uso è stato scritto in dettaglio 10