Inżynieria systemów informacyjnych - BPMN WYKŁAD IV dr inż. Krzysztof Michalak
Plan wykładu Procesy – podstawowe definicje BPMN – modelowanie procesów na podstawie „Zrozumieć BPMN – Modelowanie procesów biznesowych” Szymon Drejewicz.
Proces – definicja Proces to ustrukturyzowane i mierzalne działania zaprojektowane do produkcji określonego produktu dla szczególnego klienta lub rynku [Davenport]. Proces to ciąg powiązanych ze sobą działań, prowadzących do przekształcenia wszelkich nakładów w produkt pracy [Managenelli, Klein]. Proces to łańcuch działań zmierzających do wytworzenia wartości odpowiadających wymaganiom klientów [MülIer, Rupper]. Proces jest sekwencją czynności wykonywanych w celu otrzymania określonego efektu finalnego [Armisted, Rowland]. Proces jako powiązaną grupę zadań, których wspólny rezultat stanowi wartość dla klienta [Hammer].
Proces – definicja Proces – uporządkowany w czasie ciąg zmian i stanów zachodzących po sobie. Nośnikiem każdego procesu jest zawsze w efekcie jakiś system fizyczny. Każdy kolejny stan/zmiana systemu spowodowana jest przez stan/zmianę poprzednią albo przez oddziaływanie zewnętrzne na system. Proces to sekwencja logicznie uporządkowanych czynności, w wyniku których powstaje określony efekt (produkt, usługa), z którego korzysta klient (zewnętrzny lub wewnętrzny). Proces biznesowy seria powiązanych ze sobą działań lub zadań, które rozwiązują określony problem lub prowadzą do osiągnięcia określonego efektu. Proces biznesowy często jest opisywany za pomocą schematów blokowych.
Podejście procesowe Każda organizacja jest zbiorem wzajemnie przeplatających się procesów. Identyfikacja procesów pozwala na lepsze zrozumienie tworzenia wartości. Usprawnienie i stałe doskonalenie procesów zwiększają efektywność funkcjonowania organizacji oraz stopień zadowolenia klientów.
Podejście procesowe Wybrane metody stosowane w podejściu procesowym BPR - Business Process Reeingeenering – metoda radykalnej reorganizacji procesów TQM – Total Quality Management – kompleksowe zarządzanie jakością Six Sigma – metoda zarządzania jakością ABC – Activity Based Costing – rachunek kosztów działań ABM – Activity Based Management – zarządzanie kosztami działań ABB – Activity Based Budgeting – budżetowanie oparte na działaniach Balanced Scorecard – zrównoważona karta wyników Target Costing – rachunek kosztów docelowych Kaizen Costing – filozofia ciągłego doskonalenia i usprawniania procesów
Klasyfikacja procesów Klasyfikacja procesów według Portera: Procesy podstawowe: „Logistyka wejściowa” – działania związane z przygotowaniem produkcji Wytwarzanie produktu, „Logistykę wyjściowa” – działania związane ze sprzedażą Marketing Usługi posprzedażne Procesy pomocnicze: Zarządzaniem całą jednostką Zarządzaniem zasobami ludzkimi Zaopatrzenie Rozwój mający na celu doskonalenie produktów i procesów
Klasyfikacja procesów Klasyfikacja procesów według Kaplana i Coopera: Innowacyjne —określanie rynku docelowego oraz tworzenie oferty Operacyjne — wytwarzanie produktu (usługi) i dostarczanie go klientowi Obsługi posprzedażnej — obsługa klienta po dostarczeniu produktu Podział wg ważności: Procesy konieczne Istotne Nieistotne
Klasyfikacja procesów Klasyfikacja procesów z uwagi na ich udział w tworzeniu wartości: Bezpośrednio tworzące wartość (pierwotne, główne) — charakteryzują się bezpośrednim związkiem z klientem Pośrednio tworzące wartość (pomocnicze, drugorzędne) — charakteryzujące się pośrednim związkiem z klientem Relatywnie związane z tworzeniem wartości (pomocnicze, trzeciorzędne) — charakteryzują się warunkowym związkiem z klientem Nie tworzące wartości (przejawy marnotrawstwa) — charakteryzują się brakiem związku z klientem
Klasyfikacja procesów Klasyfikacja procesów według kryterium zadaniowego [Miller, Vollman]: Logistyczne — związane ze sterowaniem strumieniami materialnymi od momentu zakupu materiałów do momentu wysłania sprzedanych produktów Regulacyjne — zapewniają dostosowanie środków produkcji i siły roboczej do zapotrzebowania na produkty Kontrolne — dotyczą jakości produktów, przebiegu procesów produkcyjnych i realizacji zamówień Informacyjne — zapewniają bieżącą aktualizację danych zawartych w systemie informacyjnym
Klasyfikacja procesów Model Klasyfikacji Procesów (Process Classification Framework) wg APQC (American Productivity Quality Center): Procesy operacyjne: 1.0 - Opracowanie wizji i strategii 2.0 - Rozwój i zarządzanie produktami i usługami 3.0 - Marketing i sprzedaż produktów i usług 4.0 - Zaopatrzenie, realizacja i dostawa produktów/usług 5.0 - Zarządzanie obsługą klienta Procesy wspomagające: 6.0 - Organizacja i zarządzanie kapitałem ludzkim 7.0 - Zarządzanie technologią informatyczną 8.0 - Zarządzanie zasobami finansowymi 9.0 - Nabywanie, budowa i zarządzanie mieniem 10.0 - Zarządzanie ochroną środowiska oraz bezpieczeństwem i higieną pracy 11.0 - Zarządzanie relacjami zewnętrznymi 12.0 - Zarządzanie wiedzą, doskonaleniem i zmianą
Identyfikacja procesów Które procesy ma wspierać system informatyczny?
Identyfikacja procesów Jednym z pierwszych etapów zastosowania podejścia procesowego jest identyfikacja i klasyfikacja procesów. Identyfikacja procesów może być realizowana za pomocą dwóch podejść: Top-down – od góry do dołu Bottom-up – od dołu do góry
Identyfikacja procesów Podejście top-down umożliwia bardziej szczegółową identyfikację czynności w procesie oraz kosztów ich realizacji. Podejście to jednak wymaga większego zaangażowania zasobów w analizę procesów, zwiększa czas i koszty analizy. Analiza procesów od szczegółu do ogółu w mniejszym stopniu angażuje kadrę kierowniczą w modelowanie procesów.
Identyfikacja procesów Podejście bottom-up koncentruje się w większym stopniu na samych procesach a nie na czynnościach w realizowanych w procesie. W rezultacie na etapie analizy nie jest możliwe dokładne oszacowanie kosztów procesów. Podejście to odznacza się mniejszym zaangażowaniem zasobów. Zaangażowanie kadry kierowniczej jest jednak większe niż w przypadku analizy top-down. Skutkuje to pełniejszym powiązaniem analizy procesów ze strategią przedsiębiorstwa oraz uwzględnieniem kryterium satysfakcji klienta w analizie procesów.
Identyfikacja procesów W ramach identyfikacji procesów należy: Ustalić jakie procesy realizuje się w jednostce Zidentyfikować działania wykonywane w ramach poszczególnych procesów Opisać przebieg wyodrębnionych procesów Określić powiązania pomiędzy procesami Wskazać obszary zaangażowane w realizację procesów i ich wykonawców Przeprowadzić klasyfikację procesów zgodnie z przyjętym kryterium podziału Zdefiniować produkty działań i ich odbiorców Ustalić harmonogram przebiegu procesu Przeprowadzić parametryzacji opisanych procesów
Metryki procesów Wynikiem przeprowadzonej identyfikacji procesów powinny być metryki procesów, które zawierają: Opisy poszczególnych działań (kroki) wewnątrz wyodrębnionych procesów Informacje o wykonawcach działań Definicję czynników wejścia do poszczególnych działań Informacje o produktach działań Informacje o odbiorcach produktów, Normatywny czas realizacji wyodrębnionych działań Liczbę i kategorie zdefiniowanych procesów i działań Relacje zachodzące pomiędzy procesami
Kryteria oceny procesów Najczęściej używane kryteria oceny procesów to: Zadowolenie klienta Czas realizacji procesu Terminowość realizacji procesu Jakość procesu Koszt procesu
Narzędzia/notacje do modelowania Wybrane metody do modelowania procesów: BPMN - Business Process Model and Notation standard opracowany przez organizację Object Management Group EPC - Event-driven Process Chain – łańcuch procesów sterowanych zdarzeniami BPEL - Business Process Execution Language
Narzędzia/notacje do modelowania Wybrane narzędzia do modelowania procesów: Proste narzędzia do modelowania: MS Office Visio Flowcharter (Micrografx) Bizagi Process Modeler Narzędzia typu CASE (Computer Aided System Engineering): Designer/2000 (Oracle), Enterprise Architect Zaawansowane systemy dedykowane ARIS Toolset (IDS Scheer) Adonis (BOC GmbH) Workflow Analyzer (Meta Softwar) Bizagi BPM Suite
Modelowanie procesów Dlaczego powinniśmy analizować procesy, tworzyć ich modele podczas projektowania i budowy systemu informatycznego?
Modelowanie procesów Zasady tworzenia modeli procesów: Każdy proces ma swój początek i koniec – wyodrębnienie procesu i ustalenie jego granic W każdym procesie jest przetwarzany (wytwarzany) jeden obiekt – przedmiot procesu Proces składa się z podprocesów i czynności – hierarchia procesów Dla każdego procesu powinien zostać określony jego właściciel – osoba odpowiedzialna za proces Działania nie tworzące wartości powinny być z procesu eliminowane Modelowanie procesu to również określanie jego najbardziej optymalnego przebiegu
BPMN – poziomy modelowania Model poglądowy — przedstawia ogólny przebieg procesu biznesowego. Nie zawiera szczegółowych informacji o typach zadań, parametrach bramek i przepływach warunkowych, itp. Model analityczny— umożliwia oszacowanie rozmiaru prac niezbędnych do opracowania i wdrożenia procesu w postaci wykonywalnej. Zawiera szczegółową definicję typów zadań i podprocesów oraz prezentację obiektów danych ale bez ich szczegółowej definicji. Model wykonywalny— zawiera zdefiniowane wszystkie czynności składowe, typy zadań i zdarzeń, parametry bramek, obiekty danych wraz z ich definicjami itd. Model ten służy do precyzyjnego opisania procesu wykonywalnego.
BPMN Fragment procesu obsługi wniosku kredytowego
BPMN – pule i tory Pula w notacji BMPN reprezentuje uczestników procesu. Między uczestnikami (pulami) nigdy nie ma przepływów sekwencji — mogą występować przepływy komunikatów.
BPMN – pule i tory Fragment procesu obsługi wniosku kredytowego z dwoma uczestnikami
BPMN – pule i tory Pule mogą być podzielone na tory w celu uszczegółowienia uczestników procesu i wskazania które czynności są realizowane przez którego uczestnika
BPMN – pule i tory Fragment procesu obsługi wniosku kredytowego z wykorzystaniem pul i torów
BPMN – bramki Bramki (ang. gateways) w notacji BPMN służą do prezentowania logiki przepływów w procesach biznesowych. Bramki przekładając je na języki programowania są wyrażeniami sterującymi. W notacji BPMN nie ma tak wielu wyrażeń sterujących jak w przypadku języków programowania ale za to odpowiednik instrukcji if ma wiele wariantów.
BPMN – bramki Żadna z bramek w notacji BPMN 2.0 nie ma ograniczonej liczby przepływów z niej wychodzących !!!
BPMN – bramki W notacji BPMN 2.0 mogą występować bramki łączące kilka alternatywnych ścieżek, nawet jeśli nigdzie wcześniej w modelu nie ma rozgałęzienia procesu.
BPMN – bramki W notacji BPMN 2.0 możliwe jest pomijanie bramek oraz używanie warunkowych przepływów sekwencji.
BPMN – bramki W notacji BPMN 2.0 możliwe jest pomijanie bramek oraz używanie warunkowych przepływów sekwencji.
BPMN – bramki W notacji BPMN 2.0 możliwe jest pomijanie bramek oraz używanie warunkowych przepływów sekwencji.
BPMN – bramki W notacji BPMN 2.0 możliwe jest pomijanie bramek oraz używanie warunkowych przepływów sekwencji.
BPMN – bramka wykluczająca Bramka wykluczająca jest operatorem umożliwiającym wybór tylko jednej z wielu ścieżek. Oznaczana jest za pomocą pustego rombu lub rombu z symbolem „X” wewnątrz. W przełożeniu na operatory logiczne bramka wykluczająca reprezentuje operator XOR
BPMN – bramka wykluczająca W notacji BPMN bramka symbolizuje wyłącznie rozgałęzienie, natomiast wyrażenia warunkowe określone są na wyjściach z bramki. Wyrażenia opisujące poszczególne wyjścia z bramki zgodnie ze standardem BPMN 2.0 mogą być wyrażone za pomocą języka naturalnego lub formalnie (pseudokodem).
BPMN – bramka niewykluczająca Bramka niewykluczająca stosowana jest wtedy gdy w procesie występuje rozgałęzienie, w którym możliwe jest jednoczesne wybranie kilku ścieżek – uruchamiana jest każda ścieżka dla której warunek jest prawdziwy. Bramka niewykluczająca oznaczana jest symbolem rombu w którym znajduje się „O”
BPMN – bramka niewykluczająca
BPMN – bramka równoległa Bramka równoległa jest stosowana gdy należy zrównoleglić czynności realizowane w procesie. Nie oznacza to, że czynności będą realizowane jednocześnie równoległość w BPMN należy traktować jako niezależność.
BPMN – bramka równoległa Bramkę równoległą stosuje się do synchronizacji niezależnych fragmentów procesu.
BPMN – bramka złożona Bramka złożona umożliwia tworzenie modeli procesów, w których obowiązują szczególne reguły przebiegu. Z bramką złożoną związane są pojęcia: Warunek aktywacji Stan bramki Licznik aktywacji każdego przepływu Warunek aktywacji bramki (activationCondition:Expression) to wyrażenie logiczne, którego spełnienie umożliwia przejście przez bramkę, czyli kontynuację procesu. Stan bramki (waitingForStart:boolean) może przyjmować jedną z dwóch wartości: Oczekuje na uruchomienie Oczekuje na zresetowanie Licznik aktywacji każdego przepływu (activationCount:integer) zlicza przepływy wchodzącego z bramki
BPMN – bramka złożona Start waitingForStart = true activationCondition = false
BPMN – bramka złożona Jeden przepływ aktywny waitingForStart = true activationCondition = false
BPMN – bramka złożona Dwa przepływy aktywne waitingForStart = true activationCondition = false
BPMN – bramka złożona Trzy przepływy aktywne waitingForStart = true activationCondition = true
BPMN – bramka złożona Przejście przez bramkę waitingForStart = false activationCondition = false
BPMN – bramka złożona Aktywacja ostatniego przepływu waitingForStart = false activationCondition = false
BPMN – bramka złożona Reset bramki waitingForStart = true activationCondition = false
BPMN – bramka złożona
BPMN – bramka złożona Wielu producentów systemów do modelowania procesów biznesowych odradza używanie bramek złożonych i zastępowanie ich innymi bramkami.
BPMN – bramka złożona
BPMN – bramki oparte na zdarzeniach Notacja BPMN umożliwia stosowanie bramek opartych na zdarzeniach. Bramki mogą być oparte na: Zdarzeniach początkowych Zdarzeniach pośrednich
BPMN – bramki oparte na zdarzeniach Przykład bramki równoległej rozpoczynającej proces, opartej na zdarzeniach.
BPMN – bramki oparte na zdarzeniach Przykład bramki wykluczającej rozpoczynającej proces, opartej na zdarzeniach.
BPMN – bramki oparte na zdarzeniach Przykład bramki wykluczającej opartej na zdarzeniach pośrednich.
BPMN – modelowanie bez bramek =
BPMN – modelowanie bez bramek =
BPMN – modelowanie bez bramek =
BPMN – modelowanie bez bramek =
BPMN – modelowanie bez bramek =
BPMN – modelowanie bez bramek =
BPMN – modelowanie bez bramek
Przepływy Przepływy umożliwiają określenie kolejności kroków w procesie i charakter modelowanej relacji. Różne typy przepływów umożliwiają rozróżnienie przepływu sekwencji od przepływu komunikatów lub przepływu sekwencji działań od przepływu danych. Jednym z pierwszych kroków dekompozycji procesu biznesowego jest określenie rodzajów przepływów.
Przepływy
Przepływy
Przepływy
Przepływy sekwencji Przepływ sekwencji reprezentowany jest przez linię ciągłą z grotem zamkniętym, wypełnionym. Przepływy sekwencji określają następstwo czynności w procesie. Jeden przepływ sekwencji może łączyć tylko dwa elementy, a więc nie może mieć kilku wejść lub kilu wyjść, czyli zakończeń z grotem. X
Przepływy sekwencji
Przepływy sekwencji domyślne i warunkowe
Przepływ sekwencji swobodny Przepływ sekwencji bez żadnych warunków i niepołączony z jakąkolwiek bramą to przepływ swobodny.
Przepływ sekwencji wyjątkowy Przepływ wyjątkowy uzależniony jest od wstąpienia pośredniego zdarzenia krawędziowego. Przepływ taki jest aktywowany tylko w wyjątkowych sytuacjach.
Przepływ komunikatu Przepływ komunikatów są stosowane w sytuacji modelowania przepływów pomiędzy wieloma użytkownikami (wieloma pulami).
Przepływ komunikatu Przepływy komunikatów mogą być opisywane przez nazwę komunikatu.
Przepływ komunikatu
Asocjacje Asocjacje są kolejnym rodzajem relacji, który umożliwia łączenie elementów modelu. Asocjacje mogą być stosowane do prezentowania: Notatek tekstowych na diagramie Przepływów obiektów danych w procesie Powiązań elementów modelu z tzw. artefaktami.
Obiekty danych BPMN umożliwia modelowanie obiektów przetwarzanych w procesach biznesowych. Do obiektów tych zalicza się: Obiekty danych Odwołania do obiektów danych Magazyny danych Parametry, dane wejściowe i dane wyjściowe. BPMN nie przewiduje opisywania struktury tych obiektów.
Obiekty danych Obiekty danych opisywane są za pomocą nazwy oraz stanów. Na potrzeby modelowania procesu dla każdego obiektu danych możliwe jest zdefiniowanie dowolnych stanów. W danej chwili obiekt danych może znajdować się tylko w jednym stanie.
Obiekty danych Magazyny danych stosowane są wówczas gdy dane przetwarzane w procesie przechowywane są w określonym miejscu bez względu na to czy proces działa czy nie.
Obiekty danych
Obiekty danych W notacji BPMN obiekty danych występujące w procesach biznesowych można podzielić na dwie grupy: Obiekty „wewnętrzne” wykorzystywane w trakcie realizacji procesu. Obiekty „zewnętrzne” wejściowe i wyjściowe.
Obiekty danych Często w modelach procesów ten sam obiekt występuje jednocześnie w wielu rolach: jest obiektem wejściowym, wyjściowym i jednocześnie jest przetwarzany w trakcie procesu.
Obiekty danych BPMN umożliwia oznaczanie obiektów danych znacznikiem kolekcji w sytuacji gdy chcemy zaznaczyć że nie jest to pojedynczy obiekt ale cała kolekcja.
Obiekty danych
Kolaboracje Kolaboracja to zbiór przynajmniej dwóch pul reprezentujących uczestników danego procesu biznesowego. Komunikacja między uczestnikami jest opisywana za pomocą przepływów komunikatów. Przepływy mogą, ale nie muszą być nazwane. Kolaboracje umożliwiają przedstawienie uczestników procesu oraz komunikacji między uczestnikami.
Kolaboracje Połączenie kolaboracji ze zwykłymi diagramami umożliwia z jednej strony ukrywanie szczegółów procesu a z drugiej przekazanie informacji o dodatkowych uczestnikach procesu.
Kolaboracje W przypadku gdy należy szczegółowo przedstawić cały proces można zastosować kolaborację z modelami wszystkich procesów składowych.
Kolaboracje BPMN daje możliwość pominięcia maksymalnie jednej puli w modelowanym procesie. Należy pomijać tą pulę, która reprezentuje uczestnika procesu, który jest w centrum naszego zainteresowania.
Procesy prywatne i publiczne Procesy biznesowe można podzielić na prywatne i publiczne. Prywatnym procesem biznesowym nazywamy taki proces, który jest realizowany przez daną organizację.
Procesy prywatne i publiczne
Procesy prywatne i publiczne Publiczny proces biznesowy to interakcja pomiędzy prywatnym procesem a innym procesem lub uczestnikiem. Publiczny proces zwiera jedynie te czynności/zdarzenia które służą do komunikacji z innymi uczestnikami.
Kolaboracje z uczestnikami wieloinstancyjnymi Standard BPMN umożliwia oznaczenie uczestnika proces znacznikiem wieloinstancyjności informującym o tym, że dany uczestnik może występować w procesie w wielu instancjach.
Konwersacje Notacja BPMN umożliwia tworzenie diagramów konwersacji (tzw. diagramów kontekstu biznesowego), których celem jest określenie, bez zagłębiania się w szczegóły, jakie procesy są modelowane, kto jest uczestnikiem tych procesów i którzy uczestnicy się komunikują.
Konwersacje W przypadku bardziej skomplikowanej wymiany komunikatów BPMN daje możliwość zastosowania konwersacji złożonych.
Konwersacje
Zdarzenia Zdarzenie w procesie biznesowym to wystąpienie jakiejś sytuacji, która jest na tyle istotna w przebiegu tego procesu, że warto ją nazwać i zdefiniować. Zdarzeniem może być odebranie lub wysłanie jakiejś wiadomości, nastąpienie jakiegoś momentu, rozpoczęcie lub zakończenie jakiejś czynności itd.
Zdarzenia W notacji BPMN 2.0 rozróżnia się trzy główne typy zdarzeń: Zdarzenia początkowe, oznaczające początek procesu, Zdarzenia pośrednie, oznaczające sytuacje występujące w trakcie przebiegu procesu. Zdarzenia końcowe, oznaczające koniec modelowanego procesu biznesowego.
Zdarzenia Zdarzenie początkowe i część zdarzeń pośrednich przechwytują wyzwalacze. Wystąpienie tych zdarzeń powoduje wyzwolenie (uruchomienie) czynności w procesie. Zdarzenie końcowe i część zdarzeń pośrednich odpowiedzialna jest za aktywowanie wyzwalaczy.
Zdarzenia początkowe Zdarzenia początkowe, oznaczają początek procesu biznesowego. Oznacza to, że ze zdarzeń tego typu mogą wychodzić przepływy do bram lub czynności. Zdarzenia początkowe nie powinny posiadać żadnych wejściowych przepływów sekwencji. Standard BPMN nie wymaga umieszczania obligatoryjnego zdarzeń początkowych. Zdarzenia początkowe mogą dotyczyć procesów na następujących poziomach: Procesów głównego poziomu, Zagnieżdżonych podprocesów, Zagnieżdżonych podprocesów zdarzeniowych.
Zdarzenia początkowe
Zdarzenia początkowe procesów głównego poziomu
Zdarzenia początkowe podprocesów Podprocesy nie mogą się zaczynać od zdarzeń z wyzwalaczem. Przebieg podprocesu zależy od tego czy zostanie wywołany przez proces nadrzędny. Jedynym zdarzeniem początkowym, od którego może się rozpoczynać podproces jest zdarzenie nieokreślone.
Zdarzenia początkowe podprocesów zdarzeniowych
Zdarzenia pośrednie Zdarzenia pośrednie występują w trakcie procesu. Zdarzenia pośrednie umożliwiają zaprezentowanie: Komunikatów, które muszą być odebrane lub wysłane w trakcie procesu Opóźnień, które występują w procesie Obsługi sytuacji wyjątkowych Obsługi kompensacji (wycofania) wcześniejszych czynności. Zdarzenia pośrednie można również podzielić na: Zdarzenia zwykłe – elementy modelu połączone z czynnościami lub bramkami za pomocą przepływów Zdarzenia krawędziowe – umieszczane na krawędzi czynności
Zdarzenia pośrednie „zwykłe”
Zdarzenia pośrednie „zwykłe”
Zdarzenia pośrednie „krawędziowe”
Zdarzenia pośrednie „krawędziowe”
Zdarzenia pośrednie „krawędziowe”
Zdarzenia końcowe Zdarzenie końcowe używane są do oznaczania końca procesu. Model procesu może nie zawierać zdarzeń końcowych lub może ich zawierać wiele. Jeśli model zawiera zdarzenie początkowe, to obowiązkowe jest co najmniej jedno zdarzenie końcowe. Zabrania się pomijania zdarzeń końcowych gdy proces ma określony rezultat działania.
Zdarzenia końcowe
Zdarzenia końcowe
Zdarzenia końcowe
Czynności i podprocesy Czynność odzwierciedlają pracę realizowaną w procesie biznesowym. Czynnościami mogą być: Zadania Podprocesy Czynności wywołania
Czynności i podprocesy
Czynności i podprocesy Typy zadań wyróżnianych w notacji BPMN: Zadanie usługowe Zadanie wysłania Zadanie odebrania Zadanie użytkownika Zadanie manualne Zadanie reguły biznesowej Zadanie skryptowe
Czynności i podprocesy Zadanie usługowe jest realizowane całkowicie automatycznie, bez udziału człowieka. Domyślnie jest to usługa sieciowa (Web Service), ale może to być także jakaś operacja wywoływana przy użyciu innej technologii. O tym, jaka technologia jest stosowana do implementacji zadania usługowego, decyduje parametr implementation. Parametr ten może przyjmować wartości: ##WebService (wartość domyślna) ##unspecified URL
Czynności i podprocesy Zadanie usługowe w notacji BPMN 2.0 związane jest z wykonaniem konkretnej operacji. Operacja zawsze musi być powiązana z jednym obiektem wejściowym i maksymalnie jednym obiektem wyjściowym.
Czynności i podprocesy Zadanie wysłania umożliwia wysłanie komunikatu do innego uczestnika procesu. Zadanie wysłania jest współrealizowane przez silnik procesów biznesowych i jakiś inny system. Zadanie wysłania nie jest realizowane przez człowieka czy użytkownika. Mimo że zadanie wysłania związane jest z jakimś komunikatem, powiązanie go przepływem komunikatu z innym elementem modelu nie jest obligatoryjne.
Czynności i podprocesy Zadanie odebrania jest zadaniem, którego jedynym celem jest odebranie komunikatu od innego uczestnika. Zadanie odebrania — podobnie jak zadanie wysłania — odbywa się bez udziału człowieka. Ponadto zadanie wysłania, może być związane przepływem komunikatu z innym elementem modelu. Jeśli zadanie odebrania jest pierwszą czynnością procesu może dodatkowo uruchamiać proces (atrybut instantiatema=true)
Czynności i podprocesy Zadanie użytkownika to zadanie, które jest realizowane przez człowieka z wykorzystaniem aplikacji komputerowej.
Czynności i podprocesy Zadanie manualne to zadanie realizowane przez człowieka całkowicie poza systemami oprogramowania.
Czynności i podprocesy Zadanie reguły biznesowej jest zadaniem realizowanym przez dwa systemy: przez silnik procesów biznesowych oraz silnik reguł biznesowych. Silnik procesów biznesowych odpowiedzialny jest za zebranie danych wejściowych i przekazanie ich do silnika reguł biznesowych. Silnik reguł biznesowych oblicza wartości reguły biznesowej i zwraca ją do silnika procesów biznesowych.
Czynności i podprocesy Zadanie skryptowe jest realizowane przez silnik procesów biznesowych w oparciu o skrypt. Język skryptowy wykorzystany do zdefiniowania zadania skryptowego zależy od silnika procesów, z którego korzystamy.
Czynności i podprocesy Standard BPMN definiuje cztery rodzaje podprocesów: Osadzone Zdarzeniowe Ad hoc Transakcyjne Podproces może być podprocesem globalnym – może być wywołany jako podproces w wielu miejscach poprzez czynność wywołania.
Czynności i podprocesy Podproces osadzony to czynność zdekomponowana na mniejsze czynności. Dla podprocesów osadzonych obowiązują te same zasady, które obowiązują w przypadku modelowania zwykłych procesów.
Czynności i podprocesy Proces może być jednocześnie podprocesem osadzonym i procesem głównego poziomu. W takiej sytuacji proces zawiera więcej niż jedno zdarzenie początkowe, przez co można go wywołać na różne sposoby: Przez czynność wywołania— podproces osadzony Przez inne zdarzenie początkowe — proces głównego poziomu.
Czynności i podprocesy Podproces zdarzeniowy musi rozpoczynać się zdarzeniem konkretnego typu. Podproces taki nie może mieć więcej niż jednego zdarzenia początkowego – uruchamiany jest wtedy i tylko wtedy, gdy nastąpi konkretne zdarzenie. Podproces zdarzeniowy jest realizowany poza normalnym przepływem, gdyż nie wynika z sekwencji czynności w procesie nadrzędnym, ale z wystąpienia określonego zdarzenia.
Czynności i podprocesy
Czynności i podprocesy Podproces ad hoc to specjalny typ podprocesu, który jest grupą czynności realizowanych bez ściśle narzuconej kolejności. Każda z czynności w podprocesie ad hoc może być realizowana wielokrotnie. Przebieg procesu zależy parametru ordering: Parallel – czynności w podprocesie są realizowane równolegle Sequential – czynności są realizowane pojedynczo Zakończenie podprocesu zależy od parametrów: completionCondition zawiera wyrażenie warunkowe — jeśli jest ono prawdziwe, wtedy proces jest kończony. cancelRemainingInstances (true/false) . Jeśli ustawiona jest wartość true i jednocześnie podproces ad hoc jest w trybie Parallel, wtedy spełnienie warunku completionCondition jest równoważne z anulowaniem wszystkich czynności składowych danego podprocesu ad hoc, które były w trakcie realizacji.
Czynności i podprocesy
Czynności i podprocesy
Czynności i podprocesy Podproces transakcji (transakcja) to podproces, którego przebieg jest kontrolowany przez tzw. protokół transakcyjny. Jeśli taki podproces zakończył się bez żadnego błędu lub nie zdarzyło się nic wyjątkowego, to wszystkie czynności składowe, w tym inne podprocesy, również dobiegły końca w prawidłowy sposób. Jeśli natomiast podproces z jakiegoś powodu został anulowany, dla wszystkich czynności, które zostały już wywołane, uruchamiane są czynności kompensacji i następuje wycofanie (ang. roll back) transakcji. Anulowanie transakcji może nastąpić gdy: Nastąpiło końcowe zdarzenie anulowania Został odebrany komunikat anulowania
Czynności i podprocesy
Czynności i podprocesy Notacja BPMN umożliwia oznaczenie, że czynności są powtarzane. Dostępne są trzy znaczniki reprezentujące: Pętle Wieloinstancyjność sekwencyjną Wieloinstancyjność równoległą
Czynności i podprocesy Czynność kompensacji to czynność, której celem jest wycofanie wcześniej wykonanego działania. Czynność kompensacji musi być powiązana asocjacją ze zdarzeniem krawędziowym kompensacji.
Choreografie Dotychczas prezentowane modele procesów opisywały jakie czynności wykonują uczestnicy procesu biznesowego. Choreografia natomiast opisuje tylko interakcje zachodzące między uczestnikami
Choreografie
Choreografie
Choreografie
Choreografie
Choreografie
Choreografie
Choreografie
Choreografie