Event Storming – warsztaty opisujące zdarzenia domenowe w projektach IT

Event Storming to stosunkowo młoda metoda warsztatowa, której celem jest szybkie i proste zobrazowanie i odkrywanie procesów zachodzących w projektach programistycznych realizowanych w zespole za pomocą zdarzeń. To, czym wyróżnia się od innych metod to brak wsparcia komputera, ponieważ opiera się na samoprzylepnych, różnokolorowych karteczkach. Event Storming została opracowana przez Alberto Brandoliniego w 2013 roku dla osób związanych z Domain Driven Design, a główną ideą tej metody jest zebranie zespołu osób, które wzajemnie mogą uczyć się od siebie poprzez zadawanie pytań i wymianę pomysłów, aby sprawnie modelować procesy biznesowe i precyzyjnie określić wymagania projektu.

Idea Event Storming

Warsztaty Event Storming zostały stworzone z myślą o osobach związanych Domain Driven Design. Polegają one nad opracowaniem tego, jak ma zachowywać się aplikacja po zaimplementowaniu. W przeciwieństwie do innych modeli programowania nie zawiera takich elementów jak opis interfejsu użytkownika czy obsługę bazy danych, a dotyczy samej wartości biznesowej, którą aplikacja ma w przyszłości osiągnąć. Ponieważ model ten zakłada jak najlepsze zrozumienie celu biznesowego aplikacji przez programistów, dlatego też komunikują się oni ze specjalistami, którzy posiadają obszerną wiedzę w tej dziedzinie. Taki specjalista to tzw. ekspert domenowy. A zatem Event Storming polega na opisie zdarzeń domenowych, czyli tego jak ma działać aplikacja np. zdarzeniem może być dodanie produktu do koszyka lub przekierowanie do banku w celu dokonania płatności. Każdy z uczestników warsztatu zapisuje swoje własne, niezależnie przygotowane karteczki na tablicy, dzięki czemu w szybki sposób można przekazać sporą wiedzę na temat tego, jako powinna zachowywać się podczas korzystania z niej przez użytkowników.
Karteczki o określonym kolorze odpowiadają za określone działania:
  • pomarańczowa – oznacza zdarzenie domeny odnoszące się do procesu biznesowego;
  • żółta – to osoba wykonująca polecenie zdarzenia;
  • fioletowa – określa proces biznesowy, czyli realizację zdarzenia;
  • niebieska- oznacza komendę, czyli plecenie, które wykonywane jest za pomocą widoku odpowiedzialnego za utworzenie zdarzenia domeny;
  • różowa – system zewnętrzny, który reprezentuje dostawcę usługi za pomocą, której realizowane jest zdarzenie np. bramka płatności;
  • zielona – widok, który umożliwia użytkownikowi interakcję z aplikacją w celu wykonania zdarzenia domeny.
Event storming warsztaty

Zalety warsztatów Event Storming

Po umieszczeniu karteczek na tablicy następuje ich wspólne omówienie i uporządkowanie przez zespół w taki sposób, aby jak najlepiej mogły opisać zdarzenia domeny spełniające cele biznesowe. Każde z tych zdarzeń może być omawiane indywidualnie, aby znaleźć najlepsze rozwiązanie dla danego procesu. Dzięki Event Storming zespół otrzymuje kompletny obraz celu biznesowego aplikacji, tego jak powinna być zaimplementowana i jak użytkownik powinien wchodzić z nią w interakcję. Pomaga to dokładnie zgłębić cały system informatyczny projektu, dzięki podziałowi na mniejsze części. Warsztaty te pozwalają w niezwykle szybki, a zarazem prosty sposób dokonać szczegółowej analizy bieżących problemów i znaleźć ich rozwiązanie dzięki burzy mózgów. Metoda ta stwarza także możliwości dodania nowych funkcjonalności do aplikacji oraz ukazuje możliwości jej rozwoju w przyszłości. Dzięki zaangażowaniu wszystkich członków zespołu, którzy mają odpowiednią wiedzę ze swojego obszaru, możliwa jest szyba i płynna wymiana informacji i spostrzeżeń. Rozpoczęcie warsztatów Event Storming jest niemalże natychmiastowe, ponieważ nie wymagają one wielu przygotowań. Wystarczy przedstawić wszystkim członkom zespołu, na czym polega warsztat, aby móc go rozpocząć. To, co uzyskujemy to dodatkowa oszczędność czasu, ponieważ jednoczesna praca wszystkich programistów i ekspertów z innych dziedzin sprawia, że warsztaty Event Storming dają bardzo zadowalające rezultaty.
Tomasz Kozon

Autor Tomasz Kozon

Zajmuję się projektowaniem aplikacji i serwisów internetowych. Posiadam wiedzę i doświadczenie z zakresu: programowania, Marketing Automation, kampanii w Social Media, SEO, SEM, kampanii mailingowych i copywrittingu. Obecnie kieruję własną spółką (software house/agencja marketingowa) i organizacją non-profit. Rozwijam start-upy, programuję i zarządzam projektami zintegrowanych kampanii marketingu w wielu kanałach on-line.

Więcej wpisów od Tomasz Kozon