EventStorming ist eine Technik, die Annahmen minimiert, indem sie bewusstes, kollaboratives Lernen mit verschiedenen Disziplinen betreibt, um Geschäftsprobleme auf die effektivste Weise zu lösen. Wir können dieses Tool in einer Vielzahl von Kontexten einsetzen - von der absichtlichen Entdeckung bis zum Team-Flow und von Sprint-Retrospektiven bis zur Entflechtung von Systemen und vom domänengesteuerten Design bis zum Entwurf von CQRS/Event-Sourcing-Systemen und der Bestimmung von Microservices-Kandidaten.
Solange es eine Geschichte zu erzählen gibt und eine Zeitleiste im Spiel ist, ist EventStorming ein nützliches Werkzeug. In diesem Blog werde ich näher darauf eingehen, wie Sie EventStorming für die kontinuierliche Entdeckung einsetzen können.
Übergang zu einer Microservices-Architektur
Wir sehen, dass sich viele Unternehmen auf eine Microservice-Architektur zubewegen. Die große Falle der Microservice-Architektur besteht darin, sich auf die Technologie zu konzentrieren, wie groß der Microservice sein muss, wie viele Zeilen Code, welche Entitäten wir in einen Microservice packen, und den Rest als Kommunikation zwischen ihnen zu verwenden.
Aber um erfolgreich zu sein, müssen wir uns auf den Problembereich konzentrieren, indem wir Domänenwissen sammeln und die Domänenmodellierung anwenden. EventStorming eignet sich perfekt für die Domänenmodellierung, und fast alle führenden Anbieter von Microservices scheinen dem zuzustimmen. Sogar ThoughtWorks hat es in seiner jüngsten Ausgabe des
Event Storming oder EventStorming
Meine erste EventStorming-Erfahrung machte ich 2014 bei Mathias Verraes in seinem Workshop zum Domain-Driven Design. Seitdem habe ich begonnen, meine Software mit EventStorming zu modellieren. EventStorming, das heutzutage meist als Event Storming bezeichnet wird, ist laut Alberto Brandolini auf seiner Website ein flexibles Workshop-Format für die gemeinschaftliche Erforschung komplexer Geschäftsbereiche.
Es handelt sich um eine Technik, die Visualisierung einsetzt, um Annahmen zu minimieren, indem bewusstes, kollaboratives Lernen zwischen verschiedenen Disziplinen betrieben wird. EventStorming hilft dabei, komplexe Geschäftsprobleme auf die effektivste Art und Weise zu lösen - über Silos oder Fachgrenzen hinweg.
Das Wichtigste bei EventStorming ist die Schaffung des erforderlichen Raums für das Modellieren, d.h. eine Wand von mindestens 6 Metern Länge, an der wir ein Papier aufstellen können. Wir brauchen genügend Platz, um uns zu bewegen. Das bedeutet, dass wir in den meisten Konferenzräumen Tische und Stühle zur Seite stellen müssen (vor allem in Unternehmen). Laden Sie die richtigen Leute ein, die über das nötige Wissen verfügen (Ihre Domänenexperten) und geben Sie ihnen jeweils einen Marker. Wir konzentrieren uns auf visuelles Storytelling, indem wir Ereignisse aus dem Bereich, also Dinge, die passiert sind, auf einen orangefarbenen Zettel schreiben und diesen auf eine Zeitleiste legen. Er muss nicht orange sein, aber er muss konsistent sein. Verwenden Sie eine Legende, um dies deutlich zu machen.
Erobern und Aufteilen in EventStorming
Der erste Teil von EventStorming, das Stürmen von Domänenereignissen, ist von wesentlicher Bedeutung. Jeder hat seine eigene Wahrnehmung der Realität, jeder hat sein eigenes Modell im Kopf. Wir versuchen, dieses Modell mit Hilfe von Domänenereignissen explizit zu machen. Das bedeutet, dass ein heuristischer Ansatz darin besteht, dass jeder die Domänenereignisse für seine Wahrnehmung aufschreibt und sie auf der Zeitachse platziert. Conquer and Divide ist dieses Muster, über das Alberto in seinem Buch EventStorming auf Leanpub geschrieben hat.
Es gibt noch viele weitere dieser Muster, die in diesem Buch beschrieben werden. Das Buch beschreibt auch drei Arten von EventStorming: Software-Modellierung, Prozess-Modellierung und Big Picture. Um verwendete Systeme, die sich in einem Ist-Prozess befinden, explizit zu machen, verwenden wir Process Modeling. Dies ist ein guter Ausgangspunkt, wenn Sie Ihr derzeitiges monolithisches System oder ein großes Schlammbällchen in Richtung einer Microservices-Architektur entwirren möchten.
Der blinde Mann und ein Elefant
Meiner Meinung nach ist der kritischste und spannendste EventStorming-Typ das Big Picture. Vor allem bei einem Big Picture ist das Erobern und Teilen von entscheidender Bedeutung. Sie laden 20+ Personen aus allen Silos der Organisation ein, um gemeinsam zu 'eventstormen'. Sie brauchen mindestens einen ausgezeichneten Moderator und einen Beobachter, um das durchzuziehen, aber es wird helfen, das Gleichnis von den blinden Männern und dem Elefanten zu bekämpfen, bei dem jedes Silo glaubt, die absolute Wahrheit zu besitzen.
Ein Big Picture EventStorm gibt einer Organisation eine klare Vision der Unternehmensziele und macht Engpässe und konkurrierende Ziele deutlich. Es zeigt Ihnen auch mehrere Kontexte an, um eine Kontextkarte der Organisation zu erstellen. Wenn Sie versuchen, mit einer Microservices-Architektur zu autonomeren Teams überzugehen, wird Big Picture EventStorming Ihren Teams helfen, Wissen zu teilen, ihre Ziele aufeinander abzustimmen und sich auf eine gemeinsame Vision zu konzentrieren.
Jenseits von Big Picture, Prozessmodellierung und Softwaremodellierung
Wie Sie sehen, müssen wir mehr tun als nur EventStorming für die Softwaremodellierung. Um autonome Teams zu schaffen, die eine Microservice-Architektur verwenden, brauchen wir kontinuierliches, bewusstes und gemeinschaftliches Lernen, um erfolgreich zu sein. Wir müssen vom Big Picture EventStorming, bei dem wir den Kontext und die Engpässe ermitteln, zur EventStorming Prozessmodellierung übergehen. Ein Prozessmodell liefert Ihnen alle Details, die Sie benötigen, um den begrenzten Kontext zu finden und zur EventStorming-Softwaremodellierung überzugehen.
Sie können EventStorming für mehr als nur diese drei Typen verwenden. In einem früheren Beitrag habe ich bereits gezeigt, wie ich EventStorming erfolgreich für die Planung meiner Hochzeit eingesetzt habe. Außerdem verwende ich EventStorming häufig, um den Entwicklungsfluss des Teams zu modellieren, wie es Paul Rayner in seinem Vortrag 'Fighting the invisible enemy' beschreibt. Sie können EventStorming verwenden, um Ihre Customer Journey, das Value Stream Mapping, die Modellierung von Bedrohungen, ethnografische Untersuchungen, Post-Mortems und sogar Retrospektiven zu erstellen. Für alles, was eine Zeitachse hat und eine Geschichte erzählt, ist EventStorming mein bevorzugtes Tool.
Aber glauben Sie nicht, dass EventStorming der Königsweg ist, es hat seine Tücken. Ich beginne in der Regel mit EventStorming und versuche, es z.B. mit Example Mapping, Domain Story Telling, Impact Mapping, User Story Mapping und Heuristics Mapping zu kombinieren. Alles läuft auf eine kontinuierliche, absichtliche kollaborative Entdeckung mit einem visuellen Werkzeug hinaus.
Dieser Beitrag wurde auch auf meiner persönlichen Blog-Seite veröffentlicht.
Verfasst von

Kenny Baas-Schwegler
A lot of knowledge is lost when designing and building software — lost because of hand-overs in a telephone game, confusing communication by not having a shared language, discussing complexity without visualisation and by not leveraging the full potential and wisdom of the diversity of the people. That lost knowledge while creating software impacts the sustainability, quality and value of the software product. Kenny Baas-Schwegler is a strategic software delivery consultant and software architect with a focus on socio-technical systems. He blends IT approaches like Domain-Driven Design and Continuous Delivery and facilitates change with Deep Democracy by using visual and collaborative modelling practices like Eventstorming, Wardley mapping, context mapping and many more. Kenny empowers and collaboratively enables organisations, teams and groups of people in designing, architecting and building sustainable quality software products. One of Kenny's core principles is sharing knowledge. He does that by writing a blog on his website baasie.com and helping curate the Leanpub book visual collaboration tool. Besides writing, he also shares experience in the Domain-Driven Design community as an organiser of Virtual Domain-Driven Design (virtualddd.com) and Domain Driven Design Nederland. He enjoys being a public speaker by giving talks and hands-on workshops at conferences and meetups.
Unsere Ideen
Weitere Blogs
Contact



