19
.
February
2024
·
7
Minuten Lesezeit

Event Storming: Agile Modellierung für gute Softwareentwicklung

Event Storming ist eine kollaborative Technik, die Teams hilft, komplexe Probleme zu visualisieren und effektive Lösungen zu finden. Von der Idee zur Umsetzung führt dieser strukturierte Prozess dazu, dass Teammitglieder ihr Wissen bündeln, Herausforderungen identifizieren und gemeinsam innovative Lösungsansätze entwickeln. In diesem Artikel werden wir genauer darauf eingehen, wie Event Storming Teams dabei unterstützt, komplexe Probleme zu bewältigen und erfolgreiche Ergebnisse zu erzielen.

Was ist Event Storming?  

In der Welt der agilen Softwareentwicklung ist Event Storming zu einem unverzichtbaren Werkzeug geworden, insbesondere im Kontext von Domain-Driven Design (DDD). Doch was genau verbirgt sich hinter diesem Begriff? Event Storming ist eine agile Modellierungstechnik, die sich als äußerst effektiv für die gemeinsame Diskussion über Anforderungen in der Softwareentwicklung erwiesen hat.

Bei Event Storming geht es darum, komplexe Geschäftsprozesse in einer kollaborativen und interaktiven Umgebung mit Klebezetteln zu visualisieren. In diesem Kontext werden unterschiedliche Teilnehmer, darunter Entwickler, Produktmanager und andere Stakeholder, eingeladen, ihre Perspektiven einzubringen. Dieser partizipative Ansatz trägt dazu bei, ein tiefgehendes Verständnis für den Geschäftsprozess zu entwickeln und die Kommunikation zwischen den Teammitgliedern und Stakeholdern zu fördern.

Die Bedeutung von Event Storming liegt vor allem in seiner Fähigkeit, komplexe Domänen und ihre Interaktionen leicht verständlich darzustellen. Durch die gemeinsame Exploration und Modellierung von Events, Commands, Aggregaten und anderen DDD-Konzepten, ermöglicht Event Storming schnell und einfach eine präzise Definition des Geschäftsprozesses. Dies führt zu einer klaren Ausrichtung der Softwareentwicklung auf die tatsächlichen Anforderungen des Unternehmens.  

Komplexe Geschäftsprozesse werden mit Klebezetteln visualisiert
Komplexe Geschäftsprozesse werden mit Klebezetteln visualisiert


Warum ist Event Storming so wichtig?

Event Storming fördert ein gemeinsames Verständnis, indem es alle relevanten Stakeholder an einen Ort bringt und direkten Austausch ermöglicht. Die frühzeitige Identifizierung von Unsicherheiten ermöglicht proaktives Handeln und agile Lösungen. In der Praxis hat sich Event Storming als effiziente Methode erwiesen, Missverständnisse zu minimieren, Entwicklungsteams zu befähigen und eine gemeinsame Vision zu schaffen. Event Storming ist damit ein integraler Bestandteil eines erfolgreichen agilen Ansatzes, der nicht nur Transparenz schafft, sondern auch die Umsetzung von Softwarelösungen unterstützt.

Schritte und Überlegungen vor einem Event-Storming-Workshop

Vor dem Start eines Event Storming Workshops ist es entscheidend, sorgfältige Schritte und Überlegungen anzustellen, um sicherzustellen, dass der Workshop effektiv und zielführend verläuft. Zunächst gilt es, die richtigen Teilnehmenden zu identifizieren.  

Die Auswahl der Teilnehmenden beeinflusst nicht nur die Qualität der erstellten Modelle, sondern auch die Reichweite und das Verständnis der erfassten Domäne. Es ist essenziell, ein ausgewogenes Team zusammenzustellen, das verschiedene Perspektiven repräsentiert, darunter Entwickler, Produktmanager, Anwender, Domänen-Experten und die entsprechenden Stakeholder. Diese Vielfalt an Blickwinkeln trägt dazu bei, ein umfassendes Verständnis der Geschäftsprozesse zu gewährleisten und ermöglicht es, unterschiedliche Sichtweisen und Erfahrungen in die Modellierung einzubringen. Die Beteiligung der richtigen Leute fördert nicht nur die Genauigkeit und Relevanz der erstellten Modelle, sondern trägt auch dazu bei, dass die entwickelten Lösungen besser auf die tatsächlichen Bedürfnisse der Anwender zugeschnitten sind.

Sorgfältige Schritte vor dem Start eines Event Storming Workshops
Die Auswahl der richtigen Teilnehmer für den Event Storming Workshop

Ein weiterer wichtiger Faktor ist die Auswahl des richtigen Raums, er beeinflusst maßgeblich den Erfolg des Workshops. Der Raum sollte ausreichend Platz bieten, um die kollaborative Modellierung auf einer großen Fläche zu ermöglichen. Viel Wandfläche oder große Whiteboards oder Flipcharts sind hierbei essenziell, um die Visualisierung der Domäne deutlich sichtbar zu gestalten. Gleichzeitig sollte der Raum aber auch genügend Platz für Diskussionen und den Austausch der Teilnehmenden bieten. Ein offener, einladender Raum fördert die Interaktion und trägt dazu bei, dass alle Teammitglieder aktiv teilnehmen können.  

Viel Wandfläche, große Whiteboards oder Flipcharts sind essenziell
Viel Wandfläche, große Whiteboards oder Flipcharts sind essenziell

Alternativ gibt es natürlich auch digitale Kollaborationstools – Allerdings liefern sie unserer Erfahrung nach nicht immer die gewünschten Ergebnisse. Trotz ihrer Bequemlichkeit und Flexibilität neigen sie dazu, den persönlichen Austausch und die spontane Zusammenarbeit zu beeinträchtigen, die für eine erfolgreiche Modellierungssitzung entscheidend sind. Die physische Präsenz im gleichen Raum fördert oft eine lebendige Diskussion und den direkten Austausch von Ideen, was die Qualität der erzielten Modelle verbessert. Obwohl digitale Tools in einigen Fällen sinnvoll sein können, ist es wichtig, sorgfältig zu prüfen, ob sie die Interaktion und den Dialog zwischen den Teilnehmenden nicht unnötig einschränken. Ein ausgewogener Ansatz, der die Vorteile beider Welten verbindet, ist unserer Erfahrung nach, wenn in den ersten Teilen des Workshops, das Event Storming mit vielen Personen in Präsenz durchgeführt wird und erst später mit weniger Personen die Details digital vertieft werden.  

 digitale Kollaborationstools
Digitales Kollaborationstool


Event Storming in der Praxis

Die Umsetzung von Event Storming in der Praxis folgt einem klaren Schritt-für-Schritt-Prozess, der eine effektive Modellierung ermöglicht. Ein entscheidender Aspekt dabei ist die Verwendung von Klebezetteln zur Visualisierung von Ereignissen. Dieser Ansatz fördert die Interaktion der Teilnehmenden und erlaubt es, schnell Ideen auszutauschen und zu strukturieren.

Dabei gibt es verschiedene Abschnitte des Workshops in denen verschiedene Flughöhen erreicht werden, und zwar:

  • Big Picture  
  • Process Modelling
  • Software Design
Verschiede Abschnitte des Workshops
Verschiede Abschnitte des Workshops


Den detaillierten Ablauf der einzelnen Abschnitte werden wir in separaten Blogartikeln vorstellen.  

Ubiquitous Languages

Event Storming trägt maßgeblich dazu bei, die Nutzung von Ubiquitous Language zu fördern – ein zentrales Konzept im Kontext von Domain-Driven Design (DDD).  

Eine gemeinsame Sprache für ein einheitliches Verständnis
Eine gemeinsame Sprache für ein einheitliches Verständnis

Die gemeinsame Sprache, die durch das Event Storming entwickelt wird, trägt zusätzlich dazu bei, dass alle Teammitglieder – unabhängig von ihrer Rolle – ein einheitliches Verständnis der Domäne entwickeln und sich darauf verständigen können. Dieser Ansatz fördert nicht nur die Klarheit in der Softwareentwicklung, sondern schafft auch die Grundlage für eine effektive Zusammenarbeit im Team.

Ergebnisse des Workshops nutzen

Die wahren Früchte eines Event Storming Workshops ernten wir nicht nur während der intensiven Modellierungsphase, sondern vor allem in der Nutzung der resultierenden Ergebnisse. Der Workshop liefert nicht nur ein visualisiertes Modell der Domäne, sondern auch einen gemeinsamen Konsens. Um diese Ergebnisse optimal zu nutzen, ist es entscheidend, sie in den gesamten Entwicklungsprozess zu integrieren.

Die während des Workshops erstellten Modelle dienen als Leitfaden für die Entwicklungsarbeiten. Sie ermöglichen es den Teams, klare Entscheidungen in Bezug auf die Architektur, das Datenmodell und die Implementierung zu treffen. Die identifizierten Elemente bilden die Grundlage für einen guten Teamschnitt, die Definition von Schnittstellen und die Implementierung von Geschäftslogik.  

Die Ergebnisse des Event Storming Workshops sind somit nicht nur ein statisches Modell, sondern ein lebendiger, anpassungsfähiger Leitfaden, der den Weg zu einer erfolgreichen und guten Softwareentwicklung ebnet.

Häufige Herausforderungen beim Event Storming und wie man sie überwindet

Eine herausfordernde Situation im Workshop besteht in der potenziellen Dominanz einzelner Teilnehmer, insbesondere wenn Entwickler als Experten für ein bestehendes System fungieren. Dies könnte zu einem unausgewogenen Fokus auf bestimmte Aspekte der Domäne führen und den eigentlichen Domain-Driven Design (DDD)-Ansatz beeinträchtigen. Es ist von großer Bedeutung, sicherzustellen, dass der Workshop eine fachliche Perspektive beibehält. Hierbei ist es entscheidend, eine offene und kollaborative Atmosphäre zu schaffen, in der jedes Teammitglied aktiv zur Diskussion beitragen kann.

Ein weiteres Hindernis könnte in der Komplexität und Unübersichtlichkeit der Modelle liegen. Daher ist es ratsam, regelmäßig den Fokus auf die angemessene Flughöhe zu lenken und nicht in zu viele Details abzudriften.

Ein Problem, dass uns immer wieder begegnet ist, dass es schwierig ist die relevanten Stakeholder an einen Ort für einen gemeinsamen Workshop zu bringen. Dies ist aber sehr wichtig, um ein gemeinsames Verständnis der Domäne zu gewährleisten und die richtigen und wichtigen Diskussionen innerhalb des Workshops und nicht danach zu führen. Eine mögliche Lösung könnte darin bestehen, zunächst mit einem Teilbereich zu starten und die Methode "Event Storming" intern zu fördern, um nach und nach alle Stakeholder zu überzeugen.

Best Practices im Event Storming

Unsere Erfahrung zeigt, dass eine klare Moderation im Workshop entscheidend ist, um den Fokus zu wahren und den Modellierungsprozess effektiv zu steuern. Hier bietet sich ein externer Moderator an, der nicht Teil des Teams ist und keine persönlichen Interessen verfolgt. Durch die Unabhängigkeit dieser Person von außerhalb des Teams oder Unternehmens können viele gezielte Fragen gestellt werden, die zur Klarheit in der Gruppe beitragen. Dies ermöglicht eine objektive Steuerung des Workshops und fördert einen strukturierten Austausch, um die besten Ergebnisse bei der Event-Storming-Modellierung zu erzielen.

Event Storming Workshop mit Klebezetteln

Fazit

Event Storming hat sich bei uns als unsere bevorzugte Methode etabliert, um effizient in die Fachlichkeit einer neuen Domäne einzutauchen. Durch diese Methode gelingt es uns nicht nur, rasch ein tiefgehendes Verständnis für die Geschäftsprozesse zu entwickeln, sondern auch eine gemeinsame Grundlage für alle Projektbeteiligten zu schaffen. Dieses gemeinsame Verständnis ist von entscheidender Bedeutung, da es als robustes Fundament für die weitere Entwicklung dient. Event Storming erweist sich somit als die Schlüsselmethode, um in Projekte erfolgreich zu starten und sicherzustellen, dass alle Teammitglieder auf derselben Seite stehen und auf eine klare und effektive Weise voranschreiten können.

Möchten Sie mehr darüber erfahren, wie Event Storming Sie bei der Softwareentwicklung unterstützen kann? Wir freuen uns auf den Austausch und/oder einen gemeinsamen Workshop.

Jetzt Event Storming Workshop buchen
Jetzt Event Storming Workshop buchen
No items found.

Was ist Event Storming?  

In der Welt der agilen Softwareentwicklung ist Event Storming zu einem unverzichtbaren Werkzeug geworden, insbesondere im Kontext von Domain-Driven Design (DDD). Doch was genau verbirgt sich hinter diesem Begriff? Event Storming ist eine agile Modellierungstechnik, die sich als äußerst effektiv für die gemeinsame Diskussion über Anforderungen in der Softwareentwicklung erwiesen hat.

Bei Event Storming geht es darum, komplexe Geschäftsprozesse in einer kollaborativen und interaktiven Umgebung mit Klebezetteln zu visualisieren. In diesem Kontext werden unterschiedliche Teilnehmer, darunter Entwickler, Produktmanager und andere Stakeholder, eingeladen, ihre Perspektiven einzubringen. Dieser partizipative Ansatz trägt dazu bei, ein tiefgehendes Verständnis für den Geschäftsprozess zu entwickeln und die Kommunikation zwischen den Teammitgliedern und Stakeholdern zu fördern.

Die Bedeutung von Event Storming liegt vor allem in seiner Fähigkeit, komplexe Domänen und ihre Interaktionen leicht verständlich darzustellen. Durch die gemeinsame Exploration und Modellierung von Events, Commands, Aggregaten und anderen DDD-Konzepten, ermöglicht Event Storming schnell und einfach eine präzise Definition des Geschäftsprozesses. Dies führt zu einer klaren Ausrichtung der Softwareentwicklung auf die tatsächlichen Anforderungen des Unternehmens.  

Komplexe Geschäftsprozesse werden mit Klebezetteln visualisiert
Komplexe Geschäftsprozesse werden mit Klebezetteln visualisiert


Warum ist Event Storming so wichtig?

Event Storming fördert ein gemeinsames Verständnis, indem es alle relevanten Stakeholder an einen Ort bringt und direkten Austausch ermöglicht. Die frühzeitige Identifizierung von Unsicherheiten ermöglicht proaktives Handeln und agile Lösungen. In der Praxis hat sich Event Storming als effiziente Methode erwiesen, Missverständnisse zu minimieren, Entwicklungsteams zu befähigen und eine gemeinsame Vision zu schaffen. Event Storming ist damit ein integraler Bestandteil eines erfolgreichen agilen Ansatzes, der nicht nur Transparenz schafft, sondern auch die Umsetzung von Softwarelösungen unterstützt.

Schritte und Überlegungen vor einem Event-Storming-Workshop

Vor dem Start eines Event Storming Workshops ist es entscheidend, sorgfältige Schritte und Überlegungen anzustellen, um sicherzustellen, dass der Workshop effektiv und zielführend verläuft. Zunächst gilt es, die richtigen Teilnehmenden zu identifizieren.  

Die Auswahl der Teilnehmenden beeinflusst nicht nur die Qualität der erstellten Modelle, sondern auch die Reichweite und das Verständnis der erfassten Domäne. Es ist essenziell, ein ausgewogenes Team zusammenzustellen, das verschiedene Perspektiven repräsentiert, darunter Entwickler, Produktmanager, Anwender, Domänen-Experten und die entsprechenden Stakeholder. Diese Vielfalt an Blickwinkeln trägt dazu bei, ein umfassendes Verständnis der Geschäftsprozesse zu gewährleisten und ermöglicht es, unterschiedliche Sichtweisen und Erfahrungen in die Modellierung einzubringen. Die Beteiligung der richtigen Leute fördert nicht nur die Genauigkeit und Relevanz der erstellten Modelle, sondern trägt auch dazu bei, dass die entwickelten Lösungen besser auf die tatsächlichen Bedürfnisse der Anwender zugeschnitten sind.

Sorgfältige Schritte vor dem Start eines Event Storming Workshops
Die Auswahl der richtigen Teilnehmer für den Event Storming Workshop

Ein weiterer wichtiger Faktor ist die Auswahl des richtigen Raums, er beeinflusst maßgeblich den Erfolg des Workshops. Der Raum sollte ausreichend Platz bieten, um die kollaborative Modellierung auf einer großen Fläche zu ermöglichen. Viel Wandfläche oder große Whiteboards oder Flipcharts sind hierbei essenziell, um die Visualisierung der Domäne deutlich sichtbar zu gestalten. Gleichzeitig sollte der Raum aber auch genügend Platz für Diskussionen und den Austausch der Teilnehmenden bieten. Ein offener, einladender Raum fördert die Interaktion und trägt dazu bei, dass alle Teammitglieder aktiv teilnehmen können.  

Viel Wandfläche, große Whiteboards oder Flipcharts sind essenziell
Viel Wandfläche, große Whiteboards oder Flipcharts sind essenziell

Alternativ gibt es natürlich auch digitale Kollaborationstools – Allerdings liefern sie unserer Erfahrung nach nicht immer die gewünschten Ergebnisse. Trotz ihrer Bequemlichkeit und Flexibilität neigen sie dazu, den persönlichen Austausch und die spontane Zusammenarbeit zu beeinträchtigen, die für eine erfolgreiche Modellierungssitzung entscheidend sind. Die physische Präsenz im gleichen Raum fördert oft eine lebendige Diskussion und den direkten Austausch von Ideen, was die Qualität der erzielten Modelle verbessert. Obwohl digitale Tools in einigen Fällen sinnvoll sein können, ist es wichtig, sorgfältig zu prüfen, ob sie die Interaktion und den Dialog zwischen den Teilnehmenden nicht unnötig einschränken. Ein ausgewogener Ansatz, der die Vorteile beider Welten verbindet, ist unserer Erfahrung nach, wenn in den ersten Teilen des Workshops, das Event Storming mit vielen Personen in Präsenz durchgeführt wird und erst später mit weniger Personen die Details digital vertieft werden.  

 digitale Kollaborationstools
Digitales Kollaborationstool


Event Storming in der Praxis

Die Umsetzung von Event Storming in der Praxis folgt einem klaren Schritt-für-Schritt-Prozess, der eine effektive Modellierung ermöglicht. Ein entscheidender Aspekt dabei ist die Verwendung von Klebezetteln zur Visualisierung von Ereignissen. Dieser Ansatz fördert die Interaktion der Teilnehmenden und erlaubt es, schnell Ideen auszutauschen und zu strukturieren.

Dabei gibt es verschiedene Abschnitte des Workshops in denen verschiedene Flughöhen erreicht werden, und zwar:

  • Big Picture  
  • Process Modelling
  • Software Design
Verschiede Abschnitte des Workshops
Verschiede Abschnitte des Workshops


Den detaillierten Ablauf der einzelnen Abschnitte werden wir in separaten Blogartikeln vorstellen.  

Ubiquitous Languages

Event Storming trägt maßgeblich dazu bei, die Nutzung von Ubiquitous Language zu fördern – ein zentrales Konzept im Kontext von Domain-Driven Design (DDD).  

Eine gemeinsame Sprache für ein einheitliches Verständnis
Eine gemeinsame Sprache für ein einheitliches Verständnis

Die gemeinsame Sprache, die durch das Event Storming entwickelt wird, trägt zusätzlich dazu bei, dass alle Teammitglieder – unabhängig von ihrer Rolle – ein einheitliches Verständnis der Domäne entwickeln und sich darauf verständigen können. Dieser Ansatz fördert nicht nur die Klarheit in der Softwareentwicklung, sondern schafft auch die Grundlage für eine effektive Zusammenarbeit im Team.

Ergebnisse des Workshops nutzen

Die wahren Früchte eines Event Storming Workshops ernten wir nicht nur während der intensiven Modellierungsphase, sondern vor allem in der Nutzung der resultierenden Ergebnisse. Der Workshop liefert nicht nur ein visualisiertes Modell der Domäne, sondern auch einen gemeinsamen Konsens. Um diese Ergebnisse optimal zu nutzen, ist es entscheidend, sie in den gesamten Entwicklungsprozess zu integrieren.

Die während des Workshops erstellten Modelle dienen als Leitfaden für die Entwicklungsarbeiten. Sie ermöglichen es den Teams, klare Entscheidungen in Bezug auf die Architektur, das Datenmodell und die Implementierung zu treffen. Die identifizierten Elemente bilden die Grundlage für einen guten Teamschnitt, die Definition von Schnittstellen und die Implementierung von Geschäftslogik.  

Die Ergebnisse des Event Storming Workshops sind somit nicht nur ein statisches Modell, sondern ein lebendiger, anpassungsfähiger Leitfaden, der den Weg zu einer erfolgreichen und guten Softwareentwicklung ebnet.

Häufige Herausforderungen beim Event Storming und wie man sie überwindet

Eine herausfordernde Situation im Workshop besteht in der potenziellen Dominanz einzelner Teilnehmer, insbesondere wenn Entwickler als Experten für ein bestehendes System fungieren. Dies könnte zu einem unausgewogenen Fokus auf bestimmte Aspekte der Domäne führen und den eigentlichen Domain-Driven Design (DDD)-Ansatz beeinträchtigen. Es ist von großer Bedeutung, sicherzustellen, dass der Workshop eine fachliche Perspektive beibehält. Hierbei ist es entscheidend, eine offene und kollaborative Atmosphäre zu schaffen, in der jedes Teammitglied aktiv zur Diskussion beitragen kann.

Ein weiteres Hindernis könnte in der Komplexität und Unübersichtlichkeit der Modelle liegen. Daher ist es ratsam, regelmäßig den Fokus auf die angemessene Flughöhe zu lenken und nicht in zu viele Details abzudriften.

Ein Problem, dass uns immer wieder begegnet ist, dass es schwierig ist die relevanten Stakeholder an einen Ort für einen gemeinsamen Workshop zu bringen. Dies ist aber sehr wichtig, um ein gemeinsames Verständnis der Domäne zu gewährleisten und die richtigen und wichtigen Diskussionen innerhalb des Workshops und nicht danach zu führen. Eine mögliche Lösung könnte darin bestehen, zunächst mit einem Teilbereich zu starten und die Methode "Event Storming" intern zu fördern, um nach und nach alle Stakeholder zu überzeugen.

Best Practices im Event Storming

Unsere Erfahrung zeigt, dass eine klare Moderation im Workshop entscheidend ist, um den Fokus zu wahren und den Modellierungsprozess effektiv zu steuern. Hier bietet sich ein externer Moderator an, der nicht Teil des Teams ist und keine persönlichen Interessen verfolgt. Durch die Unabhängigkeit dieser Person von außerhalb des Teams oder Unternehmens können viele gezielte Fragen gestellt werden, die zur Klarheit in der Gruppe beitragen. Dies ermöglicht eine objektive Steuerung des Workshops und fördert einen strukturierten Austausch, um die besten Ergebnisse bei der Event-Storming-Modellierung zu erzielen.

Event Storming Workshop mit Klebezetteln

Fazit

Event Storming hat sich bei uns als unsere bevorzugte Methode etabliert, um effizient in die Fachlichkeit einer neuen Domäne einzutauchen. Durch diese Methode gelingt es uns nicht nur, rasch ein tiefgehendes Verständnis für die Geschäftsprozesse zu entwickeln, sondern auch eine gemeinsame Grundlage für alle Projektbeteiligten zu schaffen. Dieses gemeinsame Verständnis ist von entscheidender Bedeutung, da es als robustes Fundament für die weitere Entwicklung dient. Event Storming erweist sich somit als die Schlüsselmethode, um in Projekte erfolgreich zu starten und sicherzustellen, dass alle Teammitglieder auf derselben Seite stehen und auf eine klare und effektive Weise voranschreiten können.

Möchten Sie mehr darüber erfahren, wie Event Storming Sie bei der Softwareentwicklung unterstützen kann? Wir freuen uns auf den Austausch und/oder einen gemeinsamen Workshop.

Jetzt Event Storming Workshop buchen
Jetzt Event Storming Workshop buchen
No items found.

Weitere Artikel aus unserem Blog