+ All Categories
Home > Documents > UML2 - Realizzazione dei Casi...

UML2 - Realizzazione dei Casi...

Date post: 16-Sep-2018
Category:
Upload: hoangdan
View: 217 times
Download: 0 times
Share this document with a friend
19
UML2 Realizzazione dei Casi d’Uso Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 1 / 18
Transcript

UML2Realizzazione dei Casi d’Uso

Andrea Polini

Ingegneria del SoftwareCorso di Laurea in Informatica

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 1 / 18

Comportamento dinamico delle classi

Dopo aver definito un modello dei casi d’uso e realizzato un modello dianalisi abbiamo bisogno di rispondere alle seguenti domande:

Come le classi devono interagire per realizzare il comportamentodefinito da un caso d’uso?Quali messaggi devono essere scambiati?

Bisogna considerare che:In un contesto di sviluppo iterativo il lavoro condotto portatipicamente a modifiche a manufatti precedentemente definitiÈ importante mantenere i manufatti allineati e coerentino dettagli eccessivi quali parametri specifici delle operazioni eloro tipo

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 2 / 18

Realizzazione dei casi d’uso

Realizzazione dei casi d’uso è attività che coinvolge:Diagramma delle classi di analisiDiagrammi di InterazioneRequisiti SpecialiRaffinamento dei casi d’uso

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 3 / 18

Realizzazione dei casi d’uso

I principali diagrammi utilizzati nella concretizzazione di un caso d’usosono i diagramma di interazione. Due entità fondamentalicostituiscono questo tipo di diagrammi:

linee di vitamessaggi

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 4 / 18

Linee di vita

Servono a rappresentare un elemento di una classe all’interno diun’interazione. Consta di:

NomeTipoSelettore

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 5 / 18

Messaggi

Rappresentano tipo di interazione tra due linee di vita. Unacomunicazione si può risolvere in:

chiamata di un’operazionecreazione/distruzione di un’istanzainvio di un segnale

La ricezione di un messaggio attiva il focus di controllo per la linea divita che riceve il messaggio stesso. Il focus risulterà dunque annidato.

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 6 / 18

Tipologie di messaggi

UML 2 fornisce la possibilità di specificare le seguenti tipologie dimessaggi:

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 7 / 18

Diagrammi di interazione

Diagrammi di sequenzaDiagrammi di ComunicazioneDiagrammi di Interazione GeneraleDiagrammi di Temporizzazione

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 8 / 18

Diagrammi di Sequenza

Sono la forma di diagramma di interazione più usata nelle fasidell’analisi e realizzazione dei casi d’uso.

gli oggetti che interagiscono vengono rappresentati da rettangolicon “coda”messaggi vengono rappresentati tra le linee di vitail focus viene rappresentato da un rettangolo sottile sulla linea divitaè possibili rappresentare messaggi annidatiè possibile rappresentare invarianti di statoè possibile rappresentare vincoli di durata

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 9 / 18

Esempio - Linee di vita, messaggi ed attivazioni

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 10 / 18

Esempio -Linee di vita, messaggi ed attivazioni

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 11 / 18

Esempio - Linee di vita, messaggi ed attivazioni

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 12 / 18

Esempio invarianti di stato e vincoli di durata

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 13 / 18

Esempio invarianti di stato e vincoli di durata

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 14 / 18

Frammenti combinati

È possibile rappresentare sequenze complesse attraverso l’uso diframmenti combinati. Un frammento combinato ha un operatore, uno opiù operandi e zero o più condizioni di guardia. La sintassi per talicostrutti è esemplificata da:

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 15 / 18

Frammenti combinati - Tipologie Operatori

opt: sequenza opzionale se condizione veraalt: sequenze alternative. Eseguita operando con guardia veraloop: ciclo (prossima slide)break: uscita da un operandoref: riferimento ad altro diagrammapar: parallelismocritical: esecuzione atomicaseq: sequenzializzazione debolestrict: sequenzializzazione forteneg: iterazioni non valideignore: elenca messaggi omessiconsider: solo messaggi inclusiassert: unico comportamento accettabile in quel puntodell’esecuzione

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 16 / 18

loop

La sintassi dei loop è data da: loop min,max [condizione] Ilsignificato è:

Esegui il loop un numero minimo di volte min continual’esecuzione finché condizione è vera per un numeromassimo di max-min volte.

Tipici loop e loro rappresentazione:while (true) {body}

for i=n to m {body}

while (espressioneBooleana) {body}

repeat {body} while (espressioneBooleana)

forEach oggetto della collezione {body}

forEach oggetto della classe {body}

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 17 / 18

loop

La sintassi dei loop è data da: loop min,max [condizione] Ilsignificato è:

Esegui il loop un numero minimo di volte min continual’esecuzione finché condizione è vera per un numeromassimo di max-min volte.

Tipici loop e loro rappresentazione:while (true) {body}

for i=n to m {body}

while (espressioneBooleana) {body}

repeat {body} while (espressioneBooleana)

forEach oggetto della collezione {body}

forEach oggetto della classe {body}

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 17 / 18

Diagrammi di comunicazione

Si focalizzano sugli aspetti strutturali dell’interazione mostrando comele linee di vita sono collegate tra loro

Il potere espressivo è inferiore a quello dei diagrammi di sequenza èpossibile comunque esprimere iterazioni e ramificazioni

(Ingegneria del Software) UML 2 – Realizzazione dei Casi d’Uso 18 / 18


Recommended