IL LINGUAGGIO UML TEORIA ED ESEMPI PRATICI SUGLI USE CASE DIAGRAM Cramarossa Giuseppe Dicembre 2015
IL LINGUAGGIO UMLTEORIA ED ESEMPI PRATICI SUGLI USE CASE DIAGRAM
Cramarossa GiuseppeDicembre 2015
COSA FAREMO• Cos’è l’UML
• Generalità
• Usi
• Scenari
• Casi d’uso
• Attori
• Software per la creazione dei diagrammi dei casi d’uso
• Esempi pratici
• Gestione negozio online
• Gestione di un blog
COS’È L’UML?• Acronimo di Unified Modelling Language
• Modellare il problema, il primo passo per risolvere qualsiasi situazione
• È un linguaggio grafico che descrive il problema da risolvere
• Esistono vari linguaggi UML• Use Case Diagram
• Approfondiremo proprio questo tipo di linguaggio
• Class Diagram
• Usata nella programmazione ad oggetti
• Altri diagrammi usati anche in un contesto non informatico
USI• Ingegneria del software
• Fase di definizione
• Il problema da risolvere viene «sviscerato» in tutte le sue caratteristiche
• Documentazione del progetto• Dovrebbe essere dedicato molto più tempo alla fase di documentazione del progetto che alla codifica
• Se fatta bene, porta molti vantaggi
• Progetto di alta qualità e ben documentato
• Manutenzione futura del codice più rapida
• Pensate a chi deve manutenere un progetto realizzato da altri…
COMPONENTI DELLO USE CASE DIAGRAM• Componenti
• Scenari
• Casi d’uso
• Attori
• Ogni componente ha una sua rappresentazione grafica
• Ogni componente è legato da una freccia
• Nelle slide seguenti verranno trattati tutti i vari componenti in dettaglio
CHI SONO GLI ATTORI?• Persone o entità che utilizzano il progetto
• Stakeholder
• Esistono diversi attori• Primari
• Utilizzano le funzionalità di un progetto
• Secondari
• Fanno da supporto a una certa funzionalità del progetto
• Outsourcing
• Il simbolo è un omino stilizzato
COS’È UNO SCENARIO?• Descrizione in linguaggio chiaro delle caratteristiche di una funzionalità del progetto
• Tipi di scenario• As-is
• Sistema già presente
• Re-engineering
• Visionary
• Descrizione di un sistema futuro o desiderato
• Greenfield o re-engineering
• Evalutation
• Training
• Tutorial
COS’È UN CASO D’USO• Descrive la funzionalità di un progetto e contiene tutti gli scenari associati
• Vari tipi di caso d’uso
• Generale
• Specifico
• Ci possono essere due operazioni
• Inclusione
• Un caso d’uso include un altro caso d’uso
• Estensione
• Un caso d’uso specifico estende un caso d’uso generale
• Viene rappresentato con un ellisse
DOMANDE DA PORSI PER IL DIAGRAMMA DEI CASI D’USO• Chi sono gli utilizzatori del nostro progetto
• Attori
• Quali sono e funzionalità del nostro progetto?• Funzionalità del progetto
• Casi d’uso
• Cosa serve per svolgere una determinata funzionalità?• Outsourcing?
• Attore secondario
• Caso d’uso incluso o esteso
CREAZIONE DEI DIAGRAMMI DEI CASI D’USO• Si parte col definire tutti i casi d’uso e gli attori coinvolti
• Software usato: StarUML
• Dopo aver definito tutti i casi d’uso, si documentano tutti i vari scenari dei casi d’uso
• Nome del caso d’uso
• Descrizione sintetica
• Attori
• Caso Base (chiamato anche basic flow o happy path)
• Operazioni da svolgere
• Condizione d’uscita
• Eccezioni
ESEMPIO 1: GESTIONE BLOG – CASI D’USO (NON ESAUSTIVO)
ESEMPIO 1: UNO SCENARIO D’ESEMPIO• Nome del caso d’uso: Ricerca notizie
• Descrizione sintetica: Permette di ricercare una notizia
• Attori: Amministratore, Utente
• Caso Base: L’attore deve trovare una notizia contenente una determinata parola
• Operazioni da svolgere• L’utente digita la parola in un modulo di ricerca
• Il sistema presenta tutte le notizie contenenti quelle parole
• L’utente sceglie la notizia che cerca
• Il sistema carica la notizia selezionata
• Eccezioni• Quali potrebbero essere le eccezioni?
ESEMPIO 2: GESTIONE NEGOZIO – CASI D’USO (NON ESAUSTIVO)
ESEMPIO 2: UNO SCENARIO D’ESEMPIO (1/2)• Nome del caso d’uso: Aggiunta Prodotto
• Descrizione sintetica: Permette di aggiungere un prodotto non esistente in magazzino
• Attori: Magazziniere
• Caso Base: Il magazziniere deve essere registrato al sistema e deve avere il ruolo magazziniere per poter aggiungere un prodotto
• Operazioni da svolgere• Il magazziniere inserisce tramite un modulo le informazioni riguardanti il prodotto
• Il sistema gli chiede di inserire le scorte in possesso di quel prodotto
• Dopo aver inserito le informazioni, deve inserire il numero di scorte presenti in magazzino
• Il sistema gli chiede di inserire il prezzo del prodotto
• In seguito, deve inserire il prezzo del prodotto
ESEMPIO 2: UNO SCENARIO D’ESEMPIO (2/2)• Condizione d’uscita: se il magazziniere ha inserito tutte le informazioni il prodotto verrà aggiunto al magazzino e potrà essere visualizzato e
acquistato dall’utente
• Eccezioni• Prodotto già esistente
• Il sistema avvisa il magazziniere che il prodotto è già esistente
• Il sistema ritorna all’inserimento di un nuovo prodotto
• Numero di scorte minori di 1
• Il sistema avvisa il magazziniere che ha inserito un numero di scorte minore di 1
• Viene chiesto di inserire nuovamente il numero di scorte
• Prezzo minore di 0
• sistema avvisa il magazziniere che ha inserito un prezzo minore di 0
• Viene chiesto di inserire nuovamente il prezzo
• Svolgimento di altri scenari in classe
• Grazie per l’attenzione!