Skip to content

Event Storming Formats

Big Picture, Process Modeling, and Software Design formats

Event Storming has three formats, each serving a different purpose.


Big Picture Event Storming

Purpose: Align key stakeholders from different parts of an organization

Activities:

  • Map out how the business works at a high level
  • Identify major domain events, actors, and boundaries
  • Surface terminology conflicts and context boundaries

Duration: 4-8 hours (can be split across multiple sessions)

Participants: Cross-functional representation from all areas

Outcome: Shared understanding of the business domain

When to Use Big Picture

  • Starting a new project or initiative
  • Onboarding new team members to complex domains
  • Identifying bounded contexts and system boundaries
  • Before planning major architectural changes

Big Picture Example Output

After a Big Picture session, you'll have:

  • Timeline of major events spanning the entire business domain
  • Bounded context boundaries showing where terminology changes
  • Key actors who interact with the system
  • External systems that integrate with your domain
  • Questions and conflicts surfaced but not yet resolved

Process Modeling Event Storming

Purpose: Create detailed understanding of specific business processes

Activities:

  • Map information flows, decision points, and policies
  • Identify who or what makes decisions and what data is needed
  • Detail the sequence and dependencies of domain events

Duration: 2-4 hours per process

Participants: Domain experts, developers, QA for the specific process

Outcome: Clear process flows with domain vocabulary

When to Use Process Modeling

  • Before implementing a specific feature
  • Refining understanding of a business process
  • Before Example Mapping workshops
  • Troubleshooting process-related bugs

Process Modeling Example Output

After a Process Modeling session, you'll have:

  • Detailed event flow for one specific process
  • Decision points (pink stickies showing business rules)
  • Information requirements (what data is needed when)
  • Actor interactions (who does what, when)
  • Policy definitions (business rules that govern the process)

Example: "Order Approval Process"

[Customer] → Places Order → [Order Placed]
                                    ↓
                            [Check Amount Policy]
                                    ↓
                        If > $10k → [Approval Required]
                                    ↓
                [Manager] → Approves → [Order Approved]
                                    ↓
                            [Order Fulfilled]

Software Design Event Storming

Purpose: Distill technical solutions from business knowledge

Activities:

  • Map domain concepts to software structures
  • Identify aggregates, commands, and events
  • Design bounded contexts and integration points

Duration: 2-4 hours

Participants: Development team, technical leads, architects

Outcome: Technical design aligned with domain language

When to Use Software Design

  • After Process Modeling, before implementation
  • Designing system architecture
  • Refactoring existing systems
  • Planning technical migrations

Software Design Example Output

After a Software Design session, you'll have:

  • Aggregate boundaries (which entities belong together)
  • Command handlers (who processes each command)
  • Event publishers (when and where events are emitted)
  • Read models (what data views are needed)
  • Integration points (where bounded contexts communicate)

Example: "Order Aggregate"

Order Aggregate
├── Commands:
│   ├── PlaceOrder
│   ├── ApproveOrder
│   └── FulfillOrder
├── Events:
│   ├── OrderPlaced
│   ├── OrderApproved
│   └── OrderFulfilled
└── Business Rules:
    └── Large orders require approval

Choosing the Right Format

Start with Big Picture When

  • Team is new to the domain
  • Organization has multiple departments/teams
  • You need to understand the whole system
  • You're identifying bounded contexts

Output leads to: Process Modeling sessions for specific processes

Use Process Modeling When

  • You have a specific feature to implement
  • You need detailed understanding of one process
  • Big Picture revealed an area needing deeper exploration
  • You're preparing for Example Mapping

Output leads to: Example Mapping workshops for that feature

Use Software Design When

  • You have Process Modeling output
  • You're ready to design technical solution
  • You need to refactor existing code
  • You're defining system architecture

Output leads to: Implementation and coding


Progressive Refinement

Event Storming formats build on each other:

Big Picture Event Storming
    ↓
Identifies bounded contexts and major processes
    ↓
Process Modeling Event Storming
    ↓
Details specific business processes
    ↓
Example Mapping
    ↓
Creates concrete examples and rules
    ↓
Software Design Event Storming
    ↓
Designs technical implementation
    ↓
Gherkin Specifications
    ↓
Executable tests

You don't always need all formats. Choose based on your needs:

  • New project: Big Picture → Process Modeling → Software Design
  • Specific feature: Process Modeling → Example Mapping
  • Refactoring: Software Design
  • Bug fixing: Process Modeling (focused on problem area)

Sticky Note Grammar

Event Storming uses color-coded sticky notes as a visual language:

Color Represents Format Example
Orange Domain Event Past tense, something that happened "Order Placed", "Payment Received"
Blue Command/Action Imperative, action that triggers event "Place Order", "Approve Request"
Yellow Actor/Persona Who initiates commands "Customer", "Manager", "System"
Pink Policy/Rule Business rule that triggers commands "When order >$10k → require approval"
Purple External System Systems outside your control "Payment Gateway", "Email Service"
Red Problem/Question Uncertainty or blocker "What if...?", "How does...?"
Green Opportunity Improvement ideas "Could automate...", "Might simplify..."
White Definition Glossary term clarification "Approved = manager signed off"


Tutorials | How-to Guides | Explanation | Reference

You are here: Explanation — understanding-oriented discussion that clarifies concepts.