Wykład 4 Identyfikacja i modelowanie procesów
Plan wykładu Modelowe podejście do zarządzania przypomnienie z ostatniego wykładu Przykład wdrożenia nowej architektury procesów w TP SA Identyfikowanie (mapowanie procesów) Wstęp do modelowania Metody opisu i modelowania procesów Podstawy BPMN
Modelowe podejście do zarządzania procesami Analiza wymagań klientów Analiza informacji płynących od dostawców Obserwacja i analiza konkurentów rynkowych Analiza najlepszych praktyk Szanse znajdujące się w otoczeniu Zagrożenia płynące z otoczenia Sformułowanie celów procesów Identyfikacja i opisanie procesów Pomiar wyników procesów Odpowiedzialność i uprawnienia właścicieli procesów Założenia strategiczne Kultura organizacyjna Dostępne zasoby Monitorowanie skuteczności i efektywności procesów Audyty procesów Określanie usprawnień Wyniki ekonomiczne warunkujące rozwój Wdrożenie zmian Źródło: Haffer, Skrzypek, s. 59, 2010
Nowe podejście do zarządzania procesami biznesowymi w TP SA (2008) Przykład z praktyki
Identyfikowanie procesów
Identyfikowanie procesów Identyfikowanie procesów obejmuje: Wskazanie i określenie procesów zachodzących w organizacji Dokonanie wyboru procesów kluczowych dla organizacji Stworzenie map procesów z zapisem wzajemnych zależności procesów oraz wyspecyfikowaniem sekwencji procesów
Sposoby identyfikacji procesów Według kierunku: Top down Bottom up Mix Tryb: Cykl Interwały Incydentalnie
Mapa procesów przedsiębiorstwa Mapa procesów przedsiębiorstwa pokazuje procesy na najwyższym stopniu ogólności, przedstawia jakie procesy występują w danym obszarze działalności oraz zależności między nimi. Mapa procesów przedsiębiorstwa zdjęcie lotnicze Mapa struktury organizacyjnej obraz statyczny Mapa procesów przedsiębiorstwa obraz dynamiczny
Mapa (zbioru) procesów Mapa procesów odnosi się do pewnego fragmentu mapy procesów przedsiębiorstwa. Przedstawia ogólny przebieg zbioru procesów i ich wzajemne oddziaływanie. Mapa procesów = zdjęcie lotnicze pewnego fragmentu Kryteria wyodrębniania: przestrzenne, funkcjonalne, logiczne i inne.
Mapa pojedynczego procesu Mapa procesu przedstawia przebieg działań realizowanych w obrębie procesu oraz wskazuje obszary odpowiedzialności poszczególnych jednostek zaangażowanych w wykonanie zadań lub związanych z ich wykonywaniem
Klient Sprzedaż Wybrane obszary przedsiębiorstwa lub eksperci zewnętrzni Przyjęcie prośby o rekomendacje Opracowanie rekomendacji Prośba o rekomendacje Proces realizacji projektów ICT + Przyjęcie zapytania Skierowanie zapytanie do właściwego kanału sprzedaży Ocena zakresu + Realizacja projektu? N Realizacja rutynowa? T Proces realizacji działalności rutynowej + Wygenerowanie zapytania Oznaczenia zgodne z notacją BPMN: ścieżka domyślna bramka XOR
X - odpowiedzialny za wynik (lider zespołu) X *- odpowiedzialny za wynik w zalezności od wybranej ścieżki A - asysta, (uczestnik zepsołu - DH,QM/OKK,AS,BM,IS) Lider zespołu - osoba delegująca zadania na uczestników zespołu w danym projekcie
Modelowanie
Modelowanie procesów GOSPODARZ PROCESU I N T E R A K C J A Swe Stan początkowy organizacji Pomysł Model referencyjny System Swy Stan docelowy organizacji T R A N S F O R M A C J A TECHNOLOGIA IT Na podstawie Kasprzak T., 2005, s. 41-42
Modelowanie procesów Model mentalny Właściciel, Przedsiębiorstwo Pseudo - model Mapowanie Język notyfikacji + Model referencyjny Modelowanie Język modelowania Model systemu Programowanie Język programowania System zintegrowany Użytkownik, Klient
Modelowanie procesów hipotetyczny przykład (kolej) System rezerwacji biletów, podstawowe funkcje i wymagania, wyobrażenie na temat działania, wstępny przebieg działań Właściciel, Przedsiębiorstwo Mapa systemu wraz ze wskazaniem punktów styku (np. kilka systemów rezerwacji, przepływ informacji, dane dot. ruchu) Mapa specyfikująca obiekty i przepływy (kasa, punkt opłat, wysyłka, klient) System zintegrowany www.kolej.pl Użytkownik, Klient
www.tvn 24.bis: Co się stało? Problem jest większy niż wcześniej sądziliśmy. Wprowadzamy nową strategię cenową, która wiążę się z bardzo wieloma zmianami. Nasz system nie jest w stanie sobie z nimi poradzić To nie usterka jednego systemu lecz konieczność zapewnienie współpracy wielu różnych, często przestarzałych systemów Ciągle zasysamy dużą ilość danych Nasi informatycy całą noc pracowali i cały czas pracują nad usunięciem usterki" - Nie jestem jednak w stanie powiedzieć, kiedy rozwiążemy ten problem - zaznaczyła rzecznik
Przyczyny Przyczyny: Płytkie: Wiele zmian związanych z wprowadzeniem nowej strategii cenowej, ponieważ w ofercie PKP IC pojawiły się dwie dodatkowe kategorie oraz wprowadzono ofertę relacyjną Pik ruchu użytkowników ( podbne działania hakerzy: "denial of service attack" ) Trudności w integracji aplikacji (unexpected failer) Głębokie: Niewłaściwe zwymiarowanie procesów Niewłaściwa identyfikacja wąskich gardeł Niedostatecznie opisane punktu styku Niewłaściwe testy (lub ich brak) PROBLEMY Z OBSZARU MODELOWANIA PROCESÓW
Krok -1 Kolejne kroki PKP : Test różnych zachowań systemu sprzedaży mógłby kosztować kilkanaście tysięcy złotych, zależnie od czasu jego trwania i ilości wyłapanych podczas testu błędów Krok 0 PKP : Problemy z systemem informatycznym zaczęły być widoczne po wprowadzeniu informacji o sprzedaży biletów na pociągi Pendolino. Początkowo PKP zapowiedziało, że pierwszym dniem sprzedaży biletów będzie piątek. Potem - noc z soboty na niedzielę, tłumacząc to obawą, że klienci, którzy będą chcieli kupić bilety, wejdą na stronę wraz z tymi klientami, którzy kupują bilety w piątek, przez co cały system może przestać działać.
Krok 1 Kolejne kroki W sobotę spółka poinformowała jednak, że sprzedaż rozpocznie się w niedzielę od 5 rano.. Jak informowała spółka, nawet pomimo awarii w pierwszych godzinach działania systemu udało się sprzedać blisko dwa tysiące biletów.
Jak zapobiegać? Modelować procesy i testować modele Wyciągać wnioski z testów Wybory samorządowe: 2014 Reagować na symptomy problemów natychmiastowo TESTY: Kilka tygodni temu całkowitą porażką zakończyły się testy systemu - a miała to być jego próba generalna. To samo od tygodni, jak mantrę, powtarzali eksperci z zakresu informatyki. W trakcie usuwania problemów - koncentrować się na przyczynie DOSTAWCA: a nie Dobrego skutkach humoru nie tracili tylko ci, którzy za przygotowanie systemu na wybory byli Wdrożyć zasady odpowiedzialni Business : - Ten Continuity błąd nie ma wpływu na obliczenia wyników głosowania ani na czas ich Management, BCM przede wszystkim backup podliczania. systemy (stand by) oraz BCP Źródło: www.tvn24.pl Zastosowanie sieci CDN lub podobne w czasie najwyższego natężenia ruchu
Cele modelowania procesów Ułatwienie dla prowadzenia analiz, symulacji prototypów, formułowania wniosków Wspieranie optymalizacji procesów pod względem czasu, kosztów i wykorzystywania zasobów (analiza wyników symulacji) Wspieranie tworzenia oprogramowania, kształtowanie wymagań dla wyboru/stosowania technologii IT Sprowadzanie do wspólnego mianownika: Ułatwienie przeprowadzania rekonstrukcji procesów zgodnie z założenia BPO (Business Process Orientation) lub doskonalenia procesów BPI (Business Process Improvment), Ułatwienie przeprowadzania analiz, dzięki możliwości porównywaniu efektywności procesów przedstawianych za pomocą modeli, z których wyeliminowano pewne czynności (działania), zastosowano różny stopień uproszczeń
Cele modelowania procesów Pełnienie roli środka komunikacji Jednostki zarządcze Jednostki IT Dokumentowanie przyjmowanych rozwiązań i przechowywanie wiedzy o procesach Wspieranie definiowania potrzeb użytkowników i wymagań wynikających z przyjętej strategii Wypracowywanie nowych rozwiązań biznesowych
Notyfikacja a Modelowanie Notyfikacja zestandaryzowany sposób opisu Modelowanie projektowanie + zapis Zapis procesów zgodnie z daną notyfikacją: Prowadzi do wspólnego zrozumienia przebiegu procesu Daje podstawy do automatyzacji Umożliwia estymację kosztów
Poziomy modelowania procesów Model wstępny Model poglądowy Model analityczny Model wykonywalny Model skorygowany Drajewski S., 2010, s. 12-13
Wstęp do modelowania procesów - notyfikacje BPMN Business Process Model and Notation, opublikowana przez Object Management Group w 2011 roku, przeznaczona dla użytkowników, analityków i programistów, standard otwarty, dostępny dla wszystkich, zorientowany na procesy wykonywalne EPC (Event-driven Process Chain) dużo starsza od BPMN, stanowi część ARIS, własność firmy Sotware AG (w stosunku do BPMN brak modelu do transformacji, nie jest specjalizowana dla procesów wykonywalnych EPBPL (Business Process Execution Language) do procesów wykonywalnych, niezbyt wygodna dla ludzi
Języki modelowania Cel stosowania języków modelowania: Zapisanie procesu w formie możliwej do wykonania (oprogramowania) Zbiór działań, stanowiących proces Notyfikacja Przebieg procesu (mapa) IDE j.modelowania Model przebiegu procesu (mapa) Programiwanie Użytkownik SEE Postać wykonywalna procesu
Języki modelowania UML (Unified Modeling Language) jest językiem umożliwiającym modelowanie z wykorzystaniem pojęć i podejścia obiektowego, powstało w latach 70., obecnie rozwijane przez Object Management Group, nie jest metodą analizy i projektowania oprogramowania, jest językiem modelowania systemów. BPML (Business Process Modelling Language) język opisu procesów, zorientowany na ich ewolucję i ciągłe zmiany Współdziałanie notyfikacji i języków modelowania: EPC + ARIS; BPMN + UML, xstandard + platforma
???
Proces Kroki Warunkowa rejestracja na kolejny semestr Przyjęcie podania Rozpatrzenie podania Bramka Przepływ domyślny Powtórna rejestracja na ten sam semestr Początkowe Przepływ Drajewski S., 2010, s. 16 Zdarzenia Końcowe
STUDENT DZIEKANAT UCZELNIA DZIEKAN Pule i tory Warunkowa rejestracja na kolejny semestr Rozpatrzenie podania + Powtórna rejestracja na ten sam semestr Przyjęcie podania Pule TORY Przepływ komunikatu Przyjęcie podania Drajewski S., 2010, s. 17
http://minnie.tuhs.org/comparch/tutes/week02.html Bramki Bramki opisują wyrażenia formalne: Np. w pseudokodzie: Osoba.wiek > 18 Bramki w języku programowania odpowiedają wyrażenim: If, do while, while, for itp. Jeżeli proces ma być wykonywalny musi, go opisywać pseudokod.
Bramki XOR exclusive OR bramka wykluczająca lub X Przyjęcie Przyjęcie zgłoszenia Odrzucenie
Bramka wykluczająca z dwoma ścieżkami warunkowymi i jedną domyślą Wniosek wypełniony niepoprawnie Odrzucenie wniosku z przyczyn formalnych Wniosek ok. ale kwota > 100000 Przyjęcie podania Przekazanie wniosku do dyrektora Przyjęcie Drajewski S., 2010, s. 24
Bramki niewykluczająca - OR O Nieaktualne badania lekarskie i wiek > 25 lat Wydanie skierowania na badania wydolnościowe Nieaktualne badania kręgosłupa Kontrola stanu zdrowia zawodnika O Wydanie skierowania na badania kręgosłupa Wywiad lekarski z zawodnikiem Przypadek 1 - Z dwoma ścieżkami warunkowymi (niezależnymi) Drajewski S., 2010, s. 27
Bramka niewykluczająca Ze ścieżkami warunkowymi wykluczającymi działa jak XOR Saldo =0 Odrzucenie transakcji Weryfikacja możliwości transakcyjnych O Saldo > 0 ale za małe Przekazanie zapytania o kredyt Realizacja transakcji Drajewski S., 2010, s. 26
Bramki równoległe + Rozwidlenie na 2 ścieżki Zebranie ścieżek (bramka synchronizująca) Równoległość = niezależność, nie jednoczesność
Bramka równoległa Naklejanie etykiet + + Kapslowanie Napełnianie Drajewski S., 2010, s. 29
* Bramka złożona Wymaga określenia jej stanu lub warunku aktywacji Warunek aktywacji : we1+we2+we3_..>5 if not wait Stan oczekuje na uruchomienie lub na zrejesetowanie Licznik aktywacji każdego przepływu wchodzącego do bramki Aktywowanie przepływu Przepływ już raz aktywowany Warunki: activationcondition = true or false Stan: waitingforstart = true or false
Bramka złożona Przykład: Bramka uruchamiana gdy 3 wejściowe przepływy zostały aktywowane waitingforstart = true activationcondition = falsce waitingforstart = true activationcondition = falsce waitingforstart = true activationcondition = true Drajewski S., 2010, s. 30-31
Bramka oparta na zdarzeniach Początkowych Równoległa Nadszedł wniosek o finansowanie Wydanie decyzji do wniosku Otwarto nabór wniosków Wykluczającą Nadszedł wniosek o finansowanie Wydanie decyzji do wniosku Otwarto nabór Drajewski S., 2010, s. 22
Bramka oparta na zdarzeniach pośrednich Odebrano kod autoryzujący Autoryzacja transakcji Prośba o podanie kodu do autoryzacji Minęło 90 sec od chwili transakcji Drajewski S., 2010, s. 34
Przepływy Przepływ sekwencji wskazuje kolejność, łączy dwa elementy, nie może mieć kliku wyjść i kilku wejść (ale z jednego elementu może wychodzić kilka przepływów i wchodzić kilka przepływów) Przepływ warunkowy Ustalenie szczegółów delegacji Do 500 km Od 500 km Rezerwuj bilet kolejowy Rezerwuj bilet lotniczy
Przepływy Przepływ domyślny Przepływ swobodny Przepływ wyjątku (aktywowany w wyjątkowych okolicznościach) Przepływ normalny Przepływ komunikatu Asocjacje Opis diagramu
Nazwa Obiekty Obiekty reprezentują dane i informacje, które są przetwarzane w procesie Wykorzystywane do prezentacji nie tyle przebiegu procesu, co sposobu przetwarzania Obiekt zbiór informacji, dokument, byt fizyczny Obiekty mogą być wewnętrzne ( w danym procesie) lub zewnętrzne (obiekty wejścia i wyjścia) Obiekty mają stan Faktura [Opłacona] Item-Aware Elements: obiekty danych, odwołania do obiektów danych, magazyny danych, parametry oraz dane wejściowe i wyjściowe
Obiekty Magazyn danych istnieje niezależnie od procesu np. obiekt bilet lotniczy, magazyn danych rejestr biletów http://www.bpmb.de/images/bpmn2_0_poster_pl.pdf Złożenie zlecenia przelewu Realizacja przelewu Przepływy obiektów: Dane transakcji -Asocjacje -Asocjacje skierowane ( w procesach ad hoc) Złożenie zlecenia przelewu Złożenie zlecenia przelewu Dane transakcji http://www.bpmb.de/images/b PMN2_0_Poster_PL.pdf
Obiekty WE WY Obiekty wejściowe i wyjściowe Obiekty zewnętrzne, muszą istnieć zanim rozpocznie się proces. Nie istotne czy są wykorzystywane na początku lub na końcu procesu. Muszą istnieć przed albo po nim Faktura [Opłacona] Kolekcje danych Odwołania do zbioru danych Inaczej Magazyn danych - Baza danych + płatności, można zaprezentować wejścia i wyjścia procesu jako Kolekcję danych
Proces akceptacji faktur Drajewski S., 2010, s. 62
Zdarzenia Zdarzenie wystąpienie w procesie biznesowym jakiejś sytuacji, która jest istotna dla jego przebiegu Zdarzenie: Odebranie lub wysyłanie jakiejś wiadomości Nastąpienie jakiegoś momentu Rozpoczęcie lub zakończenie jakiejś czynności Zdarzenia = spoiwo
Typy zdarzeń Zdarzenia początkowe Zdarzenia pośrednie Zdarzenia końcowe Zdarzenia przechwytują lub aktywują wyzwalacze: Przechwycenie wyzwalacza powoduje podejmowanie jakiś działań Aktywowanie wyzwalacza wskazanie, że jakiś ciąg działań prowadzi do określonego rezultatu. Pojawienie się rezultatu oznacza aktywowanie innego. Zdarzenia mogą występować na rożnych poziomach.
Źródło: bpmb.de/po ster
Drajewski S., 2010, s. 83
Czynności Zadania Podprocesy + Czynności wywołania Źródło: bpmb.de/po ster
Zastosowanie BPMN 1. Procesy Prywatne : niewykonywalne wykonywalne Pubiczne 3. Kolaboracje 4. Konwersacje 5. Choreografie
Źródło: www.omg.org/spec/bpmn/2.0, s.23 Procesy prywatne Ustal czy zamówienie jest kompletne Sprawdź zapis Wnioskoda wcy Ustal program rabatowy Zaakcep tuj albo odrzuć rabat Zanotuj akceptacje / odrzucenie Prywatne wewnętrzne Niewykonywalne - przedstawione w sposób ogólny, bez informacji koniecznych do implementacji zgodnie z semantyką języka wykonywania procesów ( BPEL, oparty na XML)
Procesy prywatne wykonywalne Źródło: www.omg.org/spec/bpmn/2.0, s.447
Procesy publiczne Publiczne zbiór czynności, które służą komunikacji z innymi uczestnikami (zewnętrznymi) Źródło: www.omg.org/spec/bpmn/2.0, s.24
Kolaboracje Kolaboracja to zbiór kilku (co najmniej dwóch) pul reprezentujących uczestników danego procesu biznesowego. Komunikacja między uczestnikami przepływ komunikatów
Źródło: www.omg.org/spec/bpmn/2.0, s.126-127 Konwersacje Konwersacje procesy z lotu ptaka
Choreografie Choreografia opisuje tylko interakcje zachodzące tylko między uczestnikami. W choreografii musi być co najmniej dwóch uczestników. Źródło: bpmb.de/poster
Choreografie Źródło: www.omg.org/spec/bpmn/2.0, s.317
Podsumowanie Źródło: bpmb.de/poster
Literatura do wykładu www.omg.org/spec/bpmn/2.0 Drajewski S., Zrozumieć BPMN. Modelowanie procesów biznesowych., One press, Helion, Gliwice, 2010 kompletny przewodnik po BPMN bpmb.de/poster
DZIĘKUJĘ