4. Macchine a stati finiti

Rappresentano il comportamento dei singoli oggetti di una classe in termini di – Eventi a cui gli oggetti (la classe) sono sensibili – Azioni prodotte – Transizioni di stato

Si ha un’identificazione degli stati interni degli oggetti.

È possibile aggiungere eventi e condizioni legate ad essi: ciò è utile quando si vuole aggiungere un predicato all’evento.

Decomposizione OR

È un macro stato equivale ad una scomposizione OR degli stati: solo uno degli stati costituenti può essere attivo in un certo istante.

I sottostati ereditano le transizioni dei loro superstati.

Decomposizione AND

Duale rispetto al caso OR: si ha uno stato attivo per ciascun macrostato presente; modella operazioni ed attività concorrenti.

History

Può essere associata a stati non foglia.

Quando l’esecuzione lascia uno stato S con history si salva l’ultimo stato visitato in S nella history H.

Quando l’esecuzione ritorna in S si riparte dall’ultimo stato salvato.