il linguaggio uml - teoria ed esempi pratici sugli use case diagram
TRANSCRIPT
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!