Data: 12.08.2022

Zdarzenia początkowe w notacji BPMN

Notacja BPMN zdarzenia początkowe

Spis treści

W artykule przedstawiam zdarzenia początkowe, których używamy w notacji BPMN do modelowania procesów biznesowych.

W poniższej tabeli znajdziesz zestawienie wszystkich zdarzeń początkowych, których możemy używać w modelowaniu procesów biznesowych. Najbardziej popularne zdarzenia to Komunikat i Czasomierz.

Title

Oprócz zdarzeń początkowych model procesu biznesowego obejmuje dwa inne rodzaje zdarzeń:

  • zdarzenia pośrednie
  • zdarzenia końcowe

Specyfikacja BPMN za pomocą zdarzenia początkowego określa, w którym miejscu rozpocznie się przebieg procesu biznesowego. Oznaczamy je okręgiem z ciągłym, cienkim obramowaniem.

Title

Zdarzenie początkowe rozpoczyna przepływ procesu i nie może mieć żadnych przychodzących przepływów sekwencji.

Proces biznesowy może mieć więcej niż jeden poziom np. gdy zawiera podprocesy rozwinięte. Zdarzenia początkowego i końcowego używamy niezależnie dla każdego poziomu procesu.

W przykładzie poniżej jest proces udzielenia kredytu z podprocesem rozwiniętym „Skompletowanie umowy”. W podprocesie bramka równoległa rozgałęzia proces na dwie ścieżki. Obydwie muszą być spełnione, aby podproces mógł się zakończyć.

Title

Zdarzenia początkowe i końcowe nie są obowiązkowe w modelach procesów.

W notacji BPMN procesy biznesowe mogą być modelowane bez wykorzystania zdarzeń początkowych. Jeśli jednak proces zawiera zdarzenie końcowe, musi też zawierać zdarzenie początkowe i odwrotnie – jeśli stosowane jest zdarzenie początkowe, na zakończenie procesu używamy jednego lub większej liczby zdarzeń końcowych.

Przykład procesu ze zdarzeniem początkowym i końcowym.

Title

Zdarzenia początkowe mogą być używane dla następujących typów procesów:

  • procesy najwyższego poziomu (ang. top-level processes)
  • podprocesy (ang. sub-processes)
  • podprocesy sterowane zdarzeniami (ang. event sub-processes)

Zdarzenia początkowe dla procesów najwyższego poziomu

Zdarzenia początkowe dla procesów najwyższego poziomu mogą występować bez wyzwalacza (ang. None) lub mogą być wywoływane przez następujące wyzwalacze:

  • Komunikat (ang. Message)
  • Czasomierz (ang. Timer)
  • Warunek (ang. Conditional)
  • Sygnał (ang. Signal)
  • Złożone (ang. Multiple)
  • Równoległe złożone (ang. Parallel Multiple)

Brak wyzwalacza

Zdarzenia początkowe bez wyzwalacza oznaczamy pustym okręgiem narysowanym ciągłą, cienką linią.

Zdarzenie bez wyzwalacza umieszczone w diagramie najwyższego poziomu oznacza, że proces uruchamiany jest przez jego wykonawcę. Wykonawcami procesu mogą być ludzie lub systemy informatyczne.

Zdarzenie bez wyzwalacza umieszczone w diagramie poziomu podrzędnego np. w podprocesie, oznacza, że podproces zostanie uruchomiony natychmiast po dotarciu przepływu sekwencji do tego zdarzenia.

Zdarzenie początkowe z wyzwalaczem Komunikat

Zdarzenia początkowe wyzwolone za pomocą komunikatu oznaczamy okręgiem z symbolem koperty w środku.

Title

Wiadomość (komunikat) przychodzi od uczestników procesu i uruchamia proces.

W modelach procesów możemy wykorzystać obiekty danych. Są to elementy graficzne, za pomocą których możemy oznaczyć np. uczestnika procesu, który wysłał wiadomość. Łączymy go ze zdarzeniem za pomocą strzałki przepływu komunikatów (strzałka narysowana linią kreskowaną).

Title

Zdarzenie początkowe z wyzwalaczem Czasomierz

Używając czasomierza możemy zaznaczyć, że start procesu następuje w konkretnej dacie, o określonej godzinie lub w określonym cyklu np. w każdy poniedziałek o 9:00 rano. Symbol czasomierza to okrąg z zegarem w środku.

Title

Poniżej w przykładzie system codziennie o 18:00 pobiera aktualne dane z bazy, aktualizuje raporty i wysyła je mailem do odbiorców.

Title

Zdarzenie początkowe z wyzwalaczem Warunek

Proces jest uruchamiany gdy warunek staje się prawdziwy np. jeśli temperatura w serwerowni zrobi się powyżej 30 stopni uruchomi się proces schładzania.

Zdarzenie z wyzwalaczem Warunek może być wielokrotnie wywołane. Aby jednak zdarzenie mogło zostać ponownie wywołane, warunek musi stać się fałszywy i ponownie prawdziwy np. temperatura w serwerowni musi spaść poniżej 30 stopni (warunek fałszywy) i ponownie wzrosnąć powyżej 30 stopni (warunek prawdziwy).

Title

W przykładzie schemat zawiera następujące elementy:

  • zdarzenie z wyzwalaczem Warunek, które rozpoczyna proces – jeśli liczba produktów w systemie spadnie poniżej 10 wysyłany jest mail do magazyniera
  • zadania: Wysłanie maila do magazyniera i Weryfikacja stanu magazynu
  • bramka wykluczająca, na której rozgałęziamy proces w zależności od tego, czy ilość produktów w magazynie jest większa lub mniejsza od 10.

Title

Zdarzenie początkowe z wyzwalaczem Sygnał

Sygnał nadchodzi z innego procesu, który go nadał i uruchamia rozpoczęcie procesu.

Sygnał różni się od wiadomości (komunikatu) tym, że wiadomość nadawana jest do konkretnego odbiorcy. Sygnał natomiast nadawany jest do wielu odbiorców, którzy nie są określeni np. sygnałem jest informacja przez megafon skierowana do klientów centrum handlowego.

Jeden sygnał może rozpoczynać wiele procesów biznesowych.

Title

W przykładzie mamy proces, w którym:

  • sklep informuje Biuro Informacji o przygotowaniu loterii
  • Biuro Informacji przygotowuje i ogłasza komunikat – ma on formę sygnału, gdyż skierowany jest do wszystkich osób obecnych w centrum handlowym
  • klienci, którzy zareagują na sygnał zgłaszają się do Biura Informacji aby wziąć udział w loterii

Title

Zdarzenie początkowe z wyzwalaczem Złożone

Zdarzenie złożone oznacza, że istnieje wiele sposobów rozpoczęcia procesu. Tylko jeden z nich jest wymagany, aby proces się rozpoczął.

W programie MS Visio zdarzenie to występuje pod nazwą „Wielokrotne”.

Title

W przykładzie proces się rozpocznie, jeśli wystąpi jedna z trzech sytuacji:

  • rezygnacja klienta z polisy lub
  • sprzedaż samochodu lub
  • kradzież samochodu

Title

Model tego procesu możemy narysować z wykorzystaniem trzech zdarzeń początkowych zamiast wyzwalacza Złożone:

Title

Zdarzenie początkowe z wyzwalaczem Złożone równoległe

Zdarzenie złożone równoległe oznacza, że proces posiada wiele wyzwalaczy i każdy z nich musi zostać uruchomiony, aby instancja procesu się rozpoczęła.

W programie MS Visio zdarzenie to występuje pod nazwą „Wiele równoległych”.

Title

W przykładzie kandydat ubiegający się o pracę musi znać angielski, Excela i mieć rok doświadczenia, aby zostać zaproszonym na rozmowę i aby rozpoczął się dla niego proces rekrutacji.

Title

Proces ten możemy narysować używając bramki równoległej:

Title

Zdarzenia początkowe dla podprocesu

Dla podprocesu używamy tylko zdarzenia początkowego bez symbolu wyzwalacza (pusty okrąg).

Inne typy wyzwalaczy nie są używane, gdyż dla podprocesu wyzwalaczem jest przepływ sekwencji z procesu nadrzędnego.

Zdarzenia początkowe dla podprocesów zdarzeniowych

Zdarzenie początkowe może również zainicjować podproces sterowany zdarzeniami (ang. Event Sub-Process). Może ono przerywać bieg procesu głównego lub go nie przerywać. Linia ciągła okręgu oznacza, że zdarzenie przerywa bieg procesu. Linia kreskowana oznacza, że zdarzenie nie przerywa biegu procesu.

Podproces zdarzeniowy:

  • nie występuje w głównym przebiegu przetwarzania
  • może mieć on tylko jedno zdarzenie początkowe
  • jest używany do obsłużenia jakiegoś zdarzenia, które wystąpi

Dla podprocesów sterowanych zdarzeniami możemy używać tych samych typów zdarzeń, których używamy w przypadku zdarzeń granicznych.

Komunikat

Komunikat oznaczamy kopertą w środku okręgu.

Title

W przykładzie otrzymujemy wniosek o założenie lokaty. Na etapie procesowania wniosku mogą wystąpić następujące zdarzenia pośrednie:

  • rezygnacja klienta z lokaty – zdarzenie to przerywa proces i token przechodzi do podprocesu „Rezygnacja z lokaty”
  • zmiana przez klienta strategii inwestycyjnej – zdarzenie to nie przerywa procesu, obsłużone zostaje podprocesem „Lokata – zmiana strategii”

Title

Czasomierz

Czasomierz oznaczamy za pomocą zegara w środku okręgu.

Title

W przykładzie otrzymujemy zlecenie przygotowania raportów. W trakcie aktualizacji danych w bazie, mogą wystąpić następujące zdarzenia pośrednie:

  • o godzinie 15:00 baza zostanie automatycznie wyłączona – zdarzenie to obsłużone jest podprocesem zdarzeniowym „Wyłączenie bazy”
  • o godzinie 12:00 mogą uruchomić się automatycznie importy nowych danych – importy nie przerywają procesu aktualizacji bazy. Zdarzenie to obsłużone jest podprocesem „Nowe dane”

Title

Eskalacja

Zdarzenia eskalacji używamy, jeśli zaistnieje sytuacja, która uniemożliwia ukończenie procesu np. jeśli pracownik nie wykona zadania we wskazanym terminie, uruchamiana zostaje eskalacja i zadanie zostaje przekazane do innej osoby.

Domyślnie eskalacja nie przerywa przebiegu procesu. Specyfikacja BPMN dopuszcza jednak używanie eskalacji do przerwania procesu.

Title

W przykładzie mamy proces zamówienia na rower. W trakcie montażu roweru mogą zaistnieć następujące zdarzenia pośrednie wywołujące eskalację:

  • brak części w sklepie i w magazynie – zdarzenie to przerywa proces – nie możemy zrealizować montażu, gdyż nie mamy możliwości zamówienia potrzebnych części. Zdarzenie to obsłużone jest podprocesem zdarzeniowym „Anulowanie zamówienia”
  • brak części w sklepie – zdarzenie to nie przerywa procesu – możemy zrealizować montaż po tym jak zamówimy części z magazynu. Zdarzenie to obsłużone jest podprocesem zdarzeniowym „Zamówienie części z magazynu”

Title

Błąd

Podproces zdarzenia z wyzwalaczem Błąd zawsze przerywa zawierający go proces główny.

Title

W przykładzie mamy proces aktualizacji raportów. W trakcie aktualizacji bazy może pojawić się zdarzenie pośrednie „Błąd serwera”, które powoduje zamknięcie bazy. Proces zostaje wstrzymany, a zdarzenie pośrednie obsłużone jest podprocesem zdarzeniowym „Błąd serwera bazy”.

Title

Kompensacja

Zdarzenia kompensacji używamy tylko do uruchomienia wbudowanego podprocesu sterowanego zdarzeniami. Zdarzenia początkowego kompensacji nie używamy w procesie najwyższego poziomu.

Zdarzenie to jest wywoływane, kiedy pojawi się konieczność skompensowania zrealizowanych czynności.

Kompensacja nie przerywa procesu. Proces musi zostać zakończony przed uruchomieniem zdarzenia kompensacji, gdyż kompensacja wycofuje zadania, które już zostały zrealizowane.

Title

W przykładzie mamy proces, w którym rezerwujemy bilety lotnicze, hotel i samochód. Do każdego zadania przypisane jest zdarzenie pośrednie kompensacji i zadanie odwracające wykonaną czynność.

W podprocesie zdarzeniowym „Anulowanie podróży” poszczególne zadania są wycofywane i kompensowane.

Title

Warunkowe

Zdarzenie warunkowe zachodzi, gdy zostanie spełniony określony warunek np. jeśli podczas importu danych do bazy pojawi się błąd, plik którego nie można zaimportować jest pomijany i wysyłany jest komunikat do administratora.

Title

W przykładzie uruchamiamy importy do bazy. Jeśli w bazie nie ma miejsca i nie ma możliwości powiększenia bazy, dane nie zostaną zapisane. Sytuacja ta obsłużona jest podprocesem zdarzeniowym „Anulowanie importów”.

Jeśli bazę można powiększyć dane zostaną zapisane. Sytuacja ta obsłużona jest podprocesem zdarzeniowym „Rozszerzenie bazy”.

Title

Sygnał

Sygnał jest komunikatem skierowanym do nieokreślonych osób. Konkretny odbiorca sygnału nie jest określony.

Title

W przykładzie mamy proces sprzedaży funduszy inwestycyjnych dla pracowników i dwa zdarzenia pośrednie:

  • zdarzenie pośrednie z wyzwalaczem sygnał w głównym przebiegu procesu „Ogłoszenie sprzedaży funduszy” – wysyłamy sygnał i ogłaszamy dla wszystkich pracowników sprzedaż funduszy. Zdarzenie to nie przerywa przebiegu procesu i jest ono obsłużone podprocesem zdarzeniowym „Wybór funduszu”.
  • zdarzenie pośrednie krawędziowe – sygnał, za pomocą którego ogłaszamy wstrzymanie procesu sprzedaży. Zdarzenie to przerywa proces i jest obsłużone podprocesem zdarzeniowym „Anulowanie akcji sprzedaży”.

Title

Zdarzenie złożone

W przypadku zdarzenia złożonego istnieją różne sposoby uruchomienia podprocesu sterowanego zdarzeniami. Do uruchomienia podprocesu wymagane jest wystąpienie tylko jednego ze zdarzeń.

W programie MS Visio zdarzenie złożone występuje pod nazwą „Wielokrotne”.

Title

W przykładzie mamy proces zakupu samochodu. Do granicy zadania „Wybór samochodu” dołączone są dwa złożone zdarzenia pośrednie.

Jedno ze zdarzeń przerywa proces, gdyż w przypadku wybranego auta ani ABS ani klimatyzacja nie są dostępne. Drugie zdarzenie pośrednie procesu nie przerywa, gdyż asystent parkowania lub asystent pasa mogą zostać dokupione.

Title

Zdarzenie złożone równoległe

Zdarzenie złożone równoległe wskazuje, że istnieje wiele sposobów wyzwalania podprocesu zdarzenia. Wszystkie z nich są wymagane, aby rozpocząć podproces.

W programie MS Visio zdarzenie złożone równoległe występuje pod nazwą „Wiele równoległych”.

Title

W przykładzie mamy proces zakupu samochodu. Do zadania „Wybór samochodu” dołączone są dwa zdarzenia pośrednie. Jedno z nich przerywa proces, gdyż opcja kupienia odtwarzacza CD nie jest dostępna. Drugie zdarzenie nie przerywa procesu, gdyż zarówno asystenta parkowania jak i asystenta pasa można dokupić.

Title

Jak zawsze zapraszam do dzielenia się uwagami. Chętnie rozszerzę artykuł o dodatkowe informacje.

Ewa Barbara Lelusz
Ewa Barbara Lelusz
Analityk biznesowy
Udostępnij wpis:udostępnij Facebookudostępnij Linkedinudostępnij e-mail

Polecane