The advantages of event stormingMar 17, 2021
Do you ever think that a business process is not running smoothly, but is it hard for you to find which part causes the problem? Or do all sorts of industry-specific technical terms cause you to struggle to map out your business processes so that third parties such as software developers can easily understand it as well?
Enter Event Storming. An engaging and quick way to bring the domain experts and specialists from different areas together in order to quickly explore complex business domains.
What is event-storming
Event storming is a workshop-based method to quickly find out what is happening in the domain of a software program. The technique brings all the project stakeholders together, both developers and non-technical users in order to explore complex business domains and learn from each other. Compared to other methods it is extremely lightweight and does not use a computer. The result is expressed in sticky notes of different colours on a wide wall. It was invented by Alberto Brandolini in the context of domain-driven-design (DDD). Event storming can be used for business process modelling and requirements engineering. The main idea is to bring software developers and domain experts together and learn from each other. To make this learning process easier, event storming is meant to be fun.
The 6 advantages of Event Storming
Event Storming supports discovery and group learning and it is a fun way to integrate teams that can have different perspectives on the same issue. Event Storming is simple to learn and apply successfully.
- Rapid: Event Storming reduces the time it takes to create a comprehensive business domain model. With this technique, you can map a business process in hours during a single workshop. So in one day you can achieve results that used to take weeks.
- Practical: Event Storming results in a fully behavioural model that can be quickly implemented and validated. Rather than leading to an abstract data modelling process, Event Storming develops a shared understanding of the problem being solved by discovering potential solutions in a quick and effective manner.
- Direct and Simple: Instead of using complex UML diagrams, Event Storming breaks the process down into simple terms that both technical and non-technical stakeholders can understand.
- Captivating: Event storming is an engaging, fun way to create a domain model. Due to the hands-on approach every participant is invited to share his or her knowledge of the domain. This leads to a great interaction and results in a more complete understanding of the process.
- Discussions: Because all stakeholders can join, Event Storming is an ideal way of starting a discussion to discover gaps, resolve the misunderstanding and develop new ideas and solutions. It brings together the power of domain experts and technical experts and leads to game-changing rich model of the domain.
Levels on which Event Storming can be used.
Event Storming is very versatile. No matter the complexity or type of domain you want to explore, event-storming will get you there. It will help you gain stepwise clarity about the domain, on different maturity levels and domain knowledge.
Three main levels of abstraction for Event Storming have been identified.
- Big picture: allowing you to explore the whole business line, looking for diverging interests and perspectives of the stakeholders. As a result, we get a large map of the group’s understanding of the business.
- Process modelling: where you model a single business process, from the beginning to the end, while ensuring you don't leave any room for ambiguity and clarify all the business rules.
- Software design: start designing your software, using building blocks from Domain-Driven Design and a reactive programming paradigm
Each level introduces new concepts, identifies problems and gets you closer to understanding the complete process. Each new concept gets its own colour or shape of sticky note, for quick and easy recognition on the modelling space.
You can always switch between the different levels. For example when a particular business process has been fully implemented or when you want to go a level higher for more overview.
Where can I Use Event Storming
Event Storming is proven to be an efficient technique for solving some of the most difficult phases of starting a new project. Because it is conducted in the form of a workshop, it automatically creates collaboration and can be excellent for understanding and mapping complex business domains.
There are many scenarios that can benefit from Event Storming. Examples of good use cases for this include:
- Improving existing outdated (legacy) software packages
- Analysis of existing value streams,
- Analysis of your current processes to determine bottlenecks or ideas for improvements,
- Mapping of complex processes
- Mapping a new business domain
Why Should I Use Event Storming?
Event Storming emphasizes accessibility. Because the events are placed on visible timelines, it is easy to think about the domain and it becomes clear which processes are important. Event Storming ensures that everyone involved in the business process can contribute to its improvement and contributes to the involvement of all parties.
So if you are looking for a fast way to gain clarity about all the processes in your business domain, while reducing information waste and engage all employees at the same time, Event Storming is the way to move forward.
Ben je benieuwd wat NForza voor je kan betekenen om meer grip te krijgen op je software ontwikkeling?