Event Storming is a collaborative workshop technique invented by Alberto Brandolini in 2013 for rapidly exploring complex business domains through visual modeling with sticky notes. Rooted in Domain-Driven Design (DDD), it brings together domain experts, developers, and stakeholders in a highly interactive session to discover domain events, processes, and system boundaries. The technique's power lies not just in the model created, but in the shared understanding gained when diverse perspectives converge on a single timeline. A key principle: use an unlimited modeling surface (long paper rolls on walls) to avoid the artificial constraints of whiteboards β spatial freedom enables deeper exploration and prevents premature simplification of complex domains.
What This Cheat Sheet Covers
This topic spans 10 focused tables and 92 indexed concepts, 88 flashcards. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
A jump-to index of every table row in this cheat sheet.
An interactive map of every table and concept in this topic.
Table 1: EventStorming Flavors
EventStorming is a family of workshop formats, not a single technique. Each flavor targets a different level of detail and a different question β from "what does our business do?" to "how should our code be structured?" β and they are commonly run in sequence as understanding deepens.
| Flavor | Example | Description | |
|---|---|---|---|
Workshop with 15β30 participants mapping entire business domain over 4β8 hours | β’ Discovery-focused exploration to understand the whole domain landscape at high level β’ identifies domain events, actors, external systems, hot spots, and emergent bounded contexts β’ ideal for new projects, legacy modernization, or cross-team alignment | ||
Detailed modeling of "order fulfillment" process showing commands, policies, read models | β’ Zooms into a specific process or use case to expose detailed flows, business rules, bottlenecks, and alternatives β’ adds commands, policies, read models, and constraints β’ bridges discovery and design | ||
Design session identifying aggregates, bounded contexts, APIs for checkout microservice | β’ Most granular level β focuses on technical implementation within a bounded context β’ defines aggregates, commands, events, constraints, and APIs β’ produces design artifacts directly usable for coding | ||
Mapping where value is created and destroyed along the event timeline using value indicators | β’ Maps the value chain based on event storytelling β’ adds positive (green) and negative (red) value stickies to make value flow explicit β’ bridges EventStorming with Value Stream Mapping | ||
Workshop focused on user journey steps, screens, and friction points for a checkout flow | β’ Centers on the user experience perspective β user actions, screens, and decision data β’ identifies UI friction and read model gaps β’ integrates UX designers alongside domain experts | ||
Team uses event timeline of past sprint to identify what went wrong and what opportunities emerged | β’ Applies EventStorming format to reflect on past events rather than discover future ones β’ surfaces team process problems, bottlenecks, and improvement opportunities β’ useful for onboarding new members to understand the existing system |