Komplexe Web-Projekte mit Event Storming Workshops erfolgreich planen. Eine kurze Einführung und Leitfaden.
Was ist Event Storming?
Das von Alberto Brandolini ins Leben gerufene »Event Storming« ist eine Art Brainstorming, womit diverse Ereignisse in einem bestimmten Bereich der Software-Entwicklung visuell dargestellt werden. Diese Technik dient dazu, mehr Klarheit in komplexe Web-Projekte zu bringen die einem Domain-Driven Design (DDD) Ansatz folgen. DDD bedeutet vereinfacht gesprochen, die Struktur und Sprache des Codes an die Anforderungen des Unternehmens (hier Domäne) anzupassen.
Ein Event Storming Workshop ist ein besonders interaktives Treffen, bei dem in der Regel jeder mit einem Marker auf Haftnotizen schreibt und diese dann an die Wand heftet.
Nach einer kleinen Einleitung werden Haftnotizen in mehreren Farben auf einem horizontalen Stück weißem Papier ausgebreitet. Das mag zwar auf den ersten Blick chaotisch aussehen, bringt das Chaos aber tatsächlich unter Kontrolle – die Ereignisse werden geordnet, gruppiert und Fragen, Bedenken, Grenzfälle sowie ähnliche Aspekte gesammelt.
Im Folgenden haben wir eine Kurzanleitung zum Thema Event Storming zusammengestellt, die den Einstieg in die Methodik erleichtern soll!
Wozu ist Event Storming geeignet?
Event Storming eignet sich für:
Erstellung eines Geschäftsmodells für das zu entwickelnde Projekt
Erlangen eines „Gesamtbilds“ vom Produktmodell, einschließlich der gesamten Komplexität, indem die Ziele und Bedürfnisse hervorgehoben werden.
Visualisierung des Produktmodells, um alternative Lösungen zu finden.
Zum Finden von Engpässen und Konfliktbereichen bei ausgereiften Produkten.
Wozu ist Event Storming nicht geeignet ?
Event Storming eignet sich nicht für:
UML-Diagramme
Einsatzpläne
Entwurfsdokumente
Eigentliche Umsetzung (Programmierung) von Projekten
Warum ist Event Storming nützlich?
Event Storming hilft bei der Planung und Umsetzung komplexer Web-Projekte und ist eine schnelle und einfache Möglichkeit, fachliche Unternehmensanforderungen visuell auszuarbeiten. Anstatt die Anforderungen aus einer statischen Code-Perspektive zu betrachten, werden sie in folgende Einzelheiten gegliedert:
Was tatsächlich passiert
Warum es passiert
Was vorhanden sein muss, damit es passieren kann
Wer nimmt an einem Event Storming Workshop teil?
Ein Event Storming Workshop besteht aus mindestens vier Teilnehmern, aber vorzugsweise nicht mehr als acht, damit es überschaubar bleibt. Diese Teilnehmer sollten sich in der Regel wie folgt aufteilen:
Leute mit Fragen. Das sind gewöhnlich die Entwickler, die Fragen zu den Geschäftspraktiken (d.h. zur Funktionsweise der Domäne) haben. Das können auch Personen aus verschiedenen Abteilungen sein, die verstehen müssen, wie sich ihre Abteilung in das Gesamtbild einfügt.
Leute mit Antworten. Diese Personen wissen, wie das zu erstellende digitale Produkt funktionieren sollte. Dazu können Manager, C-Level-Mitarbeiter, Vertriebsmitarbeiter, Support-Spezialisten usw. gehören.
Der Moderator. Er erklärt das Event Storming, sorgt für einen reibungslosen Ablauf und nimmt Korrekturen vor, ohne die Dynamik des Event Storming zu stören.
Zum Beispiel enthalten orangefarbene Haftnotizen (aus bestimmten Gründen, die später noch erläutert werden) Sätze in der Vergangenheitsform. Wenn nun jemand im Präsens auf einen orangefarbenen Haftnotizzettel geschrieben hat, könnte der Moderator diesen Haftnotizzettel beiseite nehmen, und später nochmal darauf zurückkommen, ohne das Event Storming zu unterbrechen.
Wie sieht ein Event Storming Workshop aus?
Ein Event Storming Workshop beginnt mit einem offenen Bereich, ein paar Markern, mehrfarbigen Haftnotizen und einem großen weißen Stück Papier, das an die Wand geheftet wird. Das ist die Arbeitsfläche.
Die Arbeitsfläche sollte vertikal ausgerichtet sein, wobei ein Pfeil, der die Zeitachse darstellt, von links nach rechts über die obere Seite gezogen wird. Weiter links angebrachte Haftnotizen stellen somit chronologisch frühere Ereignisse dar, während weiter rechts die späteren Ereignisse liegen.
Die vertikale Platzierung der Haftnotizen spielt normalerweise keine Rolle, solange sie chronologisch von links nach rechts angeordnet werden.
Ein paar Grundprinzipien des Event Stormings sind:
Die Arbeitsfläche sollte so groß wie möglich sein. Es könnte viele Punkte geben, die alle Platz finden müssen.
Jeder nimmt sich einen Marker. Der Event Storming Workshop ist ein gemeinschaftliches Event. Wenn die richtigen Teilnehmer ausgewählt werden, kann jeder einen Teil beitragen.
Fachjargon auf ein Minimum begrenzen. Ein Teil der Teilnehmer sind keine Software Entwickler; die andere wiederum sind keine Fach bzw. Unternehmens-Experten. Falls nötig, kann man auch ein kleines Glossar mit Schlüsselbegriffen auf Haftnotizen am unteren Rand der Arbeitsfläche befestigen.
Ein kurzer Leitfaden zu Event Storming Workshops
Wenn die Arbeitsfläche hängt und jeder einen Marker hat, kann das Event Storming losgehen! Jede Farbe der Haftnotizen hat generell eine bestimmte Bedeutung. Die kann nach Wunsch geändert werden, aber damit das Event Storming in Büros auf der ganzen Welt funktionieren kann, sind die Farben in der Regel vorgegeben ...
Phase 1: Die orangefarbenen Haftnotizen
Orange Haftnotizen repräsentieren Events oder Ergebnisse innerhalb des Web-Prozesses. Als solche müssen orangefarbene Haftnotizen in der Vergangenheit aufgeschrieben werden. Beispiele dafür sind:
Alle Tickets ausverkauft
Account wurde erstellt
Account wurde entfernt
Account wurde gelöscht
Ein Teilnehmer beginnt in der Regel mit einem orangefarbenen Ereignis, das in die Mitte der Arbeitsfläche geklebt wird. Es muss nicht das erste Ereignis im Prozess sein, denn das ist nur ein Ausgangspunkt, von dem aus man vor und zurück arbeiten kann.
Phase 2: Die blauen Haftnotizen
Sobald so viele orangefarbene Notizen wie möglich angebracht sind, kommt die Farbe Blau zum Einsatz. Blaue Haftnotizen stellen Befehle dar, die zu einem Ereignis führen. Sie werden in der Regel unmittelbar vor die entsprechende orangefarbene Notiz angebracht und im Präsens geschrieben. Beispiele dafür sind:
Tickets verkaufen
Account entfernen
Account erstellen
Persönliche/private Daten vom Account entfernen
Phase 2b: Die gelben Haftnotizen
Jeder Befehl braucht einen Befehlshaber, der ihn erteilt, daher muss jede Notiz mit einem Befehl mit einem Akteur verknüpft werden, der den Befehl auslöst.
Handelt es sich bei dem Akteur um den Endnutzer, wird dies in der Regel mit einer kleinen Person oder einem Strichmännchen auf einem kleinen gelben Zettel dargestellt, der an die Ecke der blauen Notiz angeheftet wird.
Phase 3: Die anderen gelben Haftnotizen
Wenn man ein Event mit entsprechenden Befehlen und den verantwortlichen Akteuren beisammen hat, ergibt sich daraus eine kleine in sich geschlossene Gruppierung, die als Aggregat bezeichnet wird. Diesem Aggregat kann dann ein Name zugeordnet werden, der auf einer großen gelben Haftnotiz darüber angebracht wird
Weitere Haftnotizen
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 erscheint, zeigt das Ergebnis des Event Storming Workshop in Wirklichkeit wie das Projekt umgesetzt werden kann. 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 erforderlichen Schritten die den erfolgreichen Abschluss des Web Projekts sicherstellen.
Ready. Set. Action!
Zusätzliche Motivation gesucht, um Event Storming eine Chance zu geben? Vielleicht hilft ein Blick auf eines unserer herausragendsten Projekte, bei dem wir erfolgreich Event Storming Workshops eingesetzt haben: