Temat: Podprocesy - jednostki(pools) oraz tory
Łukasz Nieśpielak:
Pierwszy diagram przedstawione przeze mnie poprzednio jest procesem publicznym - diagram numer jeden jest nazywanym błednie :) "rodzicem" a drugi jako podproces o nazwie "Realizacja zamówienia STB" jako "dziecko". Jak dobrze rozumiem procesy publiczne to procesy w których przedstawiane są "poole" (pytanie o liczbę mnogą takich pooli zewnętrznych)
zewnętrzne - czyli aktorzy\obiekty spoza modelowanego obiektu głównego oraz
wewnętrzne - główny aktor\obiekt dla którego jest modelowany proces
Proces w BPMN - BPMN 2.0 - 10.:
"A Process describes a sequence or flow of Activities in an organization with the objective of carrying out work. In BPMN a Process is depicted as a graph of Flow Elements, which are a set of Activities, Events, Gateways, and Sequence Flows that define finite execution semantics (see Figure 10.1)."
Proces publiczny w BPMN 2.0 - 7.1.1.:
"A public Process represents the interactions between a private Business Process and another Process or Participant (see Figure 7.2). Only those Activities that are used to communicate to the other Participant(s) are included in the public Process. All other “internal” Activities of the private Business Process are not shown in the public Process."
Zatem 1 diagram przedstawia dwa procesy prywatne, przy czym proces w Partycji ISP (Pool) może być również publiczny (gdy usuniemy element Pool), ponieważ wszystkie jego czynności użyte zostały do pokazania wymiany komunikatów z innym procesem.
2 diagram przedstawia dwa procesy prywatne , przy czym proces w Partycji Firma zewnetrzna (Pool) może być również publiczny (gdy usuniemy element Pool), ponieważ wszystkie jego czynności użyte zostały do pokazania wymiany komunikatów z innym procesem.
W przypadku procesów prywatnych (w których nie mamy zewnętrznych pooli) możemy nie używać pooli, a w przypadku uszczegółowienia procesu używamy "lanes" - torów.
Partycji (Pool) możemy nie używać na diagramie tylko wtedy, gdy w danym procesie występuje tylko jeden element Pool.
Na przedstawionych przez mnie diagramach - diagram nr. 1 chciałem opisać moją organizację oraz ISP jako zewnętrzną organizację (proces publiczny). Diagram numer 2 przedstawia podproces "Realizacja zamówienia STB" (proces prywatny[podproces] - występuje firma zewnętrzna, klient oraz moja organizacja).
Drugi diagram nie jest tożsamy z elementem Sub-Process "Realizacja zamówienia STB" z pierwszego diagramu, gdyż w elemencie graficznym Sub-Process nie mogą występować Partycje (elementy Pool).
Ty natomiast chciałeś uszczegółowić ten fragment diagramu, zatem prawidłową konstrukcją byłoby użycie Intermediate Link Event Throw and Catch, zamiast uzycie elementu Sub-Process "Realizacja zamówienia STB".
Ale wiele edytorów BPMN umożliwia ten sposób budowania diagramów (kliknięcie na elemencie Sub-Process) i wydawałoby się, że to chodzi o budowanie hierarchii procesów - podprocesów (rozwijanie elementu graficznego Sub-Process).
Ten sposób budowy diagramów pomaga tylko do łączenia ze sobą procesów z innymi elementami BPMN, a prawidłowy element Sub-Process nie umożliwia modelowania w nim Partycji (elementów Pool, czy Line).