Analisi e Progettazione del Software La Fase di Elaborazione: Introduzione versione 1.0 G. Mecca Università della Basilicata mecca@unibas.it La Fase di Elaborazione: Introduzione >> Sommario Sommario Il Punto della Situazione Obiettivi Elaborati Una Prospettiva Complessiva dell Elaborazione 2
La Fase di Elaborazione: Introduzione >> Il Punto della Situazione Il Punto della Situazione Si è conclusa la fase di ideazione documento iniziale di visione (obiettivi, priorità, tecnologia) elenco iniziale dei casi d uso alcuni (1-2 oppure 10%) casi d uso descritti in dettaglio documento degli ulteriori requisiti eventuale glossario 3 La Fase di Elaborazione: Introduzione >> Il Punto della Situazione Il Punto della Situazione Comincia la fase di elaborazione tipicamente tra 2 e 4 iterazioni tipicamente tra 2 e 6 settimane lunghezza fissata ( timeboxed ) Obiettivo di ciascuna iterazione produrre un sistema eseguibile con un limitato numero di funzionalità, corrispondenti solo ad alcuni dei casi d uso 4
La Fase di Elaborazione: Introduzione >> Obiettivi Obiettivi Obiettivi della fase di elaborazione (nel suo complesso) sviluppare gli elementi di maggior rischio e priorità definire il nucleo architetturale dell applicaz. esplorare in larghezza e superficialmente tutta l architettura del sistema ( wide and shallow implementation ) 5 La Fase di Elaborazione: Introduzione >> Obiettivi Obiettivi Wide and Shallow Implementation identificare i componenti fondamentali dell architettura software definire le interfacce di comunicazione implementare una serie di casi d uso che attraversino l architettura da parte a parte Attenzione non si tratta di prototipi usa e getta il codice deve avere requisiti di qualità 6
La Fase di Elaborazione: Introduzione >> fondamentali dell elaborazione sviluppo del codice integrazione, test e verifica del sistema Forme di test test di unità test di accettazione Test di accettazione svolti dal committente sui sistemi eseguibili 7 La Fase di Elaborazione: Introduzione >> Test di accettazione simulazioni di utilizzo reale del sistema servono a valutare usabilità, correttezza, rispondenza ai requisiti sono decisi da committente e sviluppatori (rappresentano una sorta di contratto ) sono fatti manualmente oppure automatizzati devono essere ripetuti ad ogni nuova versione 8
La Fase di Elaborazione: Introduzione >> Altre attività analisi dei requisiti progetto Analisi dei requisiti progressivamente vengono approfonditi tutti i casi d uso Progetto viene raffinato il progetto delle classi e dell architettura software 9 La Fase di Elaborazione: Introduzione >> Esempio: Il Sistema PdD Elaborazione Costruzione I iterazione II iterazione III iterazione IV iterazione prima iteraz.... ultima iteraz. 40% 80% 95% 100% 100% fuori linea 15% fuori linea 50% fuori linea 80% fuori linea 100% in linea 10% in linea 60% in linea 100% Attenzione: si tratta di un esempio a posteriori, NON di una pianificazione 10
La Fase di Elaborazione: Introduzione >> Criteri per selezionare i casi d uso rischio tecnologico e complessità (casi d uso rischiosi vanno affrontati prima) valore aggiunto (casi d uso di valore vanno affrontati prima) copertura dell architettura (casi d uso che consentono di toccare prima possibile tutti i moduli dell architettura) 11 La Fase di Elaborazione: Introduzione >> Elaborati Elaborati Vari elaborati iniziano nell elaborazione e vengono progressivamente raffinati Modello concettuale dei dati Diagramma delle classi Progetto dell interfaccia utente (schermi) Progetto della persistenza Eventuali altri diagrammi es: diagrammi di comportamento 12
La Fase di Elaborazione: Introduzione >> Elaborati Una Prospettiva Complessiva Il punto di partenza le regole di funzionamento della realtà di interesse e dell applicazione Il punto di arrivo il prodotto software funzionante (codice e test) di avvicinamento analisi e progetto come esplorazione e mezzo per ridurre la separazione ( gap ) 13 La Fase di Elaborazione: Introduzione >> Elaborati Una Prospettiva Complessiva La Realtà di Interesse Casi d uso Altri Requisiti Modello Concettuale Analisi e Progettazione Diagrammi delle Classi Diagrammi di Comport. Progetto degli Schermi Modello dei dati Il Prodotto Software Codice Test iterativamente 14
La Fase di Elaborazione: Introduzione >> Elaborati Una Prospettiva Complessiva LUP: due linee ereditarie basato sullo Unified Process e su UML con una filosofia agile Filosofia complessiva recepire gli insegnamenti principali dell uno e dell altro contesto mettendoli assieme per creare valore aggiunto 15 La Fase di Elaborazione: Introduzione >> Elaborati Una Prospettiva Complessiva L insegnamento dello UP il reale valore dei modelli costruire diagrammi è utile per ragionare sull applicazione, per capire, per comunicare L insegnamento dei metodi agili il reale valore del codice il fine ultimo è sviluppare codice di qualità, che consenta di adattarsi ai cambiamenti 16
La Fase di Elaborazione: Introduzione >> Sommario Riassumendo Il Punto della Situazione Obiettivi Elaborati Una Prospettiva Complessiva dell Elaborazione 17 La Metodologia di Riferimento >> Elaborati Elaborati di LUP Elaborato Ideaz. Elab. Costr. Trans. Man. Requisiti Documento di Visione Modello dei Casi d Uso si Altri Requisiti si Modello Concettuale ssn Analisi e Diagramma delle Classi ssn Progettazione Progetto degli schermi Modello dei dati ssn Implementazione Codice si Verifica Piano dei test si Gestione del prog. Pianificazione 18