Macchine a stati

Nel modellamento UML, una macchina a stati è una specifica della funzionalità dinamica di singoli oggetti di classe, casi d'uso e interi sistemi. Ad eccezione delle operazioni, quando si crea una macchina a stati, l'oggetto associato a tale macchina ne diventa il proprietario. Quando si crea una macchina a stati per un'operazione, l'operazione ne diventa il proprietario. Un diagramma di una macchina a stati vuoto viene visualizzato quando si crea la macchina a stati. Tale diagramma è una rappresentazione grafica della sequenza di stati di un oggetto, gli eventi che causano una transizione da uno stato a un altro e le azioni che risultano da una modifica nello stato. Tale diagramma può essere aggiunto per descrivere diversi aspetti funzionali di un oggetto.

È possibile creare macchine a stati per descrivere classi e sistemi con funzionalità importante. Non tutti gli oggetti richiedono macchine a stati. Se la funzionalità di un oggetto è basilare, se memorizza o richiama semplicemente i dati, potrebbe non essere importante e non richiedere l'utilizzo di una macchina a stati. Le macchine a stati possono contenere anche stati nidificati che rappresentano diversi livelli di stati gerarchici. È possibile utilizzare stati nidificati per esaminare modifiche di stato complesse negli oggetti.

È possibile aggiungere diagrammi a una macchina a stati per descrivere diverse prospettive della funzionalità di un oggetto. Ogni diagramma viene aperto come una finestra separata ma gli stessi elementi di modello vengono visualizzati in tutti i diagrammi. I diagrammi in una macchina a stati sono sincronizzati per impostazione predefinita. Le modifiche apportate a una regione nella vista Esplora progetto vengono visualizzate negli altri diagrammi che appartengono alla stessa macchina e le modifiche apportare a una regione in un diagramma vengono visualizzate nella stessa vista Esplora progetto. È possibile modificare le impostazioni di modifica di una regione su false in modo che le modifiche apportate a una regione nella vista Esplora progetto non vengano visualizzate nei diagrammi corrispondenti della macchina a stati per consentire la modifica di una regione indipendentemente da altri diagrammi nella stessa macchina a stati, modificando il valore di proprietà canoniche di una regione su false.

Le macchine a stati sono supporti di modellamento utili per sviluppare sistemi in tempo reale o basati su eventi, perché mostrano una funzionalità dinamica. È possibile sviluppare macchine a stati durante tutte le fasi di un progetto software e per modellamento aziendale. È possibile utilizzare tali macchine nelle seguenti situazioni:

È possibile creare una macchina a stati per i seguenti oggetti:

Funzionalità basata su eventi

È possibile utilizzare le macchine a stati per modellare la funzionalità basata sull'evento. Eventi quali tempo, segnali o operazioni possono causare la modifica allo stato di un oggetto. Un evento non ha durata e può precedere o seguire un altro evento. Gli stati che modellano la funzionalità basata su eventi continuano nello stesso stato fino all'arrivo di un evento. Dopo la risposta dello stato a un evento, il processo ritorna a uno stato stabile pronto a ricevere l'evento successivo.

Attività correlate
Modellamento della funzionalità di un oggetto tramite diagrammi delle macchine a stati
Creazione di macchine a stati

Feedback