Posts Tagged ‘exclusive event-based’

h1

Decyzje pod kontrolą lub poza

Marzec 4, 2013

Dzisiaj ponownie przybliżę temat tzw. bramek wyłączających (ang. exclusive gates), czyli takich, z których możliwe jest tylko jedno wyjście do dalszego procesu. Około rok temu, wskazywałem we wpisie o podejmowaniu decyzji w procesie, że mamy dwa rodzaje tych bramek: oparte o dane (ang. data-based) oraz oparte o zdarzenia (ang. event-based). Podany wtedy przykład nie podawał wyraźnie rozróżnienia między tymi bramkami. Dzisiaj postaram się podać lepszy przykład.

process_decisions_d

Załóżmy, że nadal mówimy o procesie przygotowania raportu. Otrzymaliśmy wniosek i analizujemy, czy mamy komplet danych i są one spójne. Posługujemy się danymi dostępnymi tu i teraz, lokalnie, bez angażowania innych osób, chcemy zrealizować zlecone zadanie. I to jest jest właśnie specyfika bramek opartych o dane (ang. exclusive data-based). Na powyższym diagramie w BPMN jest to pierwsza z bramek, występująca po czynności Określ parametry wniosku. Wszystkie elementy są pod kontrolą wykonującego czynność. Wiemy dokładnie jakie czynności zostaną wykonane dalej.

W sytuacji jednak, gdy dane okażą się niespójne lub zabraknie danej do parametryzacji oczekiwanego raportu, pojawia się konieczność kontaktu z odbiorcą raportu. W tym momencie, dalszy przebieg procesu jest poza naszą kontrolą. To, co się dalej wydarzy jest uzależnione od odbiorcy raportu. To jest charakterystyczne dla bramek opartych o zdarzenia (ang. exclusive event-based). Na powyższym diagramie w BPMN jest to druga bramka. W sumie wiemy co dalej możemy wykonać w przypadku różnych działań odbiorcy, ale sama jego decyzja jest niezależna od samego procesu.

Myślę, że powyższy przykład lepiej oddaje charakter tych dwóch bramek. Innym przykładem może być ten z wysyłką listu/wykonywaniem telefonu, a odbiorem przesyłki/odebraniem telefonu.

Reklamy
h1

Jak „podejmowane” są decyzje w procesie w BPMN?

Marzec 17, 2012

Niektóre sklepy komputerowe stosują praktykę, że podczas rozliczania transakcji weryfikują cenę produktu z wewnętrzną bazą/stroną internetową. Klient wybierając produkt na półce prosi o jego udostępnienie, a następnie decyduje się bądź nie na jego zakup. W takim sklepie mówiąc, że jest zainteresowany, może usłyszeć, że cena jest wyższa, niższa lub taka sama. Poniższy przykładowy diagram w BPMN prezentuje właśnie taki proces – jest to proces, którego rzeczywiście doświadczyłem. Pozostawiłem pewne elementy bez ostatecznego rozwiązania, ponieważ każdy mógłby zachować się inaczej, sklep mógłby postąpić inaczej. Nie będę wskazywał jak postąpiłem, nie jest to istotne z punktu widzenia tematu, który chcę poruszyć.

W trakcie takiego procesu mamy różne momenty decyzyjne, oznaczone przez znaki w kształcie rombów na diagramie. W tym wypadku zostały zastosowane elementy charakterystyczne na diagramów w BPMN. Takie sytuacje zakupowe są idealnym przykładem do prezentacji elementów decyzyjnych na procesie. W powyższym przykładzie obydwa zastosowane elementy – „z pięciokątem w środku” oraz „z krzyżykiem” – oznaczają przypadki, gdy tylko z jedna z dalszych ścieżek diagramu może zostać zastosowana. Są one wyłacząjące się (ang. exclusive).

Pierwszy z nich – „z krzyżykiem” – opiera się na weryfikacji warunku, sprawdzeniu wartości dla określonych danych (ang. exclusive data-based). W przykładzie następuje sprawdzenie warunku dotyczącego ceny (na diagramie specjalnie go nie umieściłem aby to omówić w treści). Klient sprawdza, czy zawiera się w kwocie, którą przeznaczył na zakup. Sprzedawca porównuje dwie ceny – cenę z spółki i cenę z systemu. W zależności od wyniku następują różne komunikaty.

Drugi z nich – „z pięciokątem w środku” dotyczy oczekiwania na zdarzenie innej osoby, klienta, jako wynik jego zachowania, zrealizowanych działań (ang. exclusive event-based). W niniejszym przykładzie jest to wynik analizy produktu przez Klienta. Tak naprawdę sprzedawca może jedynie czekać, ponieważ nie wie co sprawdza Klient i jaka będzie jego ostateczna decyzja. Oczekuje określone zdarzenia – chcę kupić lub rozmyśliłem się. Można by jeszcze dodać opcję – chciałbym zobaczyć podobne produkty albo wróci do początku procesu.