Kluczem do stworzenia najwyższej jakości tworzonego oprogramowania i sukcesu projektu w branży IT jest wzajemne zrozumienie wszystkich osób zaangażowanych w rozwój produkt. Tylko w jaki sposób zbudować zespół składający się ze specjalistów, analityków biznesowych, projektantów doświadczeń użytkownika, programistów i osoby zajmujące się testami, który będzie efektywnie się komunikował? Z pomocą przychodzi model Event Stormingu.
Jest to metoda komunikacji, którą opracował Albert Brandolini i która udoskonalona została przez społeczność projektową domain-driven design. Wyjątkowość warsztatu polega na tym, iż skupia wszystkich interesariuszy w jednej przestrzeni, dzięki czemu Event Storming sprawdza się w praktyce i pozwala wyeliminować nieporozumienia między osobami posiadającymi wiedzę biznesową a specjalistami od projektowania software, np. aplikacji. Przekonajmy się, jak przebiega praca nad projektem w modelu domain driven design (DDD) z wykorzystaniem Event Storming.
Event Storming – jak to się robi?
Model Alberta Brandoliniego koncentruje się na procesach biznesowych i pozwala na zespołowe odkrywanie i modelowanie procesów podczas wspólnych warsztatów, do których punktem wyjścia są tak zwane zdarzenia domenowe. W przeciwieństwie różnych złożonych metod poszczególne sekcje są przedstawione w prosty sposób i zapisane na karteczkach samoprzylepnych, w sposób umożliwiający zrozumienie systemu również osobom nietechnicznym. Aby zorganizować sesję Event Stormingu, potrzebujesz jedynie:
- jednej sali, bez miejsc siedzących,
- uczestników z różnych działów,
- tablicy lub paska papieru na ścianie,
- różnokolorowych karteczek samoprzylepnych.
Na tym jednak koniec teorii. Przejdźmy omówienia poszczególnych części Event Stormingu.
Prawidłowy przebieg warsztatu Event Stormingu – zbiór dobrych praktyk
Gdy wszyscy uczestnicy warsztatu (eksperci techniczni i przedstawiciele strony klienta) będą obecni w odpowiednio przygotowanym pomieszczeniu, możesz przeprowadzić sesję.
Etap 1 – Big Picture
Pierwszy etap warsztatów (Big Picture Event Storming) to czysta burza mózgów. Moderator przedstawia zasady, po czym uczestnicy zapisują na pomarańczowych karteczkach pewne zdarzenia biznesowe. Karteczki ze zdarzeniami powinny być formułowane w czasie przeszłym, a następnie przyklejone na ścianie. To pozwala poznać ogólny kontekst. Na podstawie tych informacji, które nie są w żaden sposób usystematyzowane, nie można jednak oczekiwać pełnego zrozumienia domeny, dlatego zgodnie z zasadami Event Stormingu, kolejnym krokiem powinno być zgrupowanie i uporządkowanie zdarzeń.
Etap 2 – Systematyzacja
- żółte – dodatkowe uwagi na dany temat,
- różowe – niejasności i problemy,
- fioletowe – zewnętrzne systemy,
- niebieskie mniejsze żółte karteczki – komendy i aktorzy,
- zielone – możliwości rozwoju, dodatkowe funkcjonalności.
Oczywiście jest to tylko jedna z metod systematyzacji. Event Storming pozwala na modyfikacje. Sam Brandolini zachęcał do eksperymentowania i znalezienia takiego podejścia, które umożliwi stworzenie projektu, zrozumiałego dla wszystkich uczestników.
Etap 3 – Design Level Event Storming
Na tym etapie powstaje docelowy model, który następnie podlega implementacji do kodu. Wymaga to zaangażowania głównie osób technicznych. Wprowadzane jest również pojęcie agregatów, czyli większych grup skupiających kilka zdarzeń, aktorów i komend. Istotne jest opracowanie zbiorów, które będą zawierać informacje o jednej, konkretnej funkcjonalności. Agregatem może być zatem np. rejestracja użytkownika.
Event Storming dla skomplikowanych domen biznesowych
Wpis na blogu pozwala jedynie na krótką charakterystykę elementów Event Stormingu. O jego skuteczności warto przekonać się, doświadczając tej metody. Warunkiem uzyskania najlepszego wyniku jest jednak profesjonalna pomoc przy moderacji, na którą możesz liczyć ze strony ekspertów Da Vinci Studio. Zapraszamy do kontaktu. Z przyjemnością zorganizujemy warsztaty dla Twojego zespołu, dopasowując ich formę do potrzeb Waszej organizacji.