Lezione 3 – Complementi sui casi d’uso Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 4 - Progettazione del software Ernesto Damiani Università degli Studi di Milano Casi d’uso come strumenti di comunicazione Il caso d’uso permette ai committenti di validare i casi d’uso e li incoraggia a partecipare attivamente alla loro definizione. Chi-Cosa-Perché • I casi d’uso catturano – Chi (attore) – Fa Cosa (interazione) – Perché (a che scopo, con quale obiettivo) • Non si occupano, però, del funzionamento interno del sistema (il Come) Gli scenari (1) • Uno scenario rappresenta un singolo percorso all’interno del caso d’uso. • D’altro canto, il caso d’uso può essere definito come l’insieme di tutti gli scenari. Gli scenari (2) • Tipicamente un caso d’uso comprende uno scenario principale e altri alternativi che rappresentano ciascuna possibile variante del flusso. • Le varianti vengono fatte scattare da opzioni, condizioni d’errore, violazione della sicurezza ecc. • Gli scenari potrebbero essere descritti formalmente mediante diagrammi di sequenza, ma il linguaggio naturale è più adeguato nella fase della raccolta dei requisiti. I confini del sistema Un insieme completo di casi d’uso • Specifica tutte le interazioni possibili con il sistema • Esaurisce tutti i comportamenti richiesti al sistema • Definendo i confini del sistema stesso Esempio di diagramma Schema per un caso d’uso Titolo Descrizione Relazioni Attori Precondizioni Scenario Principale Scenari alternativi Requisiti non funzionali Punti aperti Linee guida per la redazione dei casi d’uso (1) • Identificare tutti i possibili usi del sistema. • Creare un profilo utente per ciascuna categoria di utente e ciascun ruolo che l’utente gioca e ha rilevanza per il sistema. • Per ciascun ruolo identificare tutti gli obiettivi significativi che gli utenti si pongono e il sistema supporterà. • Per ciascun obiettivo creare un caso d’uso seguendo lo schema. Linee guida per la redazione dei casi d’uso (2) • Mantenere lo stesso livello di astrazione lungo tutto il caso d’uso: singoli passi in un caso d’uso d’alto livello d’astrazione possono essere trattati come obiettivi da casi d’uso di livello d’astrazione più basso. • Strutturare i casi d’uso senza eccedere nella complessità. • Ricontrollare e validare i casi d’uso insieme agli utenti e ai committenti. FINE