The key to creating the highest quality software development and project success in the IT industry is a mutual understanding of all those involved in product development. Only how do you build a team of specialists, business analysts, user experience designers, developers and testers to communicate effectively? With help comes the Event Storming model.
This is a communication method that was developed by Albert Brandolini and refined by the domain-driven design community. The uniqueness of the workshop is that it brings all stakeholders together in one space, so Event Storming works well and eliminates misunderstandings between business insiders and software design specialists, such as applications. Let’s find out how a project works in a domain driven design (DDD) model using Event Storming.
Event Storming – how is it done?
Albert Brandolini’s model focuses on business processes and allows for team discovery and process modeling in collaborative workshops, for which the starting point is the so-called domain events. Unlike various complex methods, the individual sections are presented in a simple way and written on sticky notes, in a way that non-technical people can also understand the system. To organize an Event Storming session, all you need is:
- One room, no seating,
- participants from different departments,
- a blackboard or a strip of paper on the wall,
- different colored sticky notes.
However, this is the end of the theory. Let’s move on to discuss the various parts of Event Storming.
Proper execution of an Event Storming workshop – a set of best practices
Once all the workshop participants (technical experts and representatives of the client side) are present in a properly prepared room, you can conduct the session.
Phase 1 – Big Picture
The first stage of the workshop (Big Picture Event Storming) is pure brainstorming. The facilitator introduces the rules, after which participants write down certain business events on orange cards. The event cards should be formulated in the past tense and then taped on the wall. This lets you know the general context. However, on the basis of this information, which is not systematized in any way, one cannot expect a full understanding of the domain, so according to the principles of Event Storming, the next step should be to group and organize the events.
Phase 2 – Systematization
The second stage of the Event Storming workshop is to read the events and place them on a timeline in chronological order. The events are then divided into individual groups corresponding to a single business process, or use case.
At this stage, it is also necessary to use different colored slips of paper to distinguish the different elements of the system. Each color of card, should correspond to some specific information about the system:
- Yellow – additional comments on the topic,
- pink – ambiguities and problems,
- purple – external systems,
- blue smaller yellow cards – commands and actors,
- green – opportunities for development, additional functionality.
Of course, this is only one method of systematization. Event Storming allows for modifications. Brandolini himself encouraged experimentation and finding an approach that will allow the creation of a design that can be understood by all participants.
Phase 3 – Design Level Event Storming
At this stage, a target model is created, which is then subject to implementation into code. This requires the involvement of mainly technical people. The concept of aggregates, or larger groups that bring together several events, actors and commands, is also introduced. It is important to develop the aggregates to contain information about one specific functionality. An aggregate can thus be, for example, a user registration.
Event Storming for complex business domains
The blog entry allows only a brief description of the elements of Event Storming. You may want to experience this method to find out about its effectiveness. However, the necessary prerequisite for the best result is professional assistance with a facilitator, which you can count on from the experts of Da Vinci Studio. Feel free to contact us. We will be happy to organize a workshop for your team, adjusting its form to the needs of your organization.