//Artefact:ModelMeta/org/ooem/model/Model (2.0) - Usage - Elements/StateMachine

Introduction

State Machines
Zustandsautomaten beschreiben eine Reihe erlaubter Zustände einer Klasse, wie der jeweilige Zustand sich ändern kann, und welche Konsequenzen das hat. Änderungen, die von einem Zustand in einen anderen Zustand überführen, heißen auch "Transitionen".
Es gibt zwei wesentliche Arten von Zustandsautomaten:
Ein Beispiel für einen Bearbeitungsablauf könnte sein: ein Bestellvorgang in einem Webshop, also die Erfassung von Artikel, Anschrift und Zahlungsweise.
Ein Beispiel für ein normales Geschäftsobjekt mit einem Zustandsautomat könnte sein: die Bestellung, die dann anschließend verschiedene Bearbeitungszustände hat: erfaßt, geprüft, versendet, ausgeliefert.
Automaten für Bearbeitungsabläufe beschreiben also eher kurze Abläufe, die ein Anwender in einem einzelnen Arbeitsschritt durchführt (Kunde bestellt etwas im Webshop), während die Zustände eines Gechäftsobjektes eher einem länger andauernden Vorgang entsprechen, der von mehreren Benutzern oder auch Automatismen zu mehreren Zeitpunkten bearbeitet wird.
Darüber hinaus kann auch auf zustandsbehaftete Objekte ausdrücklich in lang andauernden Vorgängen in Geschäftsprozessen verwiesen werden und der Vorgang in Abhängigkeit dieser Zustände gesteuert werden.