BPMN zdarzenia początkowe
Procesy biznesowe

Notacja BPMN zdarzenia początkowe

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.

Notacja BPMN symbole zdarzeń początkowych

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.

Notacja BPMN symbol zdarzenia początkowego bez wyzwalacza

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ć.

Notacja BPMN - Proces biznesowy z podprocesem rozwiniętym

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.

Notacja BPMN - Proces biznesowy - bramka równoległa rozgałęziająca i łącząca ścieżki procesu

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.

Notacja BPMN - symbol zdarzenia początkowego z wyzwalaczem Komunikat

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ą).

Proces biznesowy - rozpatrywanie wniosku kredytowego

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.

Notacja BPMN - symbol zdarzenia początkowego z wyzwalaczem Czasomierz

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.

Notacja BPMN - przykład procesu z wyzwalaczem Czasomierz

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).

Notacja BPMN - symbol zdarzenia początkowego z wyzwalaczem Warunek

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.

Notacja BPMN - przykład procesu z wyzwalaczem Warunek

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.

BPMN - symbol zdarzenia początkowego z wyzwalaczem Sygnał

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

Proces rozpoczynany zdarzeniem z wyzwalaczem Sygnał

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”.

BPMN - symbol zdarzenia początkowego z wyzwalaczem Złożone

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

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

BPMN - proces z wyzwalaczem Złożone

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

BPMN - model procesu z kilkoma zdarzeniami początkowymi

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”.

BPMN - symbol zdarzenia początkowego z wyzwalaczem Złożone równoległe

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.

BPMN - przykład procesu ze zdarzeniem Złożone równoległe

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

BPMN - przykład procesu kilka zdarzeń początkowych i bramka równoległa

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.

BPMN podproces zdarzeniowy komunikat

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”

Podproces zdarzeniowy z wykorzystaniem komunikatu

Czasomierz

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

BPMN podproces zdarzeniowy czasomierz

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”

BPMN przykład podprocesu zdarzeniowego ze zdarzeniem początkowym Czasomierz

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.

BPMN podproces zdarzeniowy Eskalacja

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”

BPMN przykład podprocesu zdarzeniowego ze zdarzeniem początkowym Eskalacja

Błąd

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

BPMN podproces zdarzeniowy Błąd

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”.

BPMN przykład podprocesu zdarzeniowego ze zdarzeniem początkowym Błąd

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.

BPMN podproces zdarzeniowy Kompensacja

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.

Podproces zdarzeniowy z wykorzystaniem kompensacji

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.

BPMN podproces zdarzeniowy Warunkowe

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”.

Podproces zdarzeniowy z wykorzystaniem zdarzenia warunkowego

Sygnał

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

BPMN podproces zdarzeniowy Sygnał

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”.

Podproces zdarzeniowy z wykorzystaniem zdarzenia Sygnał

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”.

BPMN podproces zdarzeniowy zdarzenie złożone

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.

Podproces zdarzeniowy z wykorzystaniem zdarzenia złożonego

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”.

BPMN podproces zdarzeniowy zdarzenie złożone równoległe

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ć.

Podproces zdarzeniowy z wykorzystaniem zdarzenia Złożone równoległe

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

Tomasz Majewski

Programista C#, VBA
Udostępnij wpis: udostępnij Facebook udostępnij Linkedin udostępnij e-mail

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

    Podobne artykuły z kategorii: Procesy biznesowe

    Może Cię zainteresować