Event Storming – Chaos mit System

Einen konkreten Prozessablauf zu verstehen, klingt eigentlich nicht nach einer großen Herausforderung. Den Prozess kennt ja schließlich jeder, oder? In der Detailbetrachtung tauchen jedoch selbst bei einfach strukturierten Prozessen viele Fragen auf: Warum wird an dieser Stelle eigentlich eine Mail versandt? Was bewirkt dieser Bearbeitungsschritt? Wer ist dafür konkret zuständig? Nur wenn die Abläufe und Beweggründe wirklich verstanden werden, kann man Ungereimtheiten oder Stolpersteine erkennen, beseitigen und den Prozess auch effektiv digitalisieren.

Daher ist Event Storming in aller Munde und eine vergleichsweise neue Methode, die sich wachsender Beliebtheit erfreut. Sie versucht besonders leichtgewichtig das Problem zu lösen, dass zu Beginn, während und nach der Entwicklung von Software-Projekten oder Produkten das gemeinsame Verständnis fehlt oder verloren geht. Es wurde von Alberto Brandolini im Kontext von Domain-Driven Design (DDD) erfunden. DDD bedeutet vereinfacht gesprochen, die Struktur und Sprache des Codes an die Anforderungen des Unternehmens oder dessen Teilbereiche (hier Domäne) anzupassen.

Was ist Event Storming

Event Storming ist eine workshop-basierte Methode, um schnell und interaktiv herauszufinden, was in der Domäne eines Softwareprogramms passiert. Im Vergleich zu anderen Verfahren ist es leichtgewichtig und benötigt bewusst keine technischen Hilfsmittel. Das Ergebnis drückt sich in Haftnotizen an einer breiten Wand aus. Der Geschäftsprozess wird als eine Reihe von Domänenereignissen „herausgestormed“, für die orange Haftnotizen verwendet werden. Es folgen Iterationen mit weiteren Fragestellungen und farbigen Haftnotizen, bis die Domäne vollständig beschrieben und ein gemeinsames Verständnis darüber hergestellt ist. 

Anwendungsbereiche

Event Storming kann als Mittel zur Geschäftsprozessmodellierung und zum Requirements Engineering verwendet werden. Die Grundidee ist, Softwareentwickler und Domänenexperten zusammenzubringen und voneinander zu lernen. Um diesen Lernprozess zu erleichtern, soll Event Storming Spaß machen. Der Name wurde gewählt, um zu zeigen, dass der Fokus auf den Domänenereignissen, den Events, liegen sollte und die Methode ähnlich funktioniert wie Brainstorming oder das Model Storming der agilen Modellierung.

Event Storming eignet sich zum Erlangen eines „Gesamtbilds“ vom Produktmodell, einschließlich der gesamten Komplexität, indem die Ziele und Bedürfnisse hervorgehoben werden. Außerdem zur Visualisierung des Produktmodells, um alternative Lösungen zu finden. Sowie zum Finden von Engpässen und Konfliktbereichen bei ausgereiften Produkten.

Workshop Setup

Eine Stärke des Event Stormings ist, dass fachliche Experten (Stakeholder, POs, evtl. Nutzer) und Entwickler im selben Raum sind. Dabei ist auf eine gleichmäßige Verteilung zu achten: Es sollte annähernd die gleiche Anzahl Fachexperten und Implementierende anwesend sein. Idealerweise umfasst die Gruppe nicht mehr als 15 Personen, der “Sweet Spot” liegt bei etwa der Hälfte, also 8-10 Personen. Außerdem sollte der Workshop von dritter Seite moderiert werden.

Der Moderator stellt am Anfang des Workshops eine “unendlich” große Fläche zur Verfügung (z.B. auf einer Papierrolle), um später darauf die Klebezettel platzieren zu können. Ein Raum mit viel glatter Wandfläche ist hierfür am besten geeignet. Dazu wird eine ebenfalls “unendliche” Anzahl an Klebezetteln in unterschiedlichen Farben und Ausprägungen, sowie passende Stifte, für die Teilnehmer bereitgestellt.

Die Wandfläche repräsentiert – in der Regel von links nach rechts – den zeitlichen Horizont für die zu entdeckenden Prozesse. Klebezettel sind als Modellelemente ideal, denn man kann sie frei sortieren, verschieben und wegschmeißen. Nichts ist “in Stein gemeißelt” – im Gegenteil werden im Laufe des Workshops immer wieder Teile des Modells verworfen, verschoben oder erweitert. Der Moderator greift in die Diskussionen nur minimal lenkend ein, um den Workshop erfolgreich ins Ziel zu führen, lässt aber ansonsten den Teilnehmern möglichst viel Freiraum. Eine Legende mit den verschiedenen „Building Blocks“ des Workshops entsteht während der Arbeit und steht jederzeit zur Verfügung.

Ablauf

Der erste Schritt besteht darin, die Domänenereignisse zu finden und sie auf orangefarbene Haftnotizen zu schreiben. Dabei sollte man darauf achten, die Ereignisse in der Vergangenheitsform zu dokumentieren. Wenn alle Domänenereignisse gefunden wurden, besteht der zweite Schritt darin, den Befehl zu finden, der die einzelnen Domänenereignisse verursacht hat. Befehle werden auf blaue Zettel geschrieben und direkt vor dem entsprechenden Domain-Event platziert. Im dritten Schritt werden die Aggregate identifiziert, in denen Befehle ausgeführt werden und wo Ereignisse stattfinden. Die Aggregate sind mit gelben Klebezetteln beschriftet.

Außerhalb der grundlegenden Erstellung von Aggregaten können die folgenden anderen Haftnotizen verwendet werden, um dem Event Storming noch weiteren Kontext hinzuzufügen:

  • Violette Haftnotizen stellen einen Geschäftsprozess dar, der ein oder mehrere Ereignisse erzeugt. Sie können auch vor einem Ereignis statt vor einem Befehl stehen.
  • Pinke Haftnotizen repräsentieren externe Systeme, die einen Befehl anstelle eines Akteurs innerhalb der Domäne erzeugen können. Sie können anstelle von einer gelben Haftnotiz vor eine blauen Haftnotiz geheftet werden.
  • Grüne Haftnotizen stellen die Sicht des Endnutzers dar, wie ein Befehl ausgeführt und ein Ereignis ausgelöst wird. Diese können unter dem Befehl/Ereignis-Paar im Aggregat angeheftet werden.
  • Rote Haftnotizen oder eine andere Farbe, die noch übrig ist, kann man für Fragen und Bedenken verwenden oder um auf angrenzende Geschehnisse hinzuweisen oder um ein Thema, mit dem sich das Team später noch befassen muss, festzuhalten.

Auch wenn es wie ein chaotischer bunter Haufen von Zetteln erscheint, zeigt das Ergebnis des Event Storming Workshop in Wirklichkeit wie Projekte umgesetzt werden können. Mit den richtigen Teilnehmern und ein paar Haftnotizen rücken die verschiedenen Bereiche eines komplexen Projekts und dessen Anforderungen in den Mittelpunkt. Die Teilnehmer haben nun eine Auflistung aller funktionalen Schritte und ein gemeinsames Verständnis über die zu Grunde liegenden Prozesse. 

Event Storming Session Example
Beispielergebnis einer Event Storming Session

Werden Sie selbst aktiv

Fangen Sie noch heute damit an, Ihr gemeinsames Verständnis Ihrer Geschäftsprozesse herauszufordern und zu steigern. Reflektieren Sie, ob Sie die gleichen Ziele innerhalb Ihrer Projekte verfolgen. Hinterfragen Sie vorherrschende Paradigmen und denken Sie Produkte, ausgehend vom zugrundeliegenden Prozess neu. Nehmen Sie gerne Kontakt mit uns auf und lassen sich beraten. Wir unterstützen Sie gerne dabei, die Welt zu verändern und wünschen Ihnen in jedem Fall viel Erfolg!

Veröffentlicht am
Kategorisiert in Magazin