Ereignisgesteuerte Zustandsübergänge
Struktur
Viele zustandsbasierte Systeme lassen sich adäquater als ereignisgesteuerte Systeme beschreiben. Zustandsübergänge werden hier durch Ereignisse ausgelöst.
Wenn im aktuellen Zustand ein bestimmtes Ereignis eintritt, dann wird eine zum Ereignis festgelegte Aktion ausgeführt und das System wechselt in einen Folgezustand (wobei dies auch der aktuelle Zustand sein kann).
Beachte, dass die auszuführende Aktion hier auch wegfallen kann. In einem solchen Fall führt das Ereignis zu einem Zustandsübergang, bei dem keine Aktion stattfindet.
Beispiel
Wir betrachten eine Lampe, die man durch Anklicken ein- und ausschalten kann.
Quelle: lampe1.sb
Das Lampensystem lässt sich als ereignisgesteuertes System beschreiben.
Hier löst z.B. das Ereignis "Lampe wird angklickt" die Aktion "ziehe Kostüm2 an" aus.
Implementierung in Scratch
Das Lampensystem lässt sich z.B. so in Scratch implementieren:
Aufgabe 1
Hier ein erweitertes Zustandsdiagramm zum Lampensystem mit einem ereignisgesteuerten Zustandsübergang ohne Aktion.
Ändere die Implementierung des Lampensystems so ab, dass ihr Verhalten dem erweiterten Zustandsdiagramm entspricht.