FACHWISSEN · TECHNIK & PROZESSEINSIGHTS · TECHNOLOGY & PROCESSES
Zustandsautomaten in der BPA: Warum mehrere Häkchen noch keinen gültigen Prozesszustand ergebenState machines in BPA: Why several checkboxes do not make a valid process state

Ein Vorgang ist gleichzeitig als „freigegeben“, „zurückgegeben“ und „abgeschlossen“ markiert. Technisch lassen sich drei unabhängige Ja-Nein-Felder problemlos speichern. Fachlich können sie jedoch einen widersprüchlichen Zustand beschreiben. Bei der Geschäftsprozessautomatisierung lohnt sich deshalb die Frage, welche Zustände überhaupt zulässig sind.
Zustand, Ereignis und Bedingung unterscheiden
Ein Zustandsautomat beschreibt erlaubte Übergänge zwischen definierten Zuständen. Ein Ereignis kann einen Übergang auslösen; eine zusätzliche Bedingung entscheidet, ob er im aktuellen Kontext zulässig ist. Diese Bedingung wird häufig als Guard bezeichnet. Damit werden eine Meldung und ihre tatsächliche Wirkung ausdrücklich getrennt.
Das Prinzip verlangt keine bestimmte Software. Schon eine übersichtliche Übergangstabelle kann festhalten: Ausgangszustand, Ereignis, Voraussetzung, Zielzustand und verantwortliche Rolle. Wichtig ist, dass nicht jeder beliebige Statuswechsel direkt möglich ist.
Ein Beispiel aus der Dokumentenprüfung
Ein fiktiver technischer Prüfbericht kennt „Entwurf“, „in Prüfung“, „Überarbeitung erforderlich“ und „freigegeben“. Das Ereignis „Prüfung bestanden“ darf nur aus „in Prüfung“ zur Freigabe führen. Eine vollständig ausgefüllte Checkliste allein ersetzt diesen Übergang nicht, wenn der Bericht inzwischen wieder überarbeitet wird.
Trifft eine ältere Rückmeldung nach einer neuen Einreichung ein, muss sie zur passenden Berichtsrevision gehören. Andernfalls könnte das System versehentlich die neue Fassung mit dem Ergebnis der alten Fassung freigeben. Zustandsmodell und Versionsbezug ergänzen sich hier.
Ausnahmen gehören in dasselbe Modell
Abbruch, Rücknahme und erneute Einreichung sollten keine versteckten Sonderwege sein. Für jede Ausnahme wird geklärt, welche offenen Aufgaben geschlossen werden, welche Daten erhalten bleiben und ob ein neuer Vorgang entsteht. Auch ein unbekanntes Ereignis braucht eine definierte Behandlung.
Eine hilfreiche Prüfung ist die Frage nach unerreichbaren Zuständen und Sackgassen. Kann jeder reguläre Vorgang einen vorgesehenen Abschluss erreichen? Gibt es Zustände, aus denen nur eine manuelle Datenkorrektur herausführt? Solche Fragen lassen sich vor der Umsetzung mit wenigen Beispielsfällen durchspielen.
Die Oberfläche sollte das Modell erklären
Statt beliebige Statusfelder anzubieten, kann die Oberfläche nur die aktuell zulässigen Aktionen anzeigen. Eine nicht verfügbare Freigabe sollte verständlich begründet sein, etwa mit einer noch offenen Prüfung. Der technische Schutz muss dennoch im ausführenden System liegen und darf nicht allein von ausgeblendeten Buttons abhängen.
Ein Zustandsautomat beseitigt nicht jede fachliche Unklarheit. Er macht aber widersprüchliche Übergänge prüfbar und schafft eine gemeinsame Sprache für Fachbereich, Entwicklung und Betrieb.
A case is marked “approved”, “returned” and “completed” at the same time. Three independent yes-or-no fields can easily be stored, but together they may describe a contradictory business state. Business process automation therefore benefits from an explicit definition of which states are valid.
Separate states, events and conditions
A state machine describes permitted transitions between defined states. An event can trigger a transition, while an additional condition determines whether it is allowed in the current context. This condition is often called a guard. It explicitly separates receiving a message from applying its effect.
The principle does not require a particular product. A simple transition table can record the starting state, event, prerequisite, target state and responsible role. What matters is that arbitrary status changes are not all directly available.
An example from document review
A fictional technical report has the states “draft”, “under review”, “revision required” and “approved”. The event “review passed” can lead to approval only from “under review”. A completed checklist does not replace that transition if the report is already being revised again.
If an older response arrives after a new submission, it must relate to the correct report revision. Otherwise the system could accidentally approve the new version using the old version’s result. State modelling and version references work together here.
Include exceptions in the same model
Cancellation, withdrawal and resubmission should not be hidden shortcuts. For each exception, clarify which open tasks close, which data remains and whether a new case is created. An unknown event also needs defined handling.
A useful review looks for unreachable states and dead ends. Can every normal case reach an intended conclusion? Are there states that can only be left by manually changing data? A few example cases can explore these questions before implementation.
Make the interface explain the model
Rather than offering arbitrary status fields, the interface can show only actions currently permitted. An unavailable approval action should have an understandable explanation, such as an outstanding review. The executing system must still enforce the restriction; hiding a button alone is insufficient.
A state machine will not resolve every business ambiguity. It does make contradictory transitions testable and provides a shared language for business teams, development and operations.