Diagrammi di stato
Post date: Mar 1, 2015 1:15:42 PM
Cosa è e a cosa serve?
Descrive un processo. Il diagramma di stato identifica le variazioni di stato al verificarsi di alcune condizioni legate ad una o più entità.
Cambio di stato
Se un oggetto si trova in uno stato "S1" e si verifica un evento "E" che soddisfa la condizione "C". Allora viene eseguita un azione "A" e l'oggetto passa allo stato "S2".
Individuazione
· Individua gli stati di interesse
· Individua le transizioni
· Individua le attività
· Determina gli stati iniziali e finali
Definizione: evento, stato e transazione
Evento: Avvenimento significativo degno di nota (Ricevitore telefonico alzato "off hook")
Stato: Condizione di un oggetto in un certo intervallo di tempo tra due eventi (Telefono è "Idle" dopo che il ricevitore viene agganciato è "on hook") fino a che non viene sollevato dinuovo
Transizione: è una relazione tra stati che indica che quando si verifica un evento, l'oggetto passa dallo stato precedente al successivo (Quando si verifica "off hook", c'è una transizione del telefono dallo stato "idle" allo stato "active").
Lo stato di un oggetto varia nel tempo, ma in qualsiasi momento è determinato da:
i valori dei suoi attributi
le relazioni che ha con altri oggetti
le attività che sta eseguendo
Lo stato di un processo varia in base a quanto scritto sopra.
Si può variare con:
Messaggio(evento): Richiesta da un oggetto A ad un oggetto B che
invoca uno dei metodi di B; A si blocca in attesa della risposta.
Metodo: Operazione che accede o manipola lo stato interno
dell’oggetto (di solito le variabili di istanza). L’implementazione di
tale operazione è nascosta a chi la invoca.