Wstęp
Produktem modelowania procesów biznesowych są jakieś diagramy, i z tym jesteśmy oswojeni. Od czasu do czasu można usłyszeć o symulacjach procesów, lecz to już jednak znacznie rzadziej. O symulacjach procesów pisze się mniej: Google Scholar (literatura naukowa) pokazuje ok. 5 mln publikacji na temat modelowania procesów biznesowych, na temat ich symulacji 2 mln mniej. Ale już Google („cały Internet”) odpowiednio: 2,3 mld. i 282 mln. Jak widać w powszechnym obiegu symulacje, jako temat, to trzy rzędy (tysiąckrotnie) mniejsza ilość tekstów! (wyszukiwane były hasła ang. 'business process modeling’ oraz 'business process simulation’). Zastanówmy się dlaczego i co można osiągnąć symulacją.
Modele procesów vs. ich symulacja
Za słownikiem:
model: abstrakcyjna konstrukcja wyrażona wzorami matematycznymi, schematem blokowym lub algorytmem, opisująca mechanizm zachowania się określonej rzeczywistości (systemu) i wyjaśniająca te zachowania ;
symulacja: sztuczne odtwarzanie właściwości danego obiektu lub zjawiska za pomocą jego modelu (s.j.p.)
Jak widać symulacja wymaga istnienia modelu, zaś sama symulacja to odtwarzanie właściwości tego co model opisuje. Tu ważna uwaga; symulacja nie jest realizacją procesu. Innymi słowy: symulacja procesu obsługi zamówień nie polega na obsłudze tych zamówień, polega na określeniu tego, które właściwości są symulowane. Gdy zbudujemy model, a ten może być mniej lub bardziej szczegółowy, możemy oszacować np. czas trwania i koszt. Pisząc model mamy tu na myśli schemat blokowy procesu i wszelkie inne, wymagane dane do obliczeń wraz z formułami obliczeniowymi.
Specyfikacja notacji BPMN pozwala na tworzenie modeli na trzech poziomach szczegółowości (abstrakcji rozdz. 2.2.1.):
- modele opisowe
- modele analityczne
- modele wykonywalne
Pierwsze dwa to modele CIM (Computation Independent Model, , ). Trzeci to model wykonywalny, uruchamiamy w systemach BPMS (Business Process Management Systems).
Wiele narzędzi do symulacji wymaga, do jej przeprowadzenia, modelu wykonywalnego czyli bardzo dokładnego (lub na zbliżonym, dużym, poziomie dokładności). Ta wymagana dokładność wynika, z tego że wiele narzędzi do symulacji wymaga opisania dokładnego scenariusza z dość dużą ilością danych (patrz przykład: Zastosowanie wskaźników metodologii Six Sigma do symulacji i przeprowadzenia eksperymentu współbieżnego rozwoju wyrobów w fazie przygotowania produkcji 1.)
Mało narzędzi do symulacji bazuje na modelach analitycznych, czy nawet tylko opisowych. W efekcie symulacje stają się bardzo kosztowne, po ich wykonaniu, modele symulacyjne nie są aktualizowane, w efekcie te prace, o ile w ogóle są podejmowane, nie są kontynuowane. Moim zdaniem to właśnie tłumaczy tak małe zainteresowanie nimi.
Symulacja na modelu analitycznym
W tej części pokażę i omówię symulację wykonaną na modelu analitycznym. Kluczową zaletą tego podejścia jest to, że do symulacji, można wybrać dowolny z modeli, jakie powstały w typowym projekcie audytu i analizy procesów biznesowych. Symulacja tu nie wymaga żadnej adaptacji tych modeli, czyli nie stanowi dodatkowego kosztu!
Warto wiedzieć, że obecna specyfikacja BPMN 2.0.2. z Grudnia 2013 (rozdz.2.2.1.), z powodu tego, że modele wykonywalne są coraz rzadziej tworzone, zawiera zapowiedź uporządkowania zasad tworzenia modeli opisowych i analitycznych:
Analytic contains all of Descriptive and in total about half of the constructs in the full Process Modeling Conformance Class. It is based on experience gathered in BPMN training and an analysis of user-patterns in the Department of Defense Architecture Framework and planned standardization for that framework.
Model procesu
Do zaprezentowania symulacji stworzyłem model typowego procesu realizacji zamówień na produkty, podlegające ewentualnej kastomizacji (personalizowane przedmioty, oprogramowanie, itp.).
Powyższy diagram jest (wierzę) łatwy w zrozumieniu i interpretacji (legenda symboli BPMN). Wszelkie ewentualne detale zawierają procedury napisane do każdej aktywności, w tym szablony i opisy każdego typu dokumentu.
Załóżmy że potrzebą jest szybkie, bieżące określanie kosztu, czasu trwania i obciążenia zasobów w procesie obsługi zapytań i zamówień. Podstawowym tu założeniem jest to, że mamy realne dane opisujące każdą czynność i zasobów. Czy to dobre założenie? Jeżeli mamy wdrożony controlling lub co najmniej poprawnie (czyli w oparciu o modele procesów) metodę ABC zarządzania kosztami, to owszem. Jeżeli nie, wymagana jest niezbyt kosztowna obserwacja i pomiary.
Przygotowanie i wykonanie symulacji
Do symulacji potrzebujemy wyłącznie dane empiryczne (lub szacowania) podstawowych atrybutów aktywności: czas trwania i koszt, oraz listę wymaganych zasobów. Nic więcej. Symulacja ta nie służy wyrafinowanym akademickim analizom (takich w zasadzie biznesowo sie nie robi) a szybkiemu pozyskaniu danych do podejmowania decyzji.
Pierwszy krok to okreslenie wariantów i liczby ich występoiwania
Nasz proces ma dwa możliwe scenariusze. Na powyższym ekranie widać podświetlony do konfiguracji scenariusz obsługi zamówień standardowych. W tabeli u dołu po lewej stronie określamy spodziewaną liczbę wystąpień w wartościach bezwzględnych lub w procentach. Drugi scenariusz jest konfigurowany analogicznie.
Teraz do przeprowadzenia symulacji musimy określić jedynie:
- koszt i czas trwania każdej aktywności (źródłem jest księgowość lub obserwacja i pomiar),
- ustawiamy liczbę wykonawców (role) oraz zasoby.
Powyżej ekran służący do wprowadzenia kosztu i czasu trwania aktywności (zgodnie z BPMN zasoby w procesie konsumuje wyłącznie aktywność). Robimy to dla każdej aktywności osobno. Tu zadeklarowałem po jednej osobie na rolę.
Po uruchomieniu symulacji, już po kilkunastu sekundach wiem, że obsługa 350 zamówień to pracochłonność 42 dni 12 godzin i 50 minut, a łączny koszt to 256.500zł. Założono, że każdą rolę pełni tylko jedna osoba. Wśród kilku raportów poniżej raport kolejek czyli łączny czas trwania zaangażowania dla każdej aktywności.
Podsumowanie
Powyższy model i symulacja są bardzo użyteczne przy podejmowaniu decyzji. Warto wiedzieć, że parametryzacja i szukanie optymalizacji procesu, to nie tylko czas i dane finansowe (taką symulację, przy założeniu niezmienności procesu, można zrobić w arkuszu kalkulacyjnym, jednak każde przekomponowanie procesu wymaga opracowania nowego arkusza).
Mając wiele różnych procesów (model procesów organizacji), uporządkowane repozytorium procesów i aktywności, oraz możliwość przekomponowanie procesu lub natychmiastowe wygenerowanie nowego procesu to-be. Dostajemy narzędzie, którego arkuszem kalkulacyjnym nie zastąpimy, a wyniki tu otrzymamy w ciągu kilkunastu sekund.
Możliwość testowanie wariantów i podejmowanie decyzji oraz bieżące analizy kosztów i harmonogramu dla zmiennych warunków realizacji dedykowanych usług, stają się nieocenione. Jak widać, mając już modele procesów, wzbogacenie ich o możliwość praktycznie natychmiastowej oceny kosztów nie tylko czasu trwania procesu, ale także przeliczenia dla różnych wariantów, różnej liczby zdarzeń i proporcji między wariantami, staje sie proste i nie zajmuje zbyt wiele czasu.
Stosowanie symulacji w bieżącym zarządzaniu organizacją nadal nie jest popularne. Powodów tego stanu rzeczy upatruję w braku wiedzy o ofercie rynkowej produktów tego typu, a generalnie w powszechnym tworzeniu zbyt szczegółowych modeli procesów, szybko zarzucanych bo zbyt kosztownych w utrzymaniu.
_
1 Mgr inż. Marcin Paprocki, Uniwersytet Ekonomiczny w Krakowie, Wydział Towaroznawstwa, Katedra Technologii i Ekologii Wyrobów, paprockm@uek.krakow.pl