4_UML_INTRO Flashcards
(10 cards)
Passi costruzione diagramma casi d’uso
- Individuare il confine del sistema
- Individuare gli attori
- Individuare i casi d’uso
- Individuare le relazioni attore-caso d’uso
- Specificare il caso d’uso con una descrizione testuale (narrativa)
Quali sono i diagrammi in uml che ci interessano
Modello statico
* Diagramma delle classi
* Diagramma degli oggetti
* Diagramma delle componenti
* Diagramma di dislocazione
Modello dinamico
* Diagramma di macchina a stati
* Diagramma di attività
* Diagramma di sequenza
Cos’è un modello e a cosa serve?
Def → astrazione del sistema (o dominio) usato per specificarne struttura e/o comportamento
Fa due cose:
- Cattura aspetti importanti e astrae dai dettagli
- Espresso con un formalismo che ne rende facile l’uso e la comprensione
Come si modella un sistema:
- Modello Statico
- Modello Dinamico
Linguaggio:
- Formale
- Semi-Formale (UML): ha una semantica ma data un po’ in linguaggio naturale e un po’ logico/matematico
Definizione di UML
UML(Unified Modeling Language, “linguaggio di modellizzazione unificato”) è un[linguaggio di modellazione]e[di specifica]basato sul[paradigma orientato agli oggetti.
Differenza modello statico e dinamico
Modello statico
Entità e relazioni per descrivere:
- Concetti del dominio
- Componenti architettura
- Classi di realizzazione
Modello dinamico
- Modella il comportamento delle entità descritte nel modello statico
Diagramma caso d’uso cos’è e a cosa serve
Diagramma → Modello statico
Narrative associate ai casi d’uso → Modello dinamico
Descrive i requisiti funzionali del sistema:
- Cattura le funzionalità che un sistema deve offrire
- Prospettiva “Esterna”: compiti che un utente può realizzare con l’aiuto del sistema
Entità in gioco:
- Attore: Entità esterna al sistema che interagisce direttamente col sistema in un determinato ruolo. 3 Tipologie di attori:
- Utente umano in un determinato uomo
- altro sistema (sistema che si interfaccia con il sistema che sto per creare)
- Tempo (attore speciale)
Caso d’Uso: Compito che un attore può svolgere con l’aiuto del sistema (espresso come un insieme di scenari)
Scenario: Sequenza di interazioni tra sistema e attori (espressa come scambi di messaggi)
Definizione narriva e come costruisco
🤔Documento che descrive il modello dinamico:
- Scenari rilevanti di un caso d’uso
- Dal punto di vista degli attori //compreso chi inizia - chi è attore primario
Tabella con:
Nome, Id, Breve descrizione, Attore principale, attore secondario, precondizioni, sequenza principale, post condizioni, sequenze alternative
Come si esprimono pre condizioni e post condizioni
Pre-condizioni e post condizioni sono asserzioni sempre vere in uno stato. NON sono azioni!
Si esprimono con predicati o formule logiche
Sequenza degli eventi: def e sintassi
1° Azione: Utente (attore primario, nel caso del TEMPO → sistema ) fa qualcosa (inizia il caso d’uso)
Le altre sono tutto → Utente/Sistema fa qualcosa
Sintassi:
- Sequenza numerata
- Ogni passo struttura
- <Numero>.<soggetto>.<Azione>.<Complementi>
</Complementi></Azione></soggetto></Numero>
- <Numero>.<soggetto>.<Azione>.<Complementi>
- Il primo passo ATTIVAZIONE è sempre compiuto dall’attore principale
- Si possono anche descrivere condizioni e cicli:
- While (Espressione booleana), For(espressione di iterazione), If-Else
Flusso di una narrativa
Tripla di Hoare:
{Precondizione}Sequenza principale{Postcondizione}
- Per ogni stato $\sigma$ che soddisfa la precondizione
- L’esecuzione del caso d’uso a partire da $\sigma$ termina producendo uno stato $\sigma’$
- $\sigma’$ soddisfa la postcondizione
A meno di imprevisti:
- Come quelli elencati nella sequenza alternativa
- In questo caso la post condizione non è garantita
Esempi generalizzazione, inclusione, esclusione
Vedi Slide