Dr inŝ. Tomasz WIATR Politechnika Poznańska MODELOWANIE I ANALIZA PRZEDSIĘWZIĘĆ W SYSTEMIE PERTMASTER Słowa kluczowe: modelowanie przedsięwzięć, harmonogramowanie Streszczenie Referat stanowi zwięzły opis potencjału programu Pertmaster w zakresie modelowania i analizy przedsięwzięć dowolnego typu i jest częścią szkolenia z jego obsługi organizowanego podczas konferencji Ryzyko 2006 na zaproszenie jej organizatorów. Referat ma charakter popularyzatorski i jego celem jest upowszechnienie systemu, gdyŝ stanowi on narzędzie o wielu walorach. Wykorzystanie tego programu nie zamyka drogi do innych systemów w praktyce, gdyŝ program Pertmaster jest z nimi zgodny będąc równocześnie systemem bardziej zaawansowanym. 1. Wprowadzenie Modelowanie i analiza przedsięwzięć moŝe mieć cel decyzyjnoplanistyczny, cel badawczo-poznawczy lub oba te cele jednocześnie dając w efekcie narzędzie naukowego zarządzania. Jego elementem są systemy komputerowe, nie wiele jest jednak takich, które wyraŝają dąŝenie do pogodzenia obu powyŝszych celów. W efekcie spotyka się programy zdatne do wspomagania elementarnego procesu kierowniczego lub systemy przydatne jedynie dla wysokospecjalizowanych analityków. Program Pertmaster w znacznym zakresie godzi powyŝsze cele oferując ponadto zgodność z popularnymi systemami komputerowymi wspomagającymi zarządzanie przedsięwzięciami. Nadaje się dobrze dla potrzeb praktyki zarządzania złoŝonymi przedsięwzięciami i dla potrzeb naukowo-dydaktycznych łącząc w sobie funkcje kilku programów.
Celem referatu jest zwięzłe przedstawienie moŝliwości programu Pertmaster z jednoczesnym wskazaniem cech szczególnych stanowiących o atrakcyjności tego programu, jako systemu samodzielnego. Referat jest częścią szkolenia organizowanego podczas konferencji Ryzyko 2006, na zaproszenie jej organizatorów. W dalszej części opisano aspekty modelowania i danych oraz analizy i wyników. 2.1. Modelowanie struktury procesów Podstawowe znaczenie w kaŝdym modelu sieciowym mają procesy, których czas trwania zadaje uŝytkownik i zdarzenia zwane kamieniami milowymi, których czas jest zerowy. W programie są teŝ dostępne, tzw. procesy hamakowe, których czas trwania wynika z terminów zakończenia ich poprzedników oraz terminów rozpoczęcia ich następników. Procesy moŝna grupować tworząc procesy sumaryczne (tzw. zadania zbiorcze), których czas trwania jest wynikiem obliczeń ścieŝki krytycznej procesów składowych (podzadań). Ich grupowanie moŝe teŝ ulegać dynamicznym zmianom. KaŜdy z procesów moŝe posiadać własny kalendarz. Jest moŝliwe definiowanie dowolnych podjednostek dnia w zakresie 1-100. Rys. 1. Prosty przykład wykorzystujący wszystkie typy procesów i powiązań.
Cechą oryginalną są procesy typu Monitor, które pozwalają śledzić daty rozpoczęcia i zakończenia oraz czasy trwania wybranych procesów. Wybór dokonywany jest za pomocą opcji definiowania filtru procesu, który zawiera pola i operatory dające duŝą swobodę definiowania kryteriów. Na szczególną uwagę zasługują procesy monitorujące pracę wybranych zasobów, w tym takŝe zasobów, które zdefiniowano tylko na potrzeby monitorowania procesów. Za ich pomocą moŝna przedstawiać okresy wykorzystania wskazanych zasobów i obrazować to jako proces. Model sieciowy tworzony jest w konwencji proces na węźle, obowiązującej w większości współczesnych systemów komputerowych. Program oferuje model dwupunktowy dając moŝliwość wprowadzania powiązań wielokrotnych między procesami. Dostępne są 4 standardowe typy powiązań (FS, SS, FF, SF) ze zwłoką dodatnią i ujemną, w tym takŝe wyraŝoną w procentach czasu trwania procesu. MoŜna wprowadzać powiązania między planami a takŝe łączyć te plany tymczasowo. Model sieciowy moŝe być teŝ zaimportowany wprost z innych programów. 2.2. Modelowanie struktury zasobów Drugim, obok procesów, składnikiem modelu są zasoby, które przypisywane są do procesów róŝnego typu w róŝny sposób. Program Pertmaster na narzuca interpretacji zasobom i moŝliwe jest modelowanie dowolnych zasobów odnawialnych i nieodnawialnych oraz ich relacji. Zasoby podlegające zuŝyciu mogą być naliczane skokowo na początku procesu, na końcu lub w sposób ciągły, liniowo. O potencjale systemu stanowi moŝliwość swobodnego definiowania podzasobów tworzących strukturę hierarchiczną. Struktura podzasobów moŝe być złoŝona i wielopoziomowa, dając moŝliwość modelowania wielu zjawisk. Jakkolwiek kilka programów teŝ posiada opcję zasobów hierarchicznych (Primavera Project Planner, Team Plan, Planista), to jednak nie ma tam swobody ich modelowania z uwagi na interpretację przyjętą arbitralnie przez ich producentów. Istotną cechą programu Pertmaster jest moŝliwość przypisywania zasobów procesom przy uŝyciu jednej z formuł wbudowanego arkusza kalkulacyjnego o składni @Dem("KOD ZASOBU",U). Usprawnia ona wprowadzanie duŝych ilości danych umoŝliwiając ponadto wstawianie całych list pochodzących z wielu innych programów. Wystarczy jedynie uprzednio zdefiniować stosowne zasoby i dopasować układ tabel aby zawartość wybranych kolumn stała się automatycznie alokacją zasobów.
Szczególnym zagadnieniem w zakresie modelowania przedsięwzięć są aspekty finansowe. W większości programów analiza tych aspektów ogranicza się do analizy kosztów. Takie uproszczone podejście ułatwia elementarne obliczenia, uniemoŝliwiając jednak analizy zaawansowane. W programie Pertmaster moŝliwe jest takie podejście uproszczone a poza tym moŝna definiować własne typy zasobów, którym moŝna nadawać dowolną interpretacją, co sprawia Ŝe modelowanie moŝe mieć charakter abstrakcyjny i twórczy. System wykrywa przy tym pętle i inne błędy. 3.1. Metody matematyczne Podstawową metodą analityczną jest metoda ścieŝki krytycznej, która pozwala wyznaczyć całkowite i swobodne zapasy czasu operując przy tym pojęciem podkrytyczności i nadkrytyczności. Procesy, jak równieŝ zasoby, mogą posiadać własne kalendarze. Poza tym procesom moŝna nadawać ograniczenia terminowe (constraints) a takŝe opcjonalny status just in time, który pozwala automatycznie opóźniać proces o czas równy swobodnemu zapasowi czasu, którym ten dysponuje. Z uŝyciem innych opcji moŝliwe jest równieŝ dopasowywanie wzajemne czasów procesów (streching) w ciągach poprzedników i następników. Istotne znaczenie w programie posiada metoda zdyskontowanych strumieni pienięŝnych (DCF) pozwalająca na obliczanie zaktualizowanej wartości netto (NPV) dla zadanej stopy dyskontowej oraz obliczanie wewnętrznej stopy zwrotu (IRR) dla róŝnych przedziałów analizy. Poza tym, dzięki analizie zasobów hierarchicznych, moŝliwe jest bilansowanie zasobów w skali czasu. Niezwykle znaczącym narzędziem programu jest wbudowany arkusz kalkulacyjny oferujący ponad czterdzieści funkcji obliczeniowych (formuł) z licznymi parametrami, w tym takŝe funkcje warunkowe @if(cond, TRUE, FALSE) z zagnieŝdŝaniem. Argumentami funkcji mogą być teksty, czasy, daty oraz liczby, znajdujące się w kolumnach predefiniowanych oraz w innych kolumnach obliczeniowych (kolumny Calculated Value). Funkcje mają postać kolumnową a operacje między wierszami obrazującymi procesy są dostępne na poziomie procesów sumarycznych dla których wyznaczać moŝna wprost wartości funkcji lub obliczać je na podstawie podprocesów przez sumowanie, obliczanie średnich arytmetycznych a takŝe średnich waŝonych, których wagi znajdują się w innych kolumnach. Poszerza to potencjał obliczeniowy systemu w kierunku analiz indywidualnych.
3.2. Metody heurystyczne Poza powyŝszymi metodami ścisłymi program oferuje równieŝ metody o charakterze heurystycznym. Istotne znaczenie posiada algorytm niwelowania przekroczeń dostępności zasobów, a więc tzw. leveling, który bywa stosowany do wyrównywania zapotrzebowania na zasoby. MoŜna przy tym zadawać róŝnorodne priorytety parametryzując tym samym proces dyslokacji procesów w harmonogramie w oparciu o zadane ograniczenia dostępności wybranych zasobów i ograniczenia terminowe wybranych procesów oraz całego przedsięwzięcia. Dostępność zasobów moŝe być skokowo zmienna w czasie, co poszerza zakres analiz. Podczas analizy program moŝe przerywać procesy (splitting) nie przekraczając zadanej, maksymalnej liczby podziałów, maksymalnego czasu trwania procesów lub minimalnej przerwy między nimi. Program umoŝliwia śledzenie kolejnych kroków powyŝszej analizy heurystycznej oraz zapis efektów w postaci scenariuszy. Wyniki dyslokacji są przez program prezentowane, jako terminy preferowane w odróŝnieniu od terminów najwcześniejszych oraz najpóźniejszych będących wynikiem analizy metodą ścieŝki krytycznej. Terminy manualnej dyslokacji są przez program odróŝniane od wyników dyslokacji zalgorytmizowanej. 3.3. Metody symulacyjne W programie dostępna jest symulacja oparta na metodzie Monte Carlo i jej udoskonalonej wersji Latin Hypercube włącznie z algorytmem wyznaczania zbieŝności na podstawie jednego z trzech kryteriów. Podczas symulacji program moŝe uwzględniać zadane zaleŝności korelacyjne między procesami i zasobami. Symulacja w ujęciu czasowym oraz kosztowym była tematem referatów na poprzednich konferencjach Ryzyko 2004 i 2005 w odniesieniu do ówczesnych wersji systemu Pertmaster, który ewoluuje, zyskując nowe metody i makroinstrukcje. Zastosowanie symulacji połączone jest z wymienionymi metodami matematycznymi, a ponadto moŝliwe jest jednoczesne przeprowadzanie symulacji probabilistycznej oraz dyslokacji heurystycznej tak, aby kaŝdy przebieg symulacji był dopuszczalny w sensie spełnienia ograniczeń zasobowych i terminowych. Poszczególne fazy tej analizy mogą być na ekranie śledzone krokowo prowadząc ostatecznie do wyznaczenia szeregu syntetycznych charakterystyk liczbowych i wskaźników (np. criticality, sensitivity, cruciality index) i licznych rozkładów prawdopodobieństwa.
4. Podsumowanie Przedstawione informacje stanowią zwięzły przewodnik, który jest niezbędny aby móc dostrzec pełen potencjał złoŝonego systemu, jakim jest Pertmaster. Otwartość i elastyczność tego systemu jest oczywiście okupiona pewnymi konsekwencjami, a więc głównie koniecznością wprowadzenia licznych danych oraz sparametryzowania analiz. WaŜne jest jednak, iŝ moŝna korzystać z opcji zestawu podstawowego, które są analogiczne do opcji znanych z takich popularnych programów, jak Microsoft Project, ale równieŝ z takich, jak Primavera Project Planner. Podobieństwo i zgodność dotyczy zarówno funkcjonalności systemu, jak równieŝ struktur danych (np. opcje struktur bazodanowych). Celem referatu było wskazanie moŝliwości systemu ułatwiające nauczanie obsługi systemu, np. na poziomie studiów magisterskich. Modelowanie kompleksowe przedsięwzięć i zjawisk z nimi związanych, jakkolwiek przyjazne w tym systemie, wymaga ugruntowanej wiedzy z zakresu modelowanych zagadnień. Bezspornym jest fakt, iŝ dopiero na zaawansowanym poziomie dostrzega się zalety systemu Pertmaster. Uzasadnia to traktowanie programu Pertmaster, równieŝ jako programu uzupełniającego dla systemów popularnych, w których przeprowadza się standardowe modelowanie zmierzające do sporządzenia harmonogramu, aby jego analizę następnie kontynuować w systemie Pertmaster. MODELLING AND ANALYSIS OF PROJECTS IN PERTMASTER SOFTWARE SYSTEM Summary Presented paper is brief description of Pertmaster software system potential, in the aspect of modelling and analysis of projects of all types. This paper is part of training organised on the conference Risk 2006 with invitation of conference organisers. Paper has popular form and main purpose of paper is system popularising, because Pertmaster have many advantages. Use of Pertmaster does not close us for other PMS software systems, because Pertmaster software system is highly compatible with them, but simultaneously is more advanced.