Book: Introducing Event Storming - Alberto Brandolini

February 24th, 2019

Introducing EventStorming

An act of Deliberate Collective Learning

(https://leanpub.com/introducing_eventstorming)

 

Preface - 25%

About this book

Who is this book for

Notation

Acknowledgments

How to read this book

Version

1.What does EventStorming look like? - 85%

Challenging corporate processes

Kicking off a startup

Designing a new feature for a web app

Quick EventStorming in Avanscoperta

A deep dive into problem space

2.A closer look to the problem space - 80%

Complexity in a nutshell, or less

Organization silos

Hierarchy

The shape of the problem

3.Pretending to solve the problem writing software - 50%

It’s not about ‘delivering software’

The illusion of the underlying model

The Product Owner fallacy

The backlog fallacy [FIXME: definitely not the first one]

The backlog fallacy (rewritten)

Modeling is broken

Requirements gathering is broken

Enterprise Architecture is broken

The EventStorming approach

4.Running a Big Picture Workshop - 98%

Invite the right people

Room setup

Workshop Structure

Phase: Kick-off

Phase: Chaotic Exploration

Phase: Enforcing the timeline

People and Systems

Phase: Problems and opportunities

Phase: Pick your problem

The promised structure summary

5.Playing with value - part 1 - 95%

Explore Value

Explore Purpose

When should we apply this step?

6.Discovering Bounded Contexts with EventStorming

Why Bounded Contexts are so critical

Finding bounded contexts

Enter EventStorming

Structure of a Big Picture workshop

Homework time

Putting everything together

7.Making it happen

Managing Participant’s experience

Managing conflicts

8.Preparing the workshop - 30%

Choosing a suitable room

Provide an unlimited modeling surface

Managing invitations

9.Workshop Aftermath - 20%

Cooperating domains

When to stop?

How do we know we did a good job?

Wrapping up a big picture workshop

Managing the big picture artifact

Focusing on the hot spot

Documenting the outcomes - TRICKY

Emerging structure

10.Big Picture Variations - 50%

Software Project Discovery

Organization Retrospective

Induction for new hires

Why is it working?

11.What software development really is - 40%

Software development is writing code

Software development is learning

Software development is making decisions

Software development is waiting

Modelling processes and services

12.Process Modeling as a cooperative game - 100%

Context

Game Goal(s)

Coming soon

13.Process Modeling Building Blocks - 90%

Fuzziness vs. precision

The Picture That Explains Everything

Events

Commands, Actions or Intentions

People

Systems

Policies

Read Models

Value

Hotspots

14.Process modeling game strategies - 50%

Kicking-off

Mid-game strategies

Team dynamics

Are we done?

15.Observing global state - 10%

The transaction obsession

There’s more to consistency than it’s apparent to the eye

Modeling software systems

16.Running a Design-Level EventStorming - 10%

Scope is different

People are different

What do we do with the Big Picture Artifact?

Where are Events Coming from?

Discover Aggregates

How do we know we’re over?

17.Design-Level modeling tips

Make the alternatives visible

Choose later

Pick a Problem

Rewrite, then rewrite, then rewrite again.

Hide unnecessary complexity

Postpone aggregate naming

18.Building Blocks - 20%

Why are Domain Events so special?

Events are precise

No implicit scope limitation

Domain Events as state transitions

Domain Events are triggers for consequences

Domain Events are leading us towards the bottleneck

Alternative approaches

Wrapping everything up

Commands - Actions - Decisions

19.Modeling Aggregates

Discovering aggregates

20.Event Design Patterns - 5%

Discovery strategies

Composite Domain Event

21.From paper roll to working code

Managing the design level EventStorming artifact

Coding ASAP

22.From EventStorming to UserStories - 5%

A placeholder and a better conversation

Defining the acceptance criteria

EventStorming and User Story Mapping

How to combine the two approaches?

23.Working with Startups - 2%

The focus is not on the app

Leverage Wisdom of the crowd

Multiple business models

24.Working in corporate environment - 5%

Invitation is crucial

Manage check-in process

The fog-me-fog model

Nobody wants to look stupid

Wrapping up

What happens next?

Corporate Dysfuctions

25.Designing a product

This is not a tailored solution

Matching expectations

Simplicity on the outside

26.Model Storming - 0%

27.Remote Event Storming

Ok, seriously

Downgrading expectations

Patterns and Anti-patterns

28.Patterns and Anti-Patterns - 75%

Add more space

Be the worst

Conquer First, Divide Later

Do First, Explain Later

Fuzzy Definitions

Guess First

Hotspot

Icebreaker (the)

Incremental Notation

Go personal

Keep your mouth shut

Leave Stuff Around

Manage Energy

Make some noise!

Mark hot spots

Money on the table

One Man One Marker

Poisonous Seats

Reverse Narrative

The Right To Be Wrong

Single Out the Alpha-male

Slack day after

Sound Stupid

Speaking out loud

Start from the center

Start from the extremes

Unlimited Modeling Surface

Visible Legend

29.Anti-patterns

Ask Questions First

Big Table at the center of the room

Committee

Divide and Conquer

Do the right thing

Dungeon Master

Follow the leader

Human Bottleneck

Karaoke Singer

Precise Notation

Religion War

The Spoiler

Start from the beginning

The godfather

30.RED ZONE

Fresh Catering

Providential Toilet Door Malfunctioning

Specific Formats

31.Big Picture EventStorming

32.Design-Level EventStorming

Next actions

Glossary - 40% (but do you really care?)

Fuzzy by design

Tools

Modeling Surfaces

Markers

Stickies

Static pads

Recording results

Bibliography

Notes