Skip to content

sustainablepace/event-storming-tech-talk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Event Storming Tech Talk

Slides are taken from

Big Picture

What is Event Storming tl;dr

  • Fast and low overhead method for collaboratively discovering a business domain and enabling decision making, like
    • Identify core domain: Buy or make?
    • Bottlenecks and pain points? Manual workarounds possible?
    • Context boundaries?
    • Building blocks?
  • Individuals and interactions over processes and tools
    • enable conversations
    • empower people
    • create a shared mental model
  • (Domain) Event + (Brain) Storming
  • Conceived by Alberto Brandolini, still evolving

Motivation

Understanding the problem domain is hard

  • "Is the problem they want solved the problem that needs to be solved?"
  • Social problem
  • "If only we had asked Bob..."
  • Scrum doesn't help

50000 Orange Stickies Later

Round-robin interviews with all domain experts not ideal

Rashomon

  • Rashomon: One crime, four versions of the truth
  • Avoid being the detective: let all stakeholders figure out the truth collaboratively

Big Picture Event Storming

50000 Orange Stickies Later

Software Design Example

50000 Orange Stickies Later

Finding the truth collaboratively (what happened?)

50000 Orange Stickies Later

50000 Orange Stickies Later

50000 Orange Stickies Later

Outcome allows decision making

50000 Orange Stickies Later

Blockers, bottlenecks, pain points

50000 Orange Stickies Later

Context boundaries

50000 Orange Stickies Later

Each discarded post-it represents a conversation or an act of learning

Learning

Example: Finding context boundaries (Domain "Organizing a meet-up")

Big Picture

Big Picture

Indicators

  • cluster on timeline
  • triggered by potentially a single command
  • ends potentially with a single event
  • language different from other clusters
  • different stakeholders

Read a summary of the workshop

Other Scopes

50000 Orange Stickies Later

Big Picture for complex environments

Cynefin

  • low zoom events, birds eye view
  • emerging model
  • defer consensus
  • identify probing opportunities
  • "throw away the model"

We need variations for less complex scenarios

Process Modelling

50000 Orange Stickies Later

50000 Orange Stickies Later

50000 Orange Stickies Later

50000 Orange Stickies Later

50000 Orange Stickies Later

Example: Order process

Policies might also represent context boundaries

Process Modelling

Process Modelling

Process Modelling

Process Modelling

Process Modelling

Process Modelling

Process Modelling

Process Modelling

Process Modelling

Process Modelling

Process Modelling

An example of process modelling

  • 45 minute experiment by Team Turtlez
  • three different flows of order fulfillment: FFC 2.0, FFC 1.0, DHL (trivialized)
  • understanding of whole process is vague
  • maybe an interesting experiment: are policies on the correct zoom level?

Software Design

50000 Orange Stickies Later

typically for complicated environments

Cynefin

  • Scope is heavily constrained
  • Identify patterns, good practices
  • Consensus is needed
  • maybe keep the model

Example: Change email address

Problem: Customer wants to change her email address in online shop

Disclaimer: Not the original model, just a reconstruction

Scope is constrained : Software Design Example

Pattern: Command, Aggregate (with invariants), Event Software Design Example 50000 Orange Stickies Later

Decoupling with policies: Software Design Example 50000 Orange Stickies Later Software Design Example

Pattern repeats itself...model emerges Software Design Example

Rethinking aggregates, introducing read models Software Design Example Software Design Example 50000 Orange Stickies Later

More read models... Software Design Example Software Design Example Software Design Example

Success - a lot of new discoveries Software Design Example

A model that could almost be implemented Software Design Example The picture that explains almost everything CQRS

Summary - different formats for different zoom levels

50000 Orange Stickies Later

  • Scrum Masters - an interesting methodology for your tool-belt that improves refinements
  • Product Owners - don't be the detective: let your team and your stakeholders meet regularly
  • Developers - take event and policy zoom levels into account when before creating new microservices

About

Notes for a talk on event storming

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published