Zustandsautomat: Definition & Erklärung — Glossar
Was ist ein Zustandsautomat?
Ein Zustandsautomat (engl. State Machine oder Finite State Machine, FSM) ist ein mathematisches Modell, das das Verhalten eines Systems durch eine endliche Menge von Zuständen, Übergängen zwischen diesen Zuständen und auslösenden Ereignissen beschreibt. Zu jedem Zeitpunkt befindet sich das System in genau einem definierten Zustand.
Kernkomponenten
Zustände (States): Diskrete Situationen des Systems (z. B. “Bestellung ausstehend”, “Bestellung versendet”, “Bestellung abgeschlossen”). Übergänge (Transitions): Regelbasierte Wechsel von einem Zustand zu einem anderen. Ereignisse (Events): Trigger für Übergänge (z. B. “Zahlung eingegangen”, “Versand bestätigt”). Aktionen: Operationen, die bei Zustandseintritt, -austritt oder Übergängen ausgeführt werden. Initialer Zustand: Startzustand des Systems. Endzustände: Terminale Zustände (nicht immer vorhanden).
Anwendungsfälle
Workflow-Modellierung: Bestellprozesse, Genehmigungsworkflows, Ticketsysteme modellieren ihren Lebenszyklus als Zustandsmaschine. Benutzeroberflächen: UI-Komponenten reagieren auf Nutzereingaben durch Zustandsübergänge (XState ist eine populäre JavaScript-Bibliothek dafür). Protokolle: TCP/IP, HTTP-Verbindungen und andere Netzwerkprotokolle sind als Zustandsautomaten spezifiziert. Eingebettete Systeme: Steuerungssoftware in Maschinen, Fahrzeugen und IoT-Geräten. KI-Agenten: Agentenbasierte KI-Systeme nutzen Zustandsautomaten für Planungs- und Entscheidungslogik.
Hierarchische Zustandsautomaten
Für komplexe Systeme werden hierarchische (geschachtelte) Zustandsautomaten genutzt: Oberzustände können Unterzustände enthalten, die das Verhalten in verschiedenen Kontexten präzisieren. Statecharts (David Harel, 1987) erweitern klassische FSMs um Parallelzustände, History-Zustände und hierarchische Struktur — Standard in vielen modernen Workflow-Engines und reaktiven UI-Frameworks.