Slide 1

Slide 1 text

7 100. 1.000 avanscoperta

Slide 2

Slide 2 text

About me running www.avanscoperta.it (strategic consulting and training) Modelling (almost) everything with sticky notes, markers and a paper roll. Calling this stuff

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

2013 • First Blog Post About EventStorming • One single path from business to aggregate discovery • The beginning of a long journey

Slide 5

Slide 5 text

2019 • Growing Momentum • Many practitioners -> Many Ideas • Many different formats: • Big Picture / Process Modelling / Software Design • Retrospective / Induction / Startup Design / More… • Running out of Orange and Lilac post-it worldwide.

Slide 6

Slide 6 text

2020

Slide 7

Slide 7 text

2020 • “Put all the key people in the same room”… • 98% of our business became illegal overnight • And forced us to reinvent the workshop!

Slide 8

Slide 8 text

2024 • In-person is an option again • But many organisations turned to remote • … without understanding the consequences • https://www.slideshare.net/slideshow/all-the-small- things-xp2024-bolzano-bozen/269646051

Slide 9

Slide 9 text

Big Picture EventStorming Making sense of a huge mess

Slide 10

Slide 10 text

Big Picture Workshop Invite the right people -> Business, IT, UX Provide unlimited modelling space Surface, Markers, stickies Model a whole business line with Domain Events

Slide 11

Slide 11 text

Hey! Shouldn’t we focus on a specific area? nope! Well… you can, but you’ll miss a lot of the potential

Slide 12

Slide 12 text

Establish a timeline Some facilitator tricks will kickstart the discussion quickly (2-3 mins to get the ball rolling)

Slide 13

Slide 13 text

Explore with domain Events

Slide 14

Slide 14 text

The shape of the organization

Slide 15

Slide 15 text

The knowledge distribution

Slide 16

Slide 16 text

Nouns will fool you And will probably fool LLMs too!

Slide 17

Slide 17 text

Enforcing the timeline Experts will usually post a locally ordered sequence of events But enforcing a shared timeline then triggers long awaited conversations

Slide 18

Slide 18 text

Outcome (big Picture): The whole process is visible Massive learning (crossing silo boundaries) consensus around the core problem Events: Building Blocks of our business storytelling Hotspots: key issues in our flow Boundaries: Between main phases Systems: whatever we interact with People: doing things Ideas: to improve the system VOTES: on what to change first

Slide 19

Slide 19 text

Standard Recipe Chaotic Exploration Breaking the ice, laying down the initial structure Enforce the timeline Triggering conversations, emergent boundaries People and Systems More details for precise storytelling Explicit walkthrough Validated narrative

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

CLARITY

Slide 22

Slide 22 text

People are afraid of breaking invisible things

Slide 23

Slide 23 text

Let’s make everything visible

Slide 24

Slide 24 text

Bonus outcomes

Slide 25

Slide 25 text

Big Picture EventStorming Aimed at collaborative discovery -> issues are visualised, not resolved. Scalable (with tricks) 12 -> 20 -> 35 -> 50 peopleMassive Learning Honest Map of as/is or Plausible map of future state Official Outcomes: massive learning, bounded contexts, alignment Unofficial outcomes: business learning the business, spot the enemy Enterprise projects don’t fail because of technology; they fail because of politics

Slide 26

Slide 26 text

Validated Narrative enables cheap layers

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

This is what I see: A clear business narrative Political Consensus A massive blocker

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

Toppings - (A menu, not a sequence) Explore Value Multi-currency Value-Stream Mapping alternative Problem and Opportunities + Arrow Voting Consensus over the most important problem to solve Emergent Boundaries All the information is already under your eyes Team Boundaries Do they match with the emergent boundaries?

Slide 31

Slide 31 text

Emerging context boundaries

Slide 32

Slide 32 text

An Item needs to have an approved description and a high quality image before being added to the catalog Just give me a valid URL and I’ll start tweeting about it

Slide 33

Slide 33 text

Under our eyes.

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

Can we do it remotely?

Slide 36

Slide 36 text

In-person experience Big Results in ONe Day Commitment to finish Full Day In Person High Conversation Throughput Peer Pressure Lo Fi Deeper Learning Experience $ Localized conversations % Early Results & Full Focus

Slide 37

Slide 37 text

Micro-Laziness as a key facilitation tool Wall accessibility Markers availability Sitting or standing

Slide 38

Slide 38 text

From Problems to solutions Constraint Problem Solution Side Effect Pandemic IN Person is Banned Move to Digital (Miro + Zoom) Friction in Execution Working on Miro No Miro Fluency 20 min warm up Delayed Results, smaller Timeframe Working on Zoom Zoom Fatigue Shorter Chunks, only Half Day Delayed Results, more chances for opting out New to Miro Friction with Tools More active facilitation More Passive Participation Active Facilitation No space for reactivity Heavily Scripted Boards Decreased Ownership Zoom & Miro Delayed Results Anticipated Sorting Higher Chance of mistakes Each side effect affects the overall perception of value

Slide 39

Slide 39 text

Remotely… Disappointing Results No Commitment to finish 3 Half Day Sessions Remote Low Conversation Throughput Limited Peer Pressure Digital Shallow Learning Experience Centralized conversations Delayed Results Open to distractions More Passive role Still better than the alternatives, but …we know what it could have been

Slide 40

Slide 40 text

By Javier Somoza, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=48092778 Can I make Carbonara with cream?

Slide 41

Slide 41 text

Remote Big Picture 🙂 Improved Facilitation Techniques 🙂 Modelling tools (MIRO) becoming more pervasive 😒 Still Nowhere close to the in-person interaction 🙁 Big risk of opting out before value is delivered.

Slide 42

Slide 42 text

There’s still a reason for the toga party

Slide 43

Slide 43 text

Do yourselves a favour: run it in-person

Slide 44

Slide 44 text

Can we do it hybrid?

Slide 45

Slide 45 text

Process Modelling Making sure we’re doing the right thing

Slide 46

Slide 46 text

Some Assumptions We’re working on the most compelling problem The problem has a solution in Software and/or Process Key Experts are available Business people, from the departments involved Technical Experts: Software and Service/UX Designers Note: assumptions can be broken, if you’re aware of the consequences.

Slide 47

Slide 47 text

Scope: Key Process Command Domain Event Domain Event Read Model Domain Event Read Model Preconditions Outcomes The flow to discover Please Note: Our scope is a unit of understanding, not necessarily matching with units of delivery

Slide 48

Slide 48 text

Now what?

Slide 49

Slide 49 text

A different job Big picture is for discovery -> Disagreements are OK Here we are Looking for an agreement -> Consensus is HARD

Slide 50

Slide 50 text

No content

Slide 51

Slide 51 text

How to make Specialists with different BackGround cooperate towards a common goal? Without a Danger?

Slide 52

Slide 52 text

Idea: Cooperative Games Massively influential on me

Slide 53

Slide 53 text

Game Rules

Slide 54

Slide 54 text

Process Modelling Game Rules 1. Every Path Should be Completed 2. Colour Grammar Should be Respected 3. Every Stakeholder should be reasonably Happy 4. Every HotSpot should be addressed

Slide 55

Slide 55 text

Every Path Should Be Completed

Slide 56

Slide 56 text

No content

Slide 57

Slide 57 text

Colour Grammar is respected

Slide 58

Slide 58 text

No content

Slide 59

Slide 59 text

Events: getting more precise every round Hotspots: Open issues in our flow Policies: reactive logic External Systems: that we interact with People: doing things Read Models: The data needed to take a given decision Commands: or actions

Slide 60

Slide 60 text

Colour-puzzle Thinking Policy User User Command Read Model External System Domain Event Command

Slide 61

Slide 61 text

Do we ALWAYS need a Policy? Yes, My game, my rules

Slide 62

Slide 62 text

Investigate Policies How is our system supposed to react to given events? Whenever [Event] then [Command] “We need a lilac between the orange and the blue” Policy

Slide 63

Slide 63 text

This is where everybody lies

Slide 64

Slide 64 text

Ambiguity does not compile

Slide 65

Slide 65 text

Policies spectrum IMPLICIT POLICIES: without an explicit agreement EXPLICIT POLICIES: assuming everyone is following them AUTOMATION: Listeners, Sagas, Process managers Policy User Policy

Slide 66

Slide 66 text

I am shaping the conversation, more than the code.

Slide 67

Slide 67 text

Exploring Value 😀

Slide 68

Slide 68 text

UML was not designed to support a conversation

Slide 69

Slide 69 text

UML was not designed to support an interdisciplinary conversation

Slide 70

Slide 70 text

Process Modelling EventStorming

Slide 71

Slide 71 text

Extracting User Stories Sometimes, it can be as easy as connecting commands to 😁

Slide 72

Slide 72 text

Extracting acceptance tests Great, we’re done! Not Yet! Can we flesh out some examples with names and numbers?

Slide 73

Slide 73 text

Good old BDD Format: Given (one or more past events) When triggering command Then resulting Event(s) And observable read model

Slide 74

Slide 74 text

Build Large Visualisation Tools

Slide 75

Slide 75 text

No content

Slide 76

Slide 76 text

Can you do it remotely?

Slide 77

Slide 77 text

Remote Process Modelling 🙂 Reduced loss compared to big Picture 🙂 The artefact could be made available to a larger audience. Slower, anyway. 😒 More active facilitation necessary 🙁 The human touch is still missing.

Slide 78

Slide 78 text

Software Modelling From Business Need to Implementation

Slide 79

Slide 79 text

What about The Aggregates?

Slide 80

Slide 80 text

Expansion Set! For Experienced Players ;-)

Slide 81

Slide 81 text

Game Rules: EventStorming Design 1. Every Path Should be Completed 2. Colour Grammar Should be Respected 3. Every Stakeholder should be reasonably Happy 4. Every HotSpot should be addressed 5. Aggregates should be coherent

Slide 82

Slide 82 text

No content

Slide 83

Slide 83 text

Colour-puzzle thinking - again User Command Read Model External System Domain Event Command Policy Aggregate

Slide 84

Slide 84 text

OBSOLETE!

Slide 85

Slide 85 text

On a surface… Events: getting more precise every round Hotspots: Open issues in our flow Policies: reactive logic External Systems: that we interact with People: doing things Read Models: The data needed to take a given decision Commands: or actions Aggregates: State machines, or independent components

Slide 86

Slide 86 text

Investigating Aggregates State Machine Logic Focus on BEHAVIOUR, not DATA Postpone NAMING Don’t fall in love with your intuition Aggregate

Slide 87

Slide 87 text

Symmetries on the timeline Do something …possibly the something Policy Command Aggregate Domain Event Policy User External System Command Policy Command User Domain Event External System Domain Event Read Model Policy Command Aggregate Domain Event Policy Command Aggregate Domain Event Read Model Probably the same aggregate… Probably the same Policy… Please Note: Timeline representation is suboptimal for OOD, but necessary to keep business stakeholders in the conversation.

Slide 88

Slide 88 text

What the business sees Your Territory

Slide 89

Slide 89 text

No content

Slide 90

Slide 90 text

We need to give up something as individuals in order to succeed as a team

Slide 91

Slide 91 text

A single tool won’t be enough to solve everything So you can go for multiple visualisations around the same problem

Slide 92

Slide 92 text

Happy Stakeholders Well …reasonably happy!

Slide 93

Slide 93 text

Challenging value Every step can create or destroy value for given users Discovering multiple currencies Discovering new opportunities Discovering inconsistencies

Slide 94

Slide 94 text

The Thing with Value…

Slide 95

Slide 95 text

Dealing with Value Money is the Obvious one But it’s a Zero Sum Currency :-/ More interesting currencies follow: Time, Stress, Anxiety Joy, Reputation, Satisfaction …

Slide 96

Slide 96 text

HotSpots are addressed But Not Now!

Slide 97

Slide 97 text

The Perfect Team Does it even exist?

Slide 98

Slide 98 text

Competences Business From different Sides Software Design User Experience & Service Design …

Slide 99

Slide 99 text

What about attitudes?

Slide 100

Slide 100 text

No content

Slide 101

Slide 101 text

Need Diverse Attitudes in order to perform

Slide 102

Slide 102 text

Strategies & Complex Moves This is more up to you…

Slide 103

Slide 103 text

Openings

Slide 104

Slide 104 text

Openings Start from the beginning More natural Easy to get Swamped Start from the end (Reverse Narrative) Lean, but less discoveries Not so natural for newbies Explore with Events -> Then Connect Needs Strict Timeboxing

Slide 105

Slide 105 text

I use all of them!

Slide 106

Slide 106 text

Team Agreements

Slide 107

Slide 107 text

No content

Slide 108

Slide 108 text

Team Strategies Temporary leadership Narrator and scribe Swarm: Everybody on the problem Mob: One on the problem, everybody on feedback. Silent feedback only Split & Merge

Slide 109

Slide 109 text

Can you do it remotely?

Slide 110

Slide 110 text

Remote Software Design 🙂 Reduced loss compared to big Picture 🙂 The artefact can became long-lasting for frequent small sessions 🙁 Kick-off is less participatory 😒 More active facilitation is necessary 🙁 Risky on the human side

Slide 111

Slide 111 text

Takeaways

Slide 112

Slide 112 text

No content

Slide 113

Slide 113 text

is my pizza: You can add your toppings With the notable exception of database tables and pineapple

Slide 114

Slide 114 text

From vision to detail (and back) Big Picture Events Hot Spots, Systems, People Conflicts, Goals, Blockers, Boundaries Process Modelling Events + Policies, Commands, Read Models Value Proposition, Policies, Personas, Individual Goals Software Design Events + Aggregates Aggregates, Policies, Read Models, IDs

Slide 115

Slide 115 text

IN person or remote? Format Colocated Weakly remote Natively remote Big Picture In Person FTW IN Person Use gatherings! Or… Use your patience and do it remotely Process Modelling In Person In Person KickOff, then decide as you go. Multiple remote sessions Software Design In person, turn online after delivery In person Kick-Off, remote refinements Multiple frequent remote sessions Organization

Slide 116

Slide 116 text

Thank You!

Slide 117

Slide 117 text

References • www.eventstorming.com • EventStormers on Google Groups • https://groups.google.com/forum/#!forum/eventstorming • LeanPub books: • http://leanpub.com/introducing_eventstorming (still growing) • https://leanpub.com/ddd_first_15_years • Blog: • https://medium.com/@ziobrando • https://blog.avanscoperta.it • http://ziobrando.blogspot.com • Twitter: @ziobrando • Trainings & Workshop facilitation: info@avanscoperta.it • http://www.avanscoperta.it