Event Storming — innovation in IT projects

11/02/2019

The first association brought to mind by the term “Event Storming” is a well-known method of generating ideas in a group, i.e. “brainstorming”. Although you can find several features common to both terms (group meeting, creative nature of activities), the difference lies in their purpose and use.

First and foremost, Event Storming is a tool for gaining knowledge and understanding the essence of a given business. It is particularly helpful when there is a need to understand an innovative or unusual domain that does not fit into standard business archetypes.

How does Event Storming work in practice?

To answer this question, we will use a practical example of improving the work of a “coffee cooperative” associating coffee lovers working in one of the branches of our company. It’s domain includes shopping, monitoring and handling consumption of raw materials (coffee, milk, sugar), registration of people, orders and subscriptions for coffee preparation (standing orders with specified parameters including absence of subscribers), maintenance and repair of equipment, cost allocation and individual settlements of members of the cooperative (payments and withdrawals). Colleagues who asked us for help (Client) expressed their desire to do away with manual paperwork and abandon tedious calculations in Excel sheets in favor of dedicated software automating these activities. Instead of traditional business analysis (e.g. conducting extended interviews with various business representatives or monitoring their daily work) we proposed the organization of Event Storming workshops.

We invited Client’s domain experts, analysts, developers and moderators. Open space devoid of tables and chairs, a view of rows of colorful sticky notes and a long paper roll on the wall encouraged people to work together.

We started by getting familiar with the general characteristics of business activities of the cooperative, then we asked our experts to write down all the important facts from their field on orange sticky notes and to put them in chronological order. In accordance with good practices of Event Storming, we wrote down the events in past tense, e.g. “Subscription added”, “Package sent”. It facilitates the process of recalling specific, significant events regarding the business process.

Gathering crucial experts and analysts in one place and time has created an opportunity to harmonize the meanings of concepts used and the course of business process so that everyone understands them in the same way. The work of experts was accompanied by numerous questions of developers and analysts, as a result of which all participants interpreted the language and concepts used by the Client in the same way. With this approach, at the very start of the design process, we introduced the so called ubiquitous language. The meeting moderators ensured that the transferred knowledge was consistent and complete, helping domain experts to focus attention on the order of events, real examples and circumstances of events. As a result of the first session of the workshop, a set of chronologically organized domain events was created.

After a break, we asked our domain experts to match proper activities and people to the set of events on the wall.  This is how a set of potential actors (i.e. individuals performing various activities in this process) and activities (system commands) has been created. The next notes used by experts to complete the model concerned information required to perform the activity and crucial business rules on which the course of business events depends.

Event Storming altkom

The final stage of the work consisted in grouping the events and gathering them around groups of data (aggregates), the processing of which cannot be separated in time (transaction boundaries). This allowed us to get structured information about the domain and the system that form a good and understandable by everyone basis for creating a project model in accordance with Domain Driven Design. In the next step, the effects of work were detailed using the User Story Mapping and User Journey techniques, resulting in material for designing a modern architectural solution.

Event Storming timelapse

 

How do participants perceive the workshops?

“I especially like the dynamics and mobilization of the participants,” summarizes Paweł, Client’s domain expert. “I think that this form allows to effectively transfer knowledge, and thanks to the lively discussion, it helps to maintain high concentration level for longer,” he adds.

Kamil, an architect present at the workshop, said: “A well done Event Storming has a good chance to end at the level that allows starting the creation of prototype.” Thanks to this, it is possible to start working on the domain model and implementation without detailed documentation of all the rules. As a result, it is possible to quickly present a working example to the client and obtain valuable feedback. “In this way, we implement Agile principles better.”

Robert, our developer, was also very enthusiastic about the method:  “Event Storming allows you to quickly recognize and understand the domain. It naturally supports DDD, allows decomposing the domain by conducting the process of analysis / modeling starting with vision, through subsequent stages of detailing, ending with tactical patterns that are represented in the code. It supports designing  event-driven and loosely-coupled architectures, in particular the microservice architecture. It also supports the creation of evolutionary architecture. It uses a language that is understandable by everyone and with the use of informal notation allows anyone to be added to the discussion and include everything in the model.”

According to Artur, an experienced system analyst, “Event Storming facilitates, or even forces establishing a common understanding of concepts and operations as well as their meaning by business, analysts and developers, quick discovery of inconsistencies, duplicates and lack of knowledge / open issues. Using sticky notes visualizes operations on requirements (parking, deleting, linking). This form requires extensive involvement of all participants and allows to easily detect lack of it.”

Summary

Event Storming is a lightweight method that does not require a lot of time and resources, thanks to which we can build a coherent, commonly understood and accepted image of the business domain. Such approach minimizes later issues resulting from misunderstanding between people involved in the IT project and saves a lot of resources and time at later stages of delivering the solution. Unequivocally positive experiences and flattering opinions regarding Event Storming from a large group of IT professionals are the best recommendation for using this method in the software development process.

Author: Hubert Jakubiec, Analyst in Altkom Software & Consulting

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

 

Watch for free

Enter your contact details to receive a link to the recording:

I voluntarily consent to the processing of my personal data for the purposes of the application process (show more) by Altkom Experts sp. z o.o. and Altkom Software & Consulting sp. z o.o. (51 Chłodna Street, 00-867 Warsaw), in accordance with Regulation 2016/679 of the European Parliament and of the Council of 27 April 2016 on the protection of individuals with regard to the processing of personal data and on the free movement of such data ("RoDO"). I am aware that providing the above personal data is voluntary, but necessary to handle the request, and that I have the right to access the content of my data and the possibility of correcting it, and that my consent may be revoked at any time. Please contact the Altkom Data Protection Officer: iodo@altkom.pl.

I voluntarily consent to the processing of my personal data for marketing purposes (show more)by Altkom Experts sp. z o.o. and Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warsaw) and receiving commercial information by electronic means to the e-mail address and telephone number provided by me, in accordance with Regulation 2016/679 of the European Parliament and of the Council of 27 April 2016 on the protection of individuals with regard to the processing of personal data and on the free movement of such data ("RODO"), and the Act of 18 July 2002 on the provision of electronic services. I am aware that providing the above personal data is voluntary and that I have the right to access and correct my data and that my consent may be revoked at any time. Please contact the Altkom Data Protection Officer: iodo@altkom.pl.

 

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

 

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

 

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl