top of page

What is Process Modeling Event Storming?

Process Modeling with Event Storming is a collaborative, visual, and domain-driven design technique primarily used to map out complex business processes, identify key events, and understand the flow of information. It is an approach where domain experts, developers, and stakeholders come together to break down the process through events, commands, and aggregates.


Here’s how Event Storming applies to Process Modeling:


1. Events


   - Core Concept: An event is something that happens in the system that is meaningful to the business. In process modeling, events represent critical moments in time when something of significance has occurred.

   - Example: A customer places an order, an invoice is sent, a payment is received.


2. Commands


   - Core Concept: A command is an instruction that triggers an event. Commands represent user or system-driven actions that initiate a process or change in state.

   - Example: A customer sends an order, a user clicks to confirm payment, or a system schedules a delivery.


3. Aggregates


   - Core Concept: Aggregates are clusters of related data or entities that ensure business rules are followed. They act as the unit of consistency and define boundaries within which business logic operates.

   - Example: In a sales domain, an aggregate might be the "Order" entity, which encapsulates order details, payment status, and delivery options.


4. Actors/Users


   - Core Concept: The actors in Event Storming represent users or systems interacting with the process. These actors initiate commands, handle processes, or react to events.

   - Example: A customer placing an order or an employee processing a return.


5. Bounded Contexts


   - Core Concept: Bounded contexts refer to the limits within which a particular part of the domain model makes sense. Each bounded context may have its own event flows, rules, and aggregates.

   - Example: A bounded context for billing vs. a bounded context for shipping in an e-commerce system.


6. Hotspots


   - Core Concept: Hotspots are areas of the process where uncertainty or potential for improvement exists. These are highlighted during the Event Storming session to discuss in more depth or clarify ambiguities.

   - Example: A complex approval process that may cause delays or an unclear business rule.


7. Event Flow


   - Core Concept: The flow of events is the sequence in which events occur within a process. In process modeling, this helps trace how different business operations and decisions unfold.

   - Example: Order placed -> Payment processed -> Inventory updated -> Shipment scheduled.


8. Policies (Process Rules)


   - Core Concept: Policies are the rules or conditions that drive decision-making in the process. They act as the triggers for commands based on specific conditions or states.

   - Example: If the payment is confirmed, the order status is updated to “Processing.”



How Event Storming Enhances Process Modeling:


1. Collaborative: It encourages active participation from domain experts and stakeholders, ensuring the process model aligns with real-world scenarios.


2. Visual: Events are represented on sticky notes or a whiteboard, making it easy to visualize complex workflows at a high level.


3. Iterative: It’s easy to refine the model by adding new events, adjusting flows, or correcting inconsistencies as more knowledge is gained.


4. Focus on Business Events: It shifts the focus from technical details to business events, ensuring the model remains domain-driven.


In short, Process Modeling with Event Storming helps teams explore and visualize a business process from the perspective of domain events, facilitating deeper understanding and better decision-making in the design of systems and workflows."

bottom of page