BizAgi Studio czesc 1 Definiowanie procesu w notacji BPMN

Instytut Systemów Informatycznych, Wydział Cybernetyki, Wojskowa Akademia Techniczna

Paweł Mieteń, Jarosław Koszela

Wprowadzenie

BizAgi Studio jest środowiskiem, które przekształca procesy zamodelowane w notacji BPMN do aplikacji bez konieczności programowania. BizAgi oferuje zestaw nazrzędzi do graficznego projektowania procesu, tworzenia modelu danych oraz definiowania reguł biznesowych.

Poniższy diagram przedstawia kolejne kroki składające się na cykl tworzenia aplikacji:

Rysunek . Cykl tworzenia aplikacji

Definiowanie procesu przy użyciu notacji BPMN

Aby rozpocząć projektowanie procesu należy uruchomić narzędzie BizAgi Studio i następnie utworzyć nowy projekt.

Rysunek . Tworzenie nowego projektu (krok 1)

Na pierwszym ekranie należy wybrać opcję New.

Rysunek . Tworzenie nowego projektu (krok 2)

Kolejnym krokiem jest nadanie nazwy projektu, w naszym przypadku będzie to TutorialBizAgi.

Rysunek . Tworzenie nowego projektu (krok 3)

Ostatnim etapem tworzenia projektu jest automatyczne skonfigurowanie projektu przez narzędzie, oraz utworzenie bazy danych, w której będzie zapisywany stan naszego projektu. BizAgi Studio utworzy bazę danych o nazwie TutorialBizAgi.

Po utworzeniu projektu, zostanie otwarte główne okno narzędzia:

Rysunek . Główne okno narzędzia BiaAgi Studio

Tworząc aplikacje przy użyciu BizAgi Studio, rozpoczynamy pracę od zdefiniowania procesu. W tym celu wybieramy opcję New Process.

Rysunek . Tworzenie nowego procesu

W pole „Proces Name” wpisujemy nazwę procesu. W naszym przypadku będzie to „Składanie wniosku o poprawę egzaminu”.

Rysunek . BizAgi Process Modeler

Tworzenie procesu odbywa się w zintegrowanym narzędziu o nazwie „BizAgi Process Modeler”.

Po lewej stronie okna mamy paletę, w której znajdują się elementy, z których budujemy Proces.

W modelowanym procesie wyodrębnimy cztery role: student, dziekanat, dziekan i księgowość. W związku z tym z wcześniej opisanej palety na nasz diagram przenosimy czterokrotnie ikonkę „Line” i ją upuszczamy. Każdy tor nazywamy zgodnie z rolami. Czynimy to przez dwuklik na nazwie lub na kliknięciu na nazwę i wpisaniu nowej nazwy w okienku „Element Properties” na dole głównego okna. Druga metod umożliwia wpisanie polskich znaków. W analogiczny sposób zmieniamy nazwę każdemu innemu elementowi na diagramie.

Rysunek . Zdefiniowanie torów

Kolejnym krokiem jest wyodrębnienie etapów procesu, tak zwanych kamieni milowych. Do tego celu użyjemy elementu „Milestone”. Trzy krotnie przeciągamy go na diagram procesu i odpowiednio ustawiamy nazwy: przyjmowanie wniosku, dokonanie wpłaty, odbiór dokumentów.

Rysunek . Zdefiniowanie torów i kamieni milowych

Proces będzie inicjowany przez studenta, a więc element „Start event” umieszczamy w torze studenta w pierwszym etapie. Jego pierwszym zadaniem będzie złożenie wniosku, w związku z tym obok elementu startowego umieszczamy „Task” i nazywamy go odpowiednio. Oba elementy łączymy elementem „Sequence Flow”, również przeciągniętym z lewego panelu.

Rysunek . Rozpoczęcie procesu

System daje inny sposób dodawania nowych elementów do procesu. A mianowicie chcąc dodać kolejny element do przepływu, połączony elementem „Sequence Flow” należy kliknąć na obiekt, z którego ma wychodzić strzałka. W tym momencie pojawią się elementy, które mogą być następnymi w procesie. Należy chwycić odpowiedni i umieścić go w dowolnym miejscu.

Rysunek . Element "Start event" w trybie tworzenia następnego elementu

Rysunek . Element "Task" w trybie tworzenia następnego elementu

Jak widać drugi sposób jest znacznie szybszy i wygodniejszy.

Pierwszy etap procesu wygląda następująco:

Rysunek . Przyjmowanie wniosku - pierwszy etap procesu

Powyższy proces możemy opisać słownie w następujący sposób:

  1. Student składa wniosek o poprawę egzaminu

  2. Dziekanat poobiera dane o studencie z serwisu zewnętrznego

  3. Dziekanat decyduje czy wniosek jest prawidłowo złożony i czy student spełni warunki formalne

    1. Jeśli student definitywnie nie spełnia warunków formalnych to wniosek zostaje odrzucony oraz wygenerowany zostaje sygnał(powstaje inicjatywa) o skreślenie go z listy studentów. Koniec procesu.

    2. Jeśli wniosek wymaga dodatkowych czynności ze strony studenta to należy go o tym poinformować (przejście do punktu 4.)

    3. Wniosek poprawny formalnie, więc zostaje przyjęty i przekazany do dziekana(przejście do punktu 5.)

  4. Student dokonuje wymaganych czynności (przejście do punktu 3.)

  5. Dziekan ostatecznie rozpatruje wniosek.

    1. Dziekan odrzuca wniosek, co kończy proces oraz wygeneruje sygnał(powstaje inicjatywa) o skreślenie danej osoby z listy studentów.

    2. Dziekan przyjmuje wniosek(Przejście do punktu 6.)

  6. Dziekanat wysyła informacje do studenta, że jego wniosek został przyjęty.

Porównując oba opisy tego samego procesu łatwo dostrzec, że reprezentacja graficzna jest łatwiejsza w zrozumieniu. A sama notacja jest na tyle intuicyjna, że osoba niemająca doświadczenia jest w stanie zrozumieć sens procesu.

Rysunek . Nadawanie typu zadaniu

Rysunek . Service Task

Zadaniu „Pobieranie informacji o studencie” nadaliśmy typ „Service Task”, co oznacza, że zadanie to będzie korzystało z serwisu zewnętrznego. Narzędzie umożliwia nam transformacje zadania do jednego z powyżej zaprezentowanych typów. Robi się to przez menu kontekstowe, a więc należy kliknąć na dany element, wcisnąć prawy przycisk myszy a następnie wybrać odpowiednią opcję.

Rysunek . Pętla wykorzystująca bramę logiczną

Zgodnie z zastosowaniem element w kształcie rombu użyliśmy do stworzenia pętli. Brama logiczna służy do sterowania przepływem. W powyższym przypadku, w zależności od akcji podjętej na zadaniu „Przyjmowanie wniosku do rozpatrzenia”, proces może obrać jeden z trzech przewidzianych wariantów. W przypadku „Odrzucenia warunkowego” przechodzimy do kroku „Dokonanie wymaganych czynności” i ponownie wracamy do przyjmowania wniosku.

Rysunek . Send Task

Kolejnym przykładem użycia zadania określonego typu jest task „Wysłanie wiadomości o przyjęciu wniosku”, któremu nadaliśmy typ „Send Task”. Opcja ta została ustawiona po przez menu kontekstowe, w analogiczny sposób jak w przypadku „Service Task”.

Rysunek . Nadawanie typu dla zdarzenia końcowego

Rysunek . End Event - Signal

W pierwszym etapie naszego przykładu możliwe jest zakończenie całego procesu. Koniec procesu oznaczony jest po przez czerwoną obręcz. „End Event” również może przyjmować jeden z kilku typów. Nasze zdarzenie końcowe otagowaliśmy typem „Signal”. Oznacza to, że w trakcie zakończenie zostanie wygenerowany sygnał, który np. może zostać wykorzystany do automatycznego uruchomienia innego procesu.

Rysunek . Dokonanie wpłaty - Drugi etap procesu

Kolejnym etapem w naszym procesie jest „Dokonanie wpłaty”. System oczekuje na wpłatę 5 dni, jeśli w tym czasie nie zostanie odnotowane wpłynięcie pieniędzy to proces zostanie zakończony. W przypadku, jeśli księgowa odnotuje wpłynięcie pieniędzy na konto rozpocznie się podproces księgowania wpłaty.

Rysunek . Wykorzystanie Event Based Gateway oraz zdarzeń Intermediate Event

Rysunek . Nadawanie typu bramce logicznej

Rysunek . Bramka logiczna typu "Event Base Gateway"

Jeśli chcemy, aby proces obrał różny przebieg w zależności od zdarzenia, które zajdzie najwcześniej, należy użyć bramki logicznej i ustawić jej typ „Event Based Gateway”. Następnie trzeba dodać zdarzenia pośrednie. System wybierze jedną ze ścieżek, a mianowicie tę, na której pierwszej zajdzie zdarzenie.

Rysunek . Nadawanie typu zdarzeniu pośredniemu

Rysunek . Zdarzenie pośrednie typu "Timer"

Rysunek . Właściwości zdarzenia pośredniego typu "Timer"

Aby zdarzenie odpaliło się po pięciu dniach należy wejść we właściwości obiektu i w parametrze „Duration” ustawić odpowiednią wartość.

Kolejnym korkiem w naszym procesie jest podproces „Zaksięgowanie wpłaty”. Aby go utworzyć należy najpierw zapisać aktualny proces oraz przejść do głównego okna w narzędziu BizAgi Studio, gdzie będziemy mogli dodać nowy proces, który następnie podepniemy jako podproces.

Rysunek . Dodanie nowego procesu - Zaksięgowanie wpłaty

Analogicznie jak to robiliśmy w na początku należy dodać nowy proces. Nazwijmy go „Zaksięgowanie wpłaty”. Po utworzeniu procesu opuśćmy go i powróćmy do głównego procesu. Proces księgowania wpłaty zamodelujemy na końcu.

Rysunek . Główne okno BizAgi Studio - zmienianie kontekstu procesu

W celu powrócenia do głównego procesu należy zmienić kontekst pracy narzędzia. W tym celu w prawnym górnym rogu okna należy z listy rozwijanej wybrać odpowiedni proces. Następnie trzeba kliknąć opcję „Edit Process”.

Rysunek . Stworzenie podprocesu

Rysunek . Podproces

W celu wykorzystanie uprzednio stworzonego procesu w głównym procesie należy dodać Task’a, nadać mu odpowiednią nazwę oraz z menu kontekstowego wybrać opcję „Transfer to subprocess”. Operacja ta uruchomi kreator za pomocą, którego będziemy mogli skonfigurować odpowiednio podproces.

Rysunek . Podproces - wybieranie typu

Do wyboru mamy cztery rodzaje procesów:

W naszym przypadku użyjemy opcji „Resuable”.

Rysunek . Podproces - procesu

Kolejnym krokiem jest wybranie procesu, który będzie uruchamiany w ramach tej aktywności. Wybieramy uprzednio stworzony proces „Zaksięgowanie wpłaty”.

Rysunek . Wybranie trybu pracy podprocesu

Do dyspozycji mamy dwa tryby:

W naszym przypadku wybieramy tryb StandAlone, co oznacza, że dziekanat może wydać karty poprawkowe studentowi nie czekając na zakończenie procesu księgowania wpłaty.

Rysunek . Odbiór dokumentów - Trzeci etap procesu

Ostatnim etapem całego procesu jest „Odbiór dokumentów”. Dziekanat równolegle przygotowuje karty poprawkowe oraz wprowadza odpowiednie dane do systemu E-dziekanat. Po zakończeniu obu tych kroków, może wydać dokumenty studentowi.

Rysunek . Przebieg równoległy

W celu uruchomienia wielu równoległych wątków w przebiegu procesu należy użyć bramki logicznej typu „Parallell Gateway”. Aby sprowadzić rozdzielone wątki ponownie do jednego przebiegu, również trzeba użyć tej samej bramki. Bramka ta będzie oczekiwać, do póki nie spłyną do niej wszystkie doprowadzone wątki.

Rysunek . Widok całego procesu

W celu manipulowania wielkością diagramu należy wcisnąć przycisk Ctrl oraz użyć scrolla w myszce.


Wyszukiwarka

Podobne podstrony:
BizAgi Studio czesc 1 Definiowanie procesu w notacji BPMN
BizAgi Studio Część 4 Definiowanie reguł biznesowych
BizAgi Studio Cz, 2 Definiowanie modelu danych
BizAgi Studio Część 5 Stworzeni aplikacji zewnętrznej w ASP NET
BizAgi Studio Cz, 5 Stworzeni aplikacji zewn trznej w ASP NET
Definicje i procesy glebotwórcze
BizAgi Studio Cz, 6 Integracja z systemem zewn trznym
Definicje procesu i pod procesowego (1) (1) 2015 04 10 11 33 26 017
BizAgi Studio Cz 4 ?finiowanie regu biznesowych
BizAgi Studio Cz 3 Projektowanie formularzy
BizAgi Studio Cz 6 Integracja z systemem zewn trznym
Definicje procesu i pod proces Nieznany
BizAgi Studio Cz, 3 Projektowanie formularzy
studiowanie jako ciągły proces?cyzyjny
Wykłady jakosc, C.D. Wdrażanie systemu, Podczas definiowania procesów należy mieć na względzie fakt,
BizAgi Studio Cz 2 ?finiowanie modelu?nych
BizAgi Studio Cz, 5 Stworzeni aplikacji zewn trznej w ASP NET
Wykład VI - umiędzynarodowienie procesu studiowania, materiauy

więcej podobnych podstron