Webinaria: Modelowanie procesow i architektura systemow | Bpmn

Jak szybko zamodelować proces?

Udostępnij!

TRANSKRYPCJA:

Dzień dobry, wita Państwa Radosław Nowak. W dzisiejszym filmiku chciałbym pokazać Państwu w jaki sposób można szybko zamodelować proces wykorzystując do tego notację BPMN oraz przeglądarkowe narzędzie bpmn.io.

 

W przeglądarce w pasku wpisujemy bpmn.io, wybieramy opcję Try online i na nowej karcie opcję Create. W tym momencie mamy już pełną możliwość modelowania wykorzystując do tego obiekty, które przewiduje specyfikacja bpmn. Startujemy z kółeczkiem, czyli obiektem zdarzenia. Chciałbym na szybko zamodelować proces udzielania odpowiedzi na zapytanie ofertowe naszego klienta. Aktywatorem procesu będzie zapytanie, pierwszą aktywnością tego mojego projektowanego procesu będzie analiza owego zapytania. Dlaczego?

 

Dlatego, że chcę dopuścić taką możliwość, w związku z tym wybieram opcję alternatywy rozłącznej, w ramach której mogłoby się okazać, że nie mam możliwości realizowania tego czegoś czego życzy sobie klient lub tego czegoś o co klient pyta. W związku z tym pytam czy możliwy do realizacji; jeżeli nie, mój proces się kończy, natomiast jeżeli tak, będę chciał coś zrobić. I tutaj sobie opisuję tak, mam ścieżkę pozytywną.

 

Chciałbym żeby moim następnym obiektem nie było zadanie tylko żeby był to podproces; w związku z tym zmieniam opcję na podproces rozwinięty, proces osadzony rozwinięty, chcę sobie troszeczkę miejsca tutaj zrobić gdyż wewnątrz tego mojego procesu chcę umieścić kilka zadań. Pierwszym zadaniem w ramach procesu, ten podproces dobrze byłoby nazwać, ja go sobie nazwę jako „analiza wymagań klienta”. W ramach tego podprocesu będę chciał mieć kilka aktywności. Pierwszą aktywnością będzie zapoznanie się z profilem klienta, następnie analiza potrzeb klienta, wypadałoby również z tym klientem porozmawiać.

 

Ok, czy to wszystko? No, proszę Państwa, jeżeli analizuję wymagania klienta, jeżeli rozmawiam z tym klientem, myślę, że dobrze byłoby uwzględnić opcję w tym moim projektowanym procesie, że po tych rozmowach z klientem albo wszystko będzie ok, albo, jeżeli nie, to będę musiał wrócić do poprzedniego kroku i ponownie przeanalizować potrzeby klienta gdyż po rozmowach okazało się, że to co wydawało mi się na podstawie analizy zapytania ofertowego oraz zapoznania się z profilem klienta, niestety było czymś innym niż wyobrażał sobie ten nasz klient. W związku z tym damy sobie tutaj bramkę, to będzie również bramka alternatywy i pytam czy ustalono potrzeby. Jeżeli nie, to chcę sobie tutaj pokazać, no to wracamy do analizy potrzeb tego naszego klienta.

 

To będzie ścieżka „nie”. Co ze ścieżką „tak”? No, proszę Państwa, tutaj, jeżeli tak, no to chcemy wyjść na zewnątrz podprocesu, ale nie możemy tego zrobić bezpośrednio gdyż specyfikacja nam na to nie pozwala, musimy dać tutaj „end event” żeby mieć do czego poprowadzić sequence pro; ale znowu, opierając się na specyfikacji, jeżeli mamy „end event”, musimy uzupełnić sobie ten nasz proces o „start event”. Niektórzy z Państwa z pewnością mogli zobaczyć, że na początku usunąłem ten obiekt właśnie po to żeby teraz przemycić tę informację dla Państwa, że trzeba, musimy umieszczać w parach te zdarzenia.

 

Może para to duże słowo; jeżeli istnieje „end event”, to wszystkie pozostałe ścieżki muszą być również zakończone lub rozpoczęte „start” lub też „end event”. Dobrze, proces mamy zamknięty, teraz możemy wyjść na zewnątrz. W ramach tego procesu teraz już wiemy, że ustalono te potrzeby. No, chcielibyśmy wobec tego przygotować ofertę, nasza oferta jest już przygotowana, a skoro jest przygotowana, chcielibyśmy ją wydrukować, w ramach dokumentów, które tu będziemy drukować będzie oferta, będzie umowa, a jeżeli tak, to chcemy ją podpisać i nasz proces kończy się szczęśliwie.

 

Proszę Państwa – ktoś mógłby powiedzieć „no dobrze, faktycznie udało nam się szybko zamodelować proces, ale trochę nam brakuje no bo nie wiemy w jakiej firmie, gdzie się to dzieje, jaki byt jest wykonawcą tego naszego podprocesu”. Możemy sobie to szybko uzupełnić wybierając basen po lewej stronie. Mamy „create pool” i z automatu obejmujemy całość tego naszego procesu. Skoro jest nasz basen, wypadałoby go jakoś nazwać; to będzie firma „Uśmiech”, choć teraz wygląda trochę jak parasol. Ktoś mógłby powiedzieć – dobrze, ale trochę mało, może wypadałoby jeszcze tutaj umieścić rolę pracownika.

 

No, można, można byłoby podzielić te aktywności pomiędzy role, tak jak mamy możliwość przy stosowaniu BPMN-a, notacji BPMN, można byłoby basen podzielić na poszczególne role, na poszczególne tory. Ja tego na razie nie będę robił, natomiast dla tych osób, które chciałyby, no to umieszczę jeszcze tutaj dodatkowego uczestnika, tym moim uczestnikiem będzie klient. Nie będziemy modelować tego co dzieje się u klienta; ten nasz model będzie takim klasycznym diagramem typu abstrakt. Będę chciał jeszcze pokazać interakcję tego mojego procesu z procesem klienta, czy też z innym uczestnikiem procesu, czyli tym naszym klientem.

 

Wypadałoby tutaj pokazać, że to od naszego klienta informacja inicjuje nasz proces. Żeby było ładniej i właściwie, zmienimy typ tego zdarzenia na kopertkę, kopertka jasna, wstecz, rozpoczynamy nasz proces. Zapytanie – w jaki sposób dotarła do nas informacja? Wykonujemy aktywność pod tytułem „analiza zapytania ofertowego”, czy możliwe do realizacji. Nie, powiedzieliśmy sobie, i w tym momencie kończy się nasz proces. Wypadałoby tego naszego klienta również w jakiś sposób poinformować o tym, że, no, niestety nie tym razem, proszę bardzo. Mamy możliwość również pokazania pewnych elementów w ramach tego naszego podprocesu „analiza wymagań klienta”.

 

Możemy pokazać, że również w ramach tego podprocesu my komunikujemy się z tym klientem i wymieniamy w jakiś sposób informacje. To będzie informacja dwukierunkowa, tutaj możemy to sobie w dowolny sposób przemieszczać, te strzałeczki; kolejność tych strzałek nie jest istotna, my tutaj pokazujemy tylko i wyłącznie, że istnieje przepływ komunikacji pomiędzy naszym podprocesem „analiza wymagań klienta”, a pulem klienta, czyli tym naszym uczestnikiem procesu. No dobrze, po tej analizie wymagań klienta, jeżeli ustalono potrzeby, wychodzimy z tego podprocesu.

 

Jeżeli nie ustalono tych potrzeb, wracamy do analizy i, tak jak mówiliśmy, kręci się nam ten podproces, są te aktywności z podprocesów wykonywane sekwencyjnie. Jeżeli trzeba, kilka razy, aż do poprawnego ustalenia potrzeb klienta. Tutaj w ramach naszego procesu zakładamy, że tak długo się z tym klientem próbujemy dogadać aż będzie to skutkowało podpisaniem umowy. Oczywiście moglibyśmy tutaj założyć, że wcale tak nie jest i na przykład po kilku iteracjach kiedy stwierdzimy, że niestety, nie jesteśmy w stanie mimo wszystko spełnić tych wymagań klienta, możemy zakończyć ten nasz proces. Na razie tego tutaj nie mamy, nasz proces projektujemy nieco inaczej.

 

No dobrze – przygotowujemy ofertę, mamy wydruk dokumentów, podpisujemy umowę. Tutaj w ramach podpisania umowy wypadałoby również pokazać tę interakcję, w jedną i drugą stronę; proszę bardzo, i mamy nasz proces zakończony. Moglibyśmy tutaj jeszcze zapełnić sobie ten „end event” jako kopertkę, gdzieś ta podpisana umowa lądowałaby na przykład w jakimś dziale, który zajmuje się archiwizacją umów. W ten sposób szybko i sprawnie zamodelowaliśmy nasz proces.

 

Gdybyśmy chcieli, moglibyśmy jeszcze dodatkowo go wzbogacić o typy aktywności i ja akurat tego nie będę robił gdyż chciałem pokazać Państwu w jaki sposób możemy w miarę sprawnie zamodelować proces; gdybyśmy chcieli, można byłoby tutaj jeszcze wybierać sobie odpowiednie typy zadań. Jeżeli analiza zapytania ofertowego jest działaniem bez wsparcia jakichś systemów, no to wybieramy sobie manual task. Jeżeli zapoznanie się z profilem klienta będzie dokładnie takim samym zadaniem, wybieramy manual task. Analiza potrzeb klienta – może być manual task. Rozmowy z klientem – manual task. Przygotowanie oferty – załóżmy, że mamy w organizacji jakiegoś CM’a i chcemy pokazać, że to ma być user task, czyli interakcja człowiek-system.

 

Jeżeli na podstawie tak przygotowanej oferty nasz system z automatu wydrukuje nam dokumenty, możemy wybrać sobie service task lub zadanie skryptowe, ja wybiorę sobie service task. Podpisanie umowy będzie manual taskiem i proszę bardzo, znowu, szybko i sprawnie. Proszę Państwa, to narzędzie, które tutaj Państwu pokazuję nie służy tylko i wyłącznie do takiego narysowania jednorazowego tego naszego procesu i koniec przygody z tym konkretnym procesem. Fajne jest to, że możemy ten proces zapisać i możemy go zapisać nie tylko w formie obrazka,ale możemy go zapisać również w ramach takiego rozszerzenia bpmn, ale to jest, proszę Państwa, nic innego jak xml.

 

W związku z tym, gdybyśmy chcieli sobie otworzyć ten nasz proces i go w jakiś sposób wyedytować, wchodzimy na stronę bpmn.io, ponownie, klikamy „try online” i tym razem nie wybieramy opcji „create”, tylko wybieramy opcję „otwórz”. Otwieramy diagram albo nasz własny, który gdzieś wcześniej sobie zapisaliśmy albo diagram, który ktoś nam przysłał do weryfikacji, do sprawdzenia, klikamy „otwórz” i otwieramy diagram, który wcześniej zapisaliśmy lub, tak jak mówiłem, który ktoś nam podesłał do weryfikacji.

 

Oczywiście mam możliwość edytowania tego diagramu, zmiany, nie ma tutaj z tym żadnego problemu. Myślę, że na tym możemy sobie zakończyć tę naszą krótką prezentację narzędzia i notacji. Jak Państwo widzicie, w miarę szybko można zamodelować nasz proces, ja zapraszam Państwa na szkolenia do Altkom Akademii, bardzo Państwu dziękuję za uwagę, pozdrawiam, Radosław Nowak.