Data: 23.06.2021

Bramki logiczne w notacji BPMN

BPMN bramki logiczne

Spis treści

Poznaj bramki logiczne, za pomocą których możesz rozgałęziać procesy w notacji BPMN.

Do rysowania procesów przedstawionych w artykule używam programu MS Visio.

Bramki logiczne w notacji BPMN służą do zaprezentowania, jakimi ścieżkami proces może się wykonać.

Oznaczamy je symbolem rombu.

W notacji BPMN możemy używać następujących bramek:

  • wykluczająca sterowana danymi (ze znacznikiem lub bez znacznika)
  • wykluczająca sterowana zdarzeniami
  • wykluczająca sterowana zdarzeniami rozpoczynająca proces
  • równoległa
  • równoległa sterowana zdarzeniami rozpoczynająca proces
  • niewykluczająca
  • złożona

BPMN bramki logiczne – koncepcja żetonu

Zrozumienie przepływu procesu i funkcjonowania bramek ułatwia nam pojęcie żetonu.

Żeton powstaje w momencie, gdy wyzwolone jest zdarzenie początkowe i rozpoczyna się proces. Wychodząc ze zdarzenia początkowego żeton płynie po strzałce przepływu sekwencji i aktywuje poszczególne elementy procesu. Gdy dotrze do końca procesu (do zdarzenia końcowego) ulega zniszczeniu, a dana instancja procesu się kończy.

Bramka wykluczająca sterowana danymi

W angielskiej wersji: Exclusive Gateway, XOR – Exclusive OR.

Bramkę tę możemy oznaczać za pomocą symbolu pustego rombu

Title

lub rombu ze znakiem X.

Title

Nie ma znaczenia, którego z symboli użyjemy. Ważna jest natomiast konsekwencja. Jeżeli zdecydujemy się oznaczać bramkę wykluczającą sterowaną danymi za pomocą pustego rombu, powinniśmy ją w taki sposób oznaczać w ramach całego procesu. Nie należy w ramach jednego procesu raz używać bramki ze znacznikiem a raz bez znacznika, gdyż pogarsza to czytelność procesu.

Żeton, po dotarciu do bramki wykluczającej sterowanej danymi, może popłynąć dalej wyłącznie jedną ze ścieżek wychodzących z bramki.

Jest to bramka sterowana danymi. Dlatego decyzja, którą ścieżką żeton popłynie podejmowana jest na podstawie posiadanych danych.

Przykład 1

Title

W przykładzie 1 mamy proces weryfikacji CV pod kątem formalnym. Zdarzeniem początkowym jest wpłynięcie CV. W pierwszym zadaniu procesu (Analiza CV) weryfikujemy, czy CV spełnia wymagania formalne. W wyniku sprawdzenia otrzymujemy informację (dane), że CV spełnia wymagania lub ich nie spełnia. Mając te dane poprowadzimy proces jedną z dwóch ścieżek:

  • jeśli CV spełnia wymagania, proces poprowadzony zostanie ścieżką oznaczoną „tak” do zadania „Przekazanie CV do dalszego etapu rekrutacji”
  • jeśli CV nie spełnia wymagań, proces poprowadzony zostanie ścieżką oznaczoną „nie” do zadania „Odrzucenie CV”

Proces może rozgałęziać się na bramce na dwie lub więcej ścieżek. Niezależnie od liczby ścieżek, w przypadku bramki wykluczającej, proces może się kontynuować tylko jedną z nich.

Bramka to miejsce, w którym rozgałęziamy proces na podstawie posiadanych danych. Nie jest miejscem procesu, w którym analizujemy dane i podejmujemy decyzję. Analiza i podjęcie decyzji następuje w zadaniu poprzedzającym bramkę.

Bramka wykluczająca sterowana danymi może występować jako bramka łącząca ścieżki przepływu. Bramka XOR łącząca ścieżki procesu odblokuje przepływ procesu bezpośrednio po tym, jak dopłynie do niej żeton z pierwszej z alternatywnych gałęzi.

Przykład 2

W przykładzie 2 używamy bramki zamykającej i dopiero po niej rysujemy zdarzenie końcowe.

Title

Przykład 3

Jedna ze ścieżek może być domyślna. Ścieżkę domyślną przekreślamy. Jest ona realizowana, jeśli nie został spełniony warunek żadnej z pozostałych ścieżek.

Title

W przykładzie 3:

  • proces rozpoczyna się zdarzeniem początkowym „Wpłynięcie wniosku kredytowego”
  • pierwszy krok procesu to zadanie „Analiza wniosku”, w którym sprawdzamy, czy wniosek jest poprawny i jaka jest kwota wnioskowanego kredytu. W zależności od informacji, które posiadamy, proces popłynie dalej jedną z następujących ścieżek:
  • jeśli wniosek jest poprawny i wnioskowana kwota kredytu jest równa lub przekracza 100 tys. złotych, żeton płynie ścieżką do zadania „Przekazanie do akceptacji dyrektora”
  • jeśli wniosek jest błędny, żeton płynie ścieżką do zadania „Odrzucenie wniosku”
  • jeśli wniosek jest poprawny i kwota kredytu mniejsza niż 100 tysięcy, żeton płynie domyślną ścieżką do zadania „Przekazanie do procesowania”

W przykładzie używamy bramki łączącej XOR, do której docierają 3 ścieżki. Proces będzie się kontynuował z bramki łączącej do zdarzenia końcowego po tym, jak do bramki łączącej spłynie pierwszy żeton z którejkolwiek ze ścieżek.

Bramka wykluczająca sterowana zdarzeniami

W angielskiej wersji: Exclusive Event-based gateway.

Bramkę wykluczającą sterowaną zdarzeniami oznaczamy następująco:

Title

Bramka wykluczająca sterowana zdarzeniami to miejsce, w którym rozgałęziamy proces na podstawie zdarzenia, które wystąpiło. Proces może kontynuować się tylko jedną ze ścieżek. Zdarzenie, które wystąpiło określa ścieżkę, którą proces będzie się kontynuował.

Zdarzenie to zwykle otrzymanie wiadomości, która determinuje, którą ścieżką proces będzie się kontynuował. Możemy używać innych rodzajów zdarzeń np. Czasomierza.

Z bramki muszą wychodzić co najmniej dwie sekwencje przepływu. Celem sekwencji przepływu wychodzących z bramki muszą być zdarzenia lub zadania odbioru (ang. Receive Tasks).

Zadania odbioru używane w konfiguracji Event Gateway nie mogą mieć żadnych dołączonych zdarzeń pośrednich.

Prawidłowe są tylko następujące wyzwalacze zdarzenia pośredniego: Komunikat, Czasomierz lub Sygnał.

Przykład 4

Title

W przykładzie 4:

  • proces rozpoczyna się zdarzeniem początkowym „Wpłynięcie wniosku kredytowego”
  • pierwszy krok procesu to zadanie „Prośba o uzupełnienie wniosku kredytowego”, którą wysyłamy do klienta. Sposób kontynuacji procesu zależy od tego, które ze zdarzeń wystąpi: odesłanie przez klienta uzupełnionego wniosku lub upłynięcie terminu, w którym wniosek powinien zostać uzupełniony
  • jeśli klient odeśle uzupełniony wniosek (wyzwalacz zdarzenia: komunikat), żeton popłynie ścieżką do zadania „Udzielenie kredytu”
  • jeśli klient nie odeśle wniosku w terminie 14 dni (wyzwalacz zdarzenia: czasomierz), żeton płynie ścieżką do zadania „Odrzucenie wniosku”

Zamiast zdarzenia pośredniego za bramką możemy użyć zadania odbioru. Poniżej przykład z zadaniem odbioru:

Title

Bramka wykluczająca sterowana zdarzeniami rozpoczynająca proces

W angielskiej wersji: Exclusive Event-based gateway – instantiate a process.

Oznaczamy ją następująco:

Title

Jest to bramka wykluczająca sterowana zdarzeniami, która rozpoczyna proces. Proces rozpoczyna się po wystąpieniu pierwszego ze zdarzeń. W zależności od tego, które ze zdarzeń wystąpi pierwsze, tą ścieżką popłynie żeton.

Przykład 5

Title

W przykładzie 5:

Proces rozpocznie się, jeśli wystąpi jedno z następujących zdarzeń:

  • wpłynięcie raportu sprzedażowego. Jeśli proces rozpocznie się od tego zdarzenia, żeton popłynie ścieżką do zadania „Analiza raportu”
  • zakończenie się miesiąca. Jeśli proces rozpocznie się od tego zdarzenia, żeton popłynie ścieżką do zadania „Organizacja spotkania zespołu”

Aby bramka zdarzeń mogła utworzyć instancję procesu, nie może mieć żadnych przychodzących przepływów sekwencji.

Bramka równoległa

W angielskiej wersji: Parallel Gateway, AND.

Bramkę równoległą oznaczamy następująco:

Title

Bramka równoległa tworzy równoległe ścieżki bez sprawdzania warunków. Każdy wychodzący przepływ sekwencji otrzymuje token po wykonaniu tej bramy.

Bramka równoległa oznacza, że wszystkie zadania muszą zostać wykonane, abyśmy mogli przejść do kolejnego kroku w procesie. Zadania mogą być wykonywane w tym samym czasie lub jedno po drugim. Kolejność wykonywania zadań nie ma tutaj znaczenia. Istotne jest tylko to, że każde z nich musi zostać ukończone, aby żeton mógł popłynąć dalej.

Przykład 6

Title

W przykładzie 6 otrzymujemy wniosek kredytowy, weryfikujemy go i udzielamy kredytu. Po podjęciu pozytywnej decyzji kredytowej, generowane są trzy żetony i proces płynie trzema ścieżkami:

  • ścieżka 1: otwarcie rachunku kredytowego
  • ścieżka 2: przygotowanie umowy
  • ścieżka 3: przygotowanie harmonogramu spłat

W przykładzie bramka równoległa łączy ścieżki procesu. Do kolejnego kroku procesu tj. „Wysłanie dokumentów do klienta” możemy przejść dopiero wtedy, gdy spłyną wszystkie żetony do bramki równoległej łączącej.

Żetony ze wszystkich ścieżek muszą spłynąć do bramki łączącej żeby proces mógł się dalej kontynuować.

Bramka równoległa sterowana zdarzeniami rozpoczynająca proces

W angielskiej wersji: Parallel Event-based Gateway – instantiate a process.

Bramkę tę oznaczamy następująco:

Title

W przypadku bramki równoległej pierwsze wyzwolone zdarzenie rozpoczyna instancję procesu. Inne zdarzenia nie zostają jednak wyłączone tylko oczekują. Powinny one zostać wyzwolone zanim proces będzie się mógł normalnie zakończyć.

Przykład 7

Title

W przykładzie 7 proces rozpocznie się dopiero wtedy, gdy wpłynie poprawny wniosek klienta lub wpłynie pozytywna ocena historii kredytowej klienta. Jedno i drugie zdarzenie musi jednak wystąpić, aby proces mógł się normalnie zakończyć.

Za bramką równoległą sterowaną zdarzeniami możemy użyć bramki łączącej, aby połączyć ścieżki procesu zanim token przejdzie do zadania „Udzielenie kredytu”.

Bramka niewykluczająca

W angielskiej wersji: Inclusive Gateway, OR.

Oznaczamy ją następująco:

Title

W przypadku bramki niewykluczającej każda ścieżka jest niezależna – żeton może popłynąć jedną ścieżką lub kilkoma ścieżkami lub nie popłynąć żadną ze ścieżek.

Proces powinien zostać zaprojektowany tak, aby żeton popłynął przynajmniej jedną ścieżką. Jedna ze ścieżek powinna zostać zaprojektowana jako domyślna.

Przykład 8

Title

W przykładzie 8 klient dokonuje rezerwacji.

  • proces rozpoczyna się zdarzeniem początkowym „Wpłynięcie rezerwacji”
  • w zadaniu „Sprawdzenie wybranych opcji” analizujemy, jakie opcje podczas rezerwacji klient wybrał. Żeton może popłynąć np.:
    • wszystkimi ścieżkami, jeśli klient zarezerwował pokój, wycieczki i samochód
    • ścieżką „Rezerwacja pokoju”, jeśli klient zarezerwował tylko pokój
    • ścieżkami „Rezerwacja pokoju” i „Wynajem samochodu”, jeśli klient zarezerwował pokój i samochód

Żeton popłynie każdą ze ścieżek, dla której warunek zostanie spełniony.

Bramka złożona

Bramkę złożoną oznaczamy następującym symbolem:

Title

Jest ona używana do obsłużenia sytuacji, których nie można obsłużyć za pomocą innych bramek. Jest to rzadko używana bramka i nie wszystkie systemy do modelowania procesów ją obsługują.

Zapraszamy na nasz kurs notacja BPMN, na którym poznasz kształty BPMN oraz nauczysz się modelować procesy biznesowe.

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

Polecane