Typy podprocesów

Podproces jest opcją do obudowywania logicznie powiązanych kroków w obrębie procesu nadrzędnego. Kroki w podprocesie mogą uzyskiwać bezpośredni dostęp do obiektów biznesowych (zmiennych) z poziomu procesu nadrzędnego. Nie jest wymagane odwzorowanie danych. Jednak w przeciwieństwie do procesu połączonego dostęp do podprocesu oraz możliwość tworzenia jego instancji są możliwe tylko z poziomu procesu nadrzędnego i nie ma możliwości wielokrotnego wykorzystywania podprocesu przez inne procesy ani podprocesy.

Podproces reprezentuje kolekcję logicznie powiązanych kroków zawartych w procesie nadrzędnym. Podproces można wyświetlać jako pojedyncze działanie, co pozwala uzyskać uproszczony, ogólny widok procesu nadrzędnego, ale można również eksplorować podproces, aby uzyskać bardziej szczegółowy widok jego zawartości.

Podproces może być osadzony w innym podprocesie. Aby eksplorować zwinięty podproces i wyświetlić jego zawartość, należy dwukrotnie kliknąć działanie podprocesu w procesie nadrzędnym. Aby wrócić do procesu nadrzędnego z poziomu podprocesu lub podprocesu zdarzenia, należy użyć paska nawigacyjnego w lewym górnym rogu diagramu. Aby wrócić do procesu nadrzędnego z poziomu procesu połączonego, należy użyć menu nad kanwą.

Podprocesy mogą zawierać tory procesu, które są różne od tych w procesie nadrzędnym. Działania w podprocesie mogą być na przykład wykonywane przez inny zbiór uczestników niż w przypadku działań w procesie nadrzędnym.

Podobnie jak w przypadku innych działań, podprocesy można skonfigurować tak, aby były uruchamiane wielokrotnie w ramach wykonywania procesu nadrzędnego. W tym celu należy skonfigurować zachowanie powtarzalne elementu działania podprocesu w procesie nadrzędnym.

Poniżej opisano typy podprocesów, które można modelować w ramach procesu, oraz ich charakterystyki.

Tabela 1. Typy podprocesów, które można modelować w procesie
Implementacja Opis Charakterystyka Zasięg zmiennych
Podproces Podproces jednorazowego użytku istniejący tylko wewnątrz procesu nadrzędnego. Każdy podproces musi zawierać co najmniej jedno zdarzenie początkowe z typem implementacji Brak.

Nazwy działań muszą być unikalne w odniesieniu do działań procesu głównego oraz wszystkich innych podprocesów i podprocesów zdarzeń podlegających temu samemu procesowi głównemu.

Dziedziczy zmienne z procesu nadrzędnego i może zawierać lokalne zmienne prywatne, widoczne tylko wewnątrz podprocesu.

Nazwy zmiennych zadeklarowane w podprocesie nie mogą być takie same, jak nazwy zmiennych zadeklarowane w jakimkolwiek jego procesie nadrzędnym. Jeśli istnieje wiele warstw osadzania, w których podprocesy są zawarte w innych podprocesach, nazwy zmiennych muszą być unikalne w ramach całej hierarchii podprocesów.

Proces połączony Wywołanie innego procesu wielokrotnego użytku. Proces wywołany przez połączoną czynność procesową może zawierać wiele zdarzeń początkowych, ale musi zawierać co najmniej jedno zdarzenie początkowe z typem implementacji Brak. Dane zmiennych są lokalne dla każdego procesu, dlatego też do przekazania danych do i z procesu połączonego wymagane jest odwzorowanie danych.
Podproces zdarzenia Wyspecjalizowany typ podprocesu jednorazowego użytku, który nie stanowi części normalnego przepływu sekwencji procesu nadrzędnego i który może wystąpić dowolną liczbę razy podczas wykonywania procesu nadrzędnego. Musi zawierać pojedyncze zdarzenie początkowe jednego z następujących typów:
  • Licznik czasu
  • Komunikat
  • Błąd

Wykonywanie podprocesu zdarzenia może przerwać proces nadrzędny, ale mogą być one również wykonywane równolegle.

Nazwy działań muszą być unikalne w odniesieniu do działań procesu głównego oraz wszystkich innych podprocesów i podprocesów zdarzeń podlegających temu samemu procesowi głównemu.

Zdarzenia graniczne nie są obsługiwane w podprocesie zdarzenia.

Dziedziczy zmienne z procesu nadrzędnego i może zawierać lokalne zmienne prywatne, widoczne tylko wewnątrz podprocesu.

Nazwy zmiennych zadeklarowane w podprocesie zdarzenia nie mogą być takie same, jak nazwy zmiennych zadeklarowane w jakimkolwiek jego procesie nadrzędnym. Jeśli istnieje wiele warstw osadzania, w których podprocesy zdarzeń są zawarte w innych podprocesach, nazwy zmiennych muszą być unikalne w ramach całej hierarchii podprocesów.