Modelowanie systemu
informatycznego
Operacje zarządcze w procesie
modelowania
Zadania menedżera
.
• Zadaniem menedżera przedsięwzięcia programistycznego
jest zapewnienie, że przedsięwzięcie mieści się w
narzuconych ograniczeniach i prowadzi do
dostarczenia oprogramowania, które przyczyni się do
realizacji celów gospodarczych
• Profesjonalna inżynieria oprogramowania zawsze podlega
ograniczeniom budżetowym i czasowym
Czynności menedżera
• Opracowanie oferty
• Planowanie i tworzenie harmonogramu
• Szacowanie kosztów
• Monitorowanie i ocenianie
• Wybór i ocena personelu
• Opracowywanie raportów i prezentacji
Problemy z personelem
• Może się nie udać znaleźć idealnych ludzi do pracy:
– Budżet może nie pozwalać na zatrudnienie drogich specjalistów
– Może brakować specjalistów
– Szefostwo może wymagać, aby uczestnicy przedsięwzięcia uczyli
się w jego trakcie
• Menedżerowie muszą pracować w takich warunkach,
ponieważ wciąż brakuje dobrze wykształconych ludzi
Planowanie przedsięwzięć
• Najbardziej czasochłonna czynność w pracy
menedżera
• Czynność ciągła od początkowych faz aż do
dostarczenia systemu.
• Plany powinny być ciągle uaktualniane wraz z
nadchodzącymi nowymi informacjami
• Wiele różnych typów planów może być opracowanych w
celu wsparcia planu głównego, który jest skoncentrowany
na czasie i budżecie
Typy planów projektu
Plan
Opis
Plan jakości
Procedury zapewniające jakość i
standardy
Plan zatwierdzania
Podejście, zasoby i harmonogram
zatwierdzania systemu
Plan zarządzania konfiguracjami
Zarządzanie konfiguracjami i
używane struktury
Plan pielęgnacji
Wymagania pielęgnacji
Plan rozwoju umiejętności personelu Jak będą wzrastały umiejętności
personelu
Plan przedsięwzięcia
• Wprowadzenie
• Organizacja przedsięwzięcia
• Analiza zagrożeń
• Wymagania stawiane zasobom sprzętowym i
programowym
• Podział pracy
• Harmonogram przedsięwzięcia
• Mechanizmy monitorowania i składania raportów
Organizacja etapów
• Czynności w przedsięwzięciu powinny być zaplanowane
tak, aby ułatwić ocenę przebiegu przedsięwzięcia
• Kamienie milowe są punktami kończącymi etap
przedsięwzięcia
• Raporty formalne to wyniki przedsięwzięcia przekazywane
klientowi
• Model kaskadowy przedsięwzięcia ułatwia wyznaczenie
kamieni milowych
Kamienie milowe
w procesie określenia wymagań
Studium
wykonalności
Analizowanie
wymagań
Tworzenie
prototypu
Studium
projektowe
Specyfikowanie
wymagań
Raport
wykonalności
Wymagania
użytkownika
Raport
oceniający
Projekt
architektoniczny
Wymagania
systemowe
CZYNNOŚCI
ETAPY
Tworzenie harmonogramu
przedsięwzięcia
• Podziel przedsięwzięcie na zadania i oszacuj czas i
zasoby konieczne do wykonania każdego z nich
• Zorganizuj zadania równolegle aby najlepiej wykorzystać
ludzi i zasoby
• Zminimalizuj zależności pomiędzy zadaniami, aby
najlepiej wykorzystać czas przypadający na każde z nich
• Wszystko zależy od umiejętności i intuicji zarządzającego
projektem
Proces tworzenia
harmonogramu przedsięwzięcia
Zidentyfikuj
zależności między
czynnościami
Zidentyfikuj
czynności
Oszacuj zasoby
dla czynności
Przydziel osoby
do czynności
Opracuj grafy
przedsięwzięcia
Wymagania
stawiane
oprogramowaniu
Wykresy czynności
i wykresy paskowe
Problemy
• Szacowanie złożoności problemów i przez to
czasu koniecznego na ich rozwiązanie jest trudne
• Produktywność nie jest proporcjonalna do liczby
pracowników
• Dodawanie pracowników spowalnia
przedsięwzięcie ze względu na czas komunikacji
• Niespodziewane zdarzenia zawsze się pojawiają.
Utrzymuj margines czasowy
Wykresy paskowe i sieci działań
• Notacja graficzna służąca do przedstawiania
harmonogramów
• Pokazuje podział przedsięwzięcia na zadania.
Zadania nie powinny być duże. Tydzień albo dwa jest
wystarczające.
• Sieć działań pokazuje zależności i ścieżkę
krytyczną
• Wykres paskowy pokazuje harmonogram w
terminach dni roku kalendarzowego
Czasy trwania zadań i ich zależności
Zadanie
Czas trwania (dni)
Zależy od
T1
8
T2
15
T3
15
T1 (M1)
T4
10
T5
10
T2, T4 (M2)
T6
5
T1, T2 (M3)
T7
20
T1 (M1)
T8
25
T4 (M5)
T9
15
T3, T6 (M4)
T10
15
T5, T7 (M7)
T11
7
T9 (M6)
T12
10
T11 (M8)
Sieć działań
start
T2
M3
T6
Finish
T10
M7
T5
T7
M2
T4
M5
T8
4/7/99
8 days
14/7/99
15 days
4/8/99
15 days
25/8/99
7 days
5/9/99
10 days
19/9/99
15 days
11/8/99
25 days
10 days
20 days
5 days
25/7/99
15 days
25/7/99
18/7/99
10 days
T1
M1
T3
T9
M6
T11
M8
T12
M4
Diagram paskowy
4/7
11/7
18/7
25/7
1/8
8/8
15/8
22/8
29/8
5/9
12/9
19/9
T4
T1
T2
M1
T7
T3
M5
T8
M3
M2
T6
T5
M4
T9
M7
T10
M6
T1 1
M8
T12
Start
Finish
Przydział personelu
4/7
11/7
18/7
25/7
1/8
8/8
15/8
22/8
29/8
5/9
12/9
19/9
T4
T1
T2
M1
T7
T3
M5
T8
M3
M2
T6
T5
M4
T9
M7
T10
M6
T1 1
M8
T12
Start
Finish
Planowanie
• Planowanie uwzględnia
– czas
– zasoby ludzkie
– zasoby materialne (techniczne)
– zasoby finansowe
• Powodzenie realizacji projektu wymaga znajomości
– wszystkich zadań wchodzących w skład projektu
– czasu realizacji czynności (zdefiniowanie lub oszacowanie)
– wzajemnych zależności pomiędzy wszystkimi zadaniami
(kolejności)
• Podstawowe
techniki planowania
– metoda graficzna Gantta
– metoda CPM
– metoda PERT
Etapy wykonywania harmonogramu
• Podział projektu na czynności
• Określanie sekwencji czynności
• Szacowanie czasu trwania czynności
• Tworzenie harmonogramu
• Kontrola harmonogramu
Podział projektu na czynności
• Identyfikacja czynności, które muszą zostać
wykonane w celu zrealizowania projektu
• Work Breakdown Structure (WBS) – Struktura
Podziału Pracy (SPP)
• Podziału projektu na poszczególne logicznie
spójne zadania – łatwiejsze do zarządzania
– Struktura hierarchiczna
– Wykorzystuje metodologię top-down
– Definiuje całkowity zakres projektu
– Fundamentalne do planowania projektu i jego śledzenia
Work Breakdown Structure (WBS)
•
Pokazuje na jakie części można podzielić projekt
•
Jaki zestaw części niższego poziomu tworzy daną część
wyższego poziomu
•
Definiuje projekt jako pewną hierarchię elementów
związanych z produktami wytworzonymi i w trakcie realizacji
projektu
Podział projektu na czynności
• Przykład Work Breakdown Structure (WBS)
WBS w formie tabelarycznej
1.0 Concept
1.1 Evaluate current systems
1.2 Define Requirements
1.2.1 Define user requirements
1.2.2 Define content requirements
1.2.3 Define system requirements
1.2.4 Define server owner requirements
1.3 Define specific functionality
1.4 Define risks and risk management approach
1.5 Develop project plan
1.6 Brief web development team
2.0 Web Site Design
3.0 Web Site Development
4.0 Roll Out
5.0 Support
Jaki jest cel WBS?
• Celem WBS jest
podzielenie całego projektu na
mniejsze części
czasami zwane „pakietami.
• Po podziale projektu na pakiety jest możliwe
przygotowanie harmonogramów
oszacowanie
kosztów i przydzielenie zadań
wykonawczych i
zarządczych
Komponenty WBS?
Jak powinien być podzielony projekt?
• Nie ma żadnej magicznej formuły
!! Podział wg:
– Dziedziny funkcjonalne lub techniczne
– projekt, produkcja, marketing, sprzedaż, finanse
– Struktura organizacyjna
– Zadania sprzedawcy/podwykonawcy
– Fizyczne położenie
– Systemy i podsystemy
– Lub dowolna kombinacja, lecz zorientowana na produkt
końcowy lub hardware!!
Jakie są poziomy WBS?
Zazwyczaj 6 lub mniej
1 Całkowity projekt
2 Podprojekt
3 Kombinacja zadań
4 Zadanie
5 Podzadanie
6 Pojedynczy proces lub czynność
Wskazówki przy tworzeniu diagramu WBS
• Podział prac powinien następować według głównych
produktów projektu
• Diagram powinien koniecznie uwzględniać wszystkie
czynności ryzykowne, niosące zagrożenia projektu,
jak też związane z wykonawcami zewnętrznymi (np.
poddostawcami, użytkownikiem)
• Poziom szczegółowości czynności: nie za duży, nie za
mały - zwykle 2 lub 3 poziomy (przy większej
szczegółowości diagram staje się nieczytelny),
ewentualnie z dekompozycją na WBS niższego
poziomu.
Na którym poziomie się zatrzymać?
• zatrzymaj się,
gdy osiągniesz poziom, na którym
możesz oszacować wymagane zasoby
• lub
gdy praca
może być wykonana w najmniejszej
przyjętej jednostce czasu
: dniu, tygodniu, miesiącu
itp.
• lub
gdy element stanowi
od 0.5% do 2.0%
projektu
• lub
gdy zidentyfikowałeś „
pakiet prac
”
Określanie sekwencji czynności
• Identyfikowanie zależności między czynnościami
– Sztywne zależności
– tkwią w naturze pracy, ograniczenia
fizyczne (hard logic)
– Fakultatywne zależności
– zdefiniowane przez grupę
projektową (soft logic)
– Zewnętrzne zależności
– związki z firmami zewnętrznymi,
na których polegamy, pogoda, kontrakty
– Kamienie milowe
Diagramy sekwencji (wykresy sieciowe)
• Ukazują sekwencje czynności
• Schemat logicznych zależności między czynnościami
• Rodzaje:
– Precedence diagramming method (PDM)
– Arrow diagramming method (ADM)
– Conditional Diagramming Methods (CDM)
Precedence diagramming method (PDM)
•
Nazywany również activity-on-node (AON)
•
Prostokąty to czynności, a strzałki to zależności między nimi
•
Najczęściej używany (w większości programów)
•
Można pokazać różne rodzaje zależności
Precedence diagramming method (PDM)
•
Przykład
Precedence diagramming method (PDM)
•
Rodzaje zależności czynności
Arrow diagramming method (ADM)
•
Nazywany również activity-on-arrow (AOA)
•
Strzałki to czynności, a węzły (kółka) to początkowe i
końcowe punkty czynności
•
Można pokazać tylko zależność finish-to-start
Arrow diagramming method (ADM)
•
Przykład
Conditional diagramming method
Graphical Evaluation and Review Technique (GERT)
• Zezwala na stosowanie:
– pętli (np. test, który musi być powtórzony więcej niż raz)
– rozgałęzień warunkowych (np. konieczność poprawy tylko
gdy wystąpiły błędy)
• PDM i ADM nie zezwalają na pętle i warunki
Szacowanie czasu trwania czynności
• Osąd eksperta
• Informacje historyczne
• Szacowanie analogiczne
• Szacowanie ilościowe
• Dostępność i jakość zasobów
• Zidentyfikowane ryzyko (rezerwy)
• Oszacowanie przybliżone:
– 2 tygodnie +/- 2 dni
– 15% prawdopodobieństwo przekroczenia 3 tygodni
Metody tworzenia harmonogramu
• Metody:
– Wykres Gantt’a
– Critical Path Method (CPM)
– Program Evaluation and Review Technique (PERT)
– Critical Chain Scheduling
• Skracanie czasu trwania projektu
– Crashing
– Fast tracking
• Symulacje
• Rozłożenie zasobów
Wykresy paskowe i sieci działań
•
Wszystkie techniki planowania bazują na schemacie zależności
(graf relacji) prezentującym sekwencję realizowanych zadań
•
Schemat zależności zawiera
– węzły sieci osiągnięte stany
– gałęzie realizowane czynności
•
Schematyczny zapis przebiegu realizacji projektu pozwala
zidentyfikować wszystkie niespójności i pomaga ustalić
ostateczny przebieg projektu
3
3
3
3
5
5
5
5
5
5
5
5
Stan (5)
np. pojazd w miejscu B
Zadanie / czynność (3-5)
np. przejazd z punktu A do punktu B
1
1
1
1
3
3
3
3
2
2
2
2
7
7
7
7
8
8
8
8
5
5
5
5
4
4
4
4
6
6
6
6
3
3
3
3
Stan (3)
np. załadowany pojazd
Wykres Gantta
• Istota wykresu Gantta
– technika zaproponowana przez Henry’ego L. Gantta, przed I-
szą wojna światową
– graficzna prezentacja
• początkowej chwili realizacji zadania
• czasu trwania poszczególnych zadań
• sekwencji zadań (logika prowadzonych prac)
– systematyczne uzupełnianie informacji o realizacji prac
wskazuje na stan zaawansowania projektu
Wykres Gantta
• Najpopularniejszy mechanizm
do wizualizacji
planowania terminów
• Daje
jasny i prosty obraz przebiegu procesu
w czasie
• Może służyć do porównywania terminów planowanych
z rzeczywistymi
• Można śledzić powiązania między zadaniami, ścieżkę
krytyczną
• Używane symbole:
– Trójkąty – kamienie milowe (zerowy czas trwania)
– Czarne prostokąty – zsumowane czynności
– Jaśniejsze prostokąty – czynności
– Strzałki – zależności między czynnościami
Wykres Gantta
Wykres Gantta
•
Przykład wykresu dla 16 zadań
0
10
20
30
40
50
60
70
80
1-2
1-3
2-3
2-8
3-4
3-5
4-5
5-6
6-7
6-8
7-8
8-9
8-10
8-11
9-10
10-11
Chwile czasowe / czas trwania zadania
Z
a
d
a
n
ia
/
f
a
zy
p
ro
je
kt
u
Wykres Gantta
Tworzenie wykresu Gantta
(1) zbuduj listę zadań do realizacji
(2) określ czas realizacji pojedynczych zadań
(3) określ kolejność (równoległość) realizacji zadań
(4) narysuj schemat zależności zadań
(5) skonstruuj wykres (czas, zadania) nanosząc chwile
rozpoczęcia zadań i czas ich trwania
•
rozpocznij od pierwszego zadania
•
kolejne zadania zaznaczaj w chwil zakończenia poprzednich,
zgodnie ze schematem zależności
CPM - PERT
CPM
PERT
Nazwa
Critical Path Method
Project Evaluation & Review
Technique
Powstanie metody
lata 50-te, USA
przemysł okrętowy
lata 50-te, USA
przemysł chemiczny
Prezentacja relacji
pomiędzy zadaniami
w postaci schematu
zależności
w postaci schematu
zależności
Uwzględnienie czasu
realizacji zadań
w postaci deterministycznej
(dokładnej)
w postaci stochastycznej
(przybliżonej)
Charakterystyczne cechy
metody
- maksymalny czas
realizacji projektu
- harmonogramowanie
zadań
- ocena kosztu skrócenia
projektu
- maksymalny (oczekiwany)
czas realizacji projektu
- (harmonogramowanie
zadań)
- (ocena kosztu skrócenia
projektu)
CPM
•
Ścieżka krytyczna – najdłuższy czas realizacji całego projektu
•
Analiza ścieżki krytycznej
– informacje wykorzystywane w metodzie
• lista zadań wchodzących w skład projektu
• czas realizacji pojedynczych zadań
• kolejność (równoległość) realizacji zadań
• wzajemna zależność zadań
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
1
10
0
4
5
15
10
12,5
7,5
4
3
22,5
5
5
30
15
CPM
•
Ścieżka krytyczna – SK
– najdłuższa ścieżka definiowana jest na schemacie zależności, od
chwili rozpoczęcia projektu do jego zakończenia
– ponieważ dla realizacji projektu wszystkie zadania musza zostać
wykonane, długość ścieżki krytycznej określa minimalny
(najkrótszy) czas trwania całego projektu
– zadania tworzące ścieżkę krytyczną nazywane są zadaniami
krytycznymi
– skracanie czasu realizacji projektu może odbywać się wyłącznie
poprzez skracanie zadań krytycznych
• skracanie czasu trwania zadań nie znajdujących się na SK jest
nieuzasadnione
– generuje dodatkowe koszty (angażuje dodatkowe zasoby)
– nie ma wpływu na całkowity czas realizacji projektu
CPM
Algorytm wyznaczania ścieżki krytycznej
(1) zidentyfikuj wszystkie możliwe „ścieżki” od rozpoczęcia
do zakończenia
projektu
(2) określ czas trwania zidentyfikowanych ścieżek
(3) wybierz ścieżkę o najdłuższym czasie realizacji –
ścieżka krytyczna
CPM
Sekwencja zadań
1 – 3 – 5 – 6 – 7 – 8 – 9 – 10 – 11
1 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 – 11
1 – 3 – 4 – 5 – 6 – 7 – 8 – 10 – 11
1 – 3 – 5 – 6 – 8 – 9 – 10 – 11
1 – 3 – 5 – 6 – 8 – 10 – 11
1 – 3 – 4 – 5 – 6 – 8 – 9 – 10 – 11
1 – 3 – 4 – 5 – 6 – 8 – 10 – 11
1 – 2 – 8 – 9 – 10 – 11
1 – 2 – 8 – 10 – 11
Sekwencja zadań
1 – 2 – 8 – 11
1 – 2 – 3 – 5 – 6 – 7 – 8 – 9 – 10 – 11
1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 – 11
1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 10 – 11
1 – 2 – 3 – 5 – 6 – 8 – 9 – 10 – 11
1 – 2 – 3 – 5 – 6 – 8 – 10 – 11
1 – 2 – 3 – 4 – 5 – 6 – 8 – 9 – 10 – 11
1 – 2 – 3 – 4 – 5 – 6 – 8 – 10 – 11
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
1
10
0
4
5
15
10
12,5
7,5
4
3
22,5
5
5
30
15
CPM
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
1
10
0
4
5
15
10
12,5
7,5
4
3
22,5
5
5
30
15
Sekwencja zadań
Czas
1 – 3 – 5 – 6 – 7 – 8 – 9 – 10 – 11
59
1 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 – 11
75
1 – 3 – 4 – 5 – 6 – 7 – 8 – 10 – 11
77,5
1 – 3 – 5 – 6 – 8 – 9 – 10 – 11
50,5
1 – 3 – 5 – 6 – 8 – 10 – 11
53
1 – 3 – 4 – 5 – 6 – 8 – 9 – 10 – 11
66,5
1 – 3 – 4 – 5 – 6 – 8 – 10 – 11
69
1 – 2 – 8 – 9 – 10 – 11
55
1 – 2 – 8 – 10 – 11
57,5
Sekwencja zadań
Czas
1 – 2 – 8 – 11
37,5
1 – 2 – 3 – 5 – 6 – 7 – 8 – 9 – 10 – 11
68
1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 – 11
84
1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 10 – 11
86,5
1 – 2 – 3 – 5 – 6 – 8 – 9 – 10 – 11
59,5
1 – 2 – 3 – 5 – 6 – 8 – 10 – 11
62
1 – 2 – 3 – 4 – 5 – 6 – 8 – 9 – 10 – 11
75,5
1 – 2 – 3 – 4 – 5 – 6 – 8 – 10 – 11
78
CPM
Harmonogramowanie zadań
3
3
5
5
4
4
4
5
15
8
Fragment schematu
3-4
3-5
4-5
…
10 15 20 25 30 35 40
5-..
Czas
Z
a
d
a
n
ia
Wykres Gantta
CPM
• Harmonogramowanie wymaga analizy schematu
zależności
– analiza postępująca
– analiza wsteczna
• Postępująca analiza schematu zależności prowadzi
do określenia
najwcześniejszych chwil czasowych
,
w których można rozpocząć i zakończyć realizację
poszczególnych zadań
• Wsteczna analiza schematu zależności prowadzi do
określenia
najpóźniejszych chwil czasowych
, w
których można rozpocząć i zakończyć realizację
poszczególnych zadań, bez opóźniania całego
projektu
CPM
••
Najwcześniejsza chwila rozpoczęcia
Najwcześniejsza chwila rozpoczęcia
zadania (
EST
EST
) stanowi najpóźniejszą
chwilę zakończenia poprzedzającego
go zadania (zadań)
– EST dla pierwszego zadania
projektu wynosi zero
••
Najwcześniejsza chwila zakończenia
Najwcześniejsza chwila zakończenia
zadania (
EFT
EFT
) obliczana jest jako
suma EST i czasu realizacji zadania
(t)
EFT
i
= EST
i
+ t
i
Przykład:
t
3-4
= 5; EST
3-4
= 10 EFT
3-4
= 15
t
3-5
= 4; EST
3-5
= 10 EFT
3-4
= 14
EST
3-4
3-4
3-5
4-5
…-3
5 10 15 20 25 30 35
5-...
Czas
Z
a
d
a
n
ia
…-3
EFT
3-4
EFT
3-5
EST
3-5
CPM
••
Najpóźniejsza chwila zakończenia
Najpóźniejsza chwila zakończenia
zadania (
LFT
LFT
) stanowi
najwcześniejszą (minimalną) wartość
z LST dla zadań bezpośrednio po nim
następujących
– LFT dla ostatniego zadania
projektu stanowi EFT dla analizy
postępującej
••
Najpóźniejsza chwila rozpoczęcia
Najpóźniejsza chwila rozpoczęcia
zadania (
LST
LST
) obliczana jest jako
różnica LFT i czasu realizacji zadania
(t)
LST
i
= LFT
i
– t
i
Przykład:
t
4-5
= 15; LFT
4-5
= 30 LST
4-5
= 15
t
3-5
= 4; LFT
3-5
= 30 LST
3-4
= 26
3-4
3-5
4-5
…-3
5 10 15 20 25 30 35
5-...
Czas
Z
a
d
a
n
ia
…-3
LST
4-5
LFT
4-5
LFT
3-5
LST
3-5
CPM
• Symbolika zapisu
EST
i
Najwcześniejsza chwila rozpoczęcia zadania i
EFT
i
Najwcześniejsza chwila zakończenia zadania i
t
i
Czas realizacji zadania i
LST
i
Najpóźniejsza chwila rozpoczęcia zadania i
LFT
i
Najpóźniejsza chwila zakończenia zadania i
CPM
•
Czas trwania zadań
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
12,5
. .
. .
15
. .
. .
4
. .
. .
5
. .
. .
1
. .
. .
0
0
. .
. .
10
. .
. .
4
. .
. .
10
. .
. .
7,5
. .
. .
3
. .
. .
22,5
. .
. .
5
. .
. .
5
. .
. .
30
. .
. .
15
. .
. .
CPM
•
Wyznaczanie EST i EFT
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
12,5
10 22,5
. .
15
15 30
. .
4
10 14
. .
5
10 15
. .
1
0 1
. .
0
0
10 10
. .
10
0 10
. .
4
47,5 51,5
. .
10
30 40
. .
7,5
40 47,5
. .
3
40 43
. .
5
74 79
. .
22,5
51,5 74
. .
30
51,5 81,5
. .
5
81,5 86,5
. .
15
51,5 65,5
. .
EST
8-11
= Max (EFT
2-8
, EFT
6-8
,
EFT
7-8
,) = 51,5
EST
5-6
= Max (EFT
3-5
, EFT
4-5
) = 30
CPM
•
Wyznaczanie LFT i LST
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
12,5
10 22,5
39 51,5
15
15 30
15 30
4
10 14
26 30
5
10 15
10 15
1
0 1
9 10
0
0
10 10
10 10
10
0 10
0 10
4
47,
5
51,5
47,5 51,5
10
30 40
30 40
7,5
40 47,5
40 47,5
3
40 43
48,5 51,5
5
74 79
76,5 81,5
22,5
51,5 74
54 76,5
30
51,5 81,5
51,5 81,5
5
81,5 86,5
81,5 86,5
15
51,
5
65,5
71,5 86,5
LFT
6-8
= Min (LST
8-9
, LST
8-10
,
LST
8-11
,) = 51,5
LFT
5-6
= Min (LST
6-7
, LST
6-8
) = 40
CPM
•
Rezerwa czasowa Δt
i
Δt
i
= LST
i
– EST
i
lub
Δt
i
= LFT
i
– EFT
i
EST
i
EFT
i
t
i
LST
i
LFT
i
–
–
CPM
•
Rezerwa czasowa Δt
i
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
12,5
10 22,5
39 51,5
15
15 30
15 30
4
10 14
26 30
5
10 15
10 15
1
0 1
9 10
0
0
10 10
10 10
10
0 10
0 10
4
47,
5
51,5
47,5 51,5
10
30 40
30 40
7,5
40 47,5
40 47,5
3
40 43
48,5 51,5
5
74 79
76,5 81,5
22,5
51,5 74
54 76,5
30
51,5 81,5
51,5 81,5
5
81,5 86,5
81,5 86,5
15
51,
5
65,5
71,5 86,5
Δt
9-10
=2,5
Δt
8-11
=21
Δt
8-9
=2,5
Δt
6-8
=8,5
Δt
2-8
=29
Δt
3-5
=16
Δt
1-3
=9
CPM
•
zadania wchodzące w skład
ścieżki krytycznej
(zadania krytyczne) nie posiadają żadnej
rezerwy czasowej
1
1
3
3
2
2
7
7
8
8
5
5
4
4
6
6
9
9
10
10
11
11
12,5
10 22,5
39 51,5
15
15 30
15 30
4
10 14
26 30
5
10 15
10 15
1
0 1
9 10
0
0
10 10
10 10
10
0 10
0 10
4
47,
5
51,5
47,5 51,5
10
30 40
30 40
7,5
40 47,5
40 47,5
3
40 43
48,5 51,5
5
74 79
76,5 81,5
22,5
51,5 74
54 76,5
30
51,5 81,5
51,5 81,5
5
81,5 86,5
81,5 86,5
15
51,
5
65,5
71,5 86,5
Δt
9-10
=2,5
Δt
8-11
=21
Δt
8-9
=2,5
Δt
6-8
=8,5
Δt
2-8
=29
Δt
3-5
=16
Δt
1-3
=9
CPM
•
Podsumowanie
– harmonogramowanie zadań polega na sukcesywnym
rozważaniu czasu równolegle (równocześnie) trwających
zadań
– zadania wchodzące w skład ścieżki krytycznej (zadania
krytyczne) nie posiadają żadnej rezerwy czasowej
– jeżeli którekolwiek zadania krytyczne zostanie opóźnione,
spowoduje to opóźnienie czasu realizacji całego projektu
– rezerwa czasowa dla zadań nie będących krytycznymi
określa ilość czasu, o którą zadanie może zostać opóźnione
bez konsekwencji dla czasu realizacji projektu
• zakładając, że wszystkie wcześniejsze zadania rozpoczęły się w
EST
• Istota skracania czasu realizacji projektu
– istnieje możliwość zrealizowania zadań w czasie krótszym
niż wynikałoby to z aktualnej ścieżki krytycznej
– szybsza realizacja wybranych zadań najczęściej wynika z
konieczności
• wcześniejszego zakończenia zaplanowanego już projektu
• dotrzymania terminu realizacji w przypadku, gdy zrealizowane
już zadania zostały zrealizowane z opóźnieniem
– szybsza realizacja projektu wymaga
• zastosowania bardziej zaawansowanych technologii
• realizacji zadań w formie nadgodzin
• innych działań
– 2 strategie skracania projektu
• maksymalne (możliwe do uzyskania) skrócenie
• wymagane (oczekiwane) skrócenie
CPM - Skracanie czasu realizacji projektu
•
Zasady i reguły skracania projektu
– skracanie projektu można prowadzić
wyłącznie w odniesieniu
wyłącznie w odniesieniu
do zadań wchodzących w skład ścieżki krytycznej
do zadań wchodzących w skład ścieżki krytycznej
– w celu skrócenia projektu konieczna jest identyfikacja ścieżki
krytycznej
– skracanie zadań wymaga zgromadzenia dodatkowych informacji
• normalny
czas
czas i koszt
i koszt
realizacji zadań
• możliwy
czas skrócenia
czas skrócenia
zadań
– inny sposób realizacji zadania
• koszt skrócenia poszczególnych zadań
– zatrudnienie dodatkowego pracownika
– wynajęcie/zakup dodatkowego sprzętu
– zastosowanie innej technologii
– …
CPM - Skracanie czasu realizacji projektu
CPM
•
Jednostkowy koszt skrócenia
– koszt przypadający na
jednostkę czasu
• [zł/godz.]
• [zł/dzień]
• [zł/miesiąc] ….
gdzie:
t
n
– czas normalny
t
s
– czas skrócenia
k
n
– koszt normalny
k
s
– koszt w czasie skrócenia
s
n
n
s
j
t
t
k
k
k
k
s
t
s
k
n
t
n
koszt
czas
realizacji
CPM
Algorytm skracania czasu realizacji projektu
(1) określ wszystkie możliwe sekwencje zadań
(2) określ minimalny czas realizacji projektu (określ ścieżkę krytyczną)
(3) określ normalny koszt realizacji projektu (suma kosztów realizacji wszystkich
przewidzianych zadań)
(4) określ jednostkowy kosztów skrócenia każdego z zadań
(5) uszereguj zadania należące do ścieżki krytycznej od najtańszej do najdroższej
(6) sukcesywnie skracaj czas trwania operacji znajdujących się na ścieżce krytycznej,
• rozpocznij od skracania zadania powodującego najmniejszy jednostkowy
przyrost dodatkowych kosztów
• zakończ na zadaniu, którego skrócenie najbardziej podnosi koszt projektu
• przy każdym skróceniu zadania sprawdź, czy nie powstaje nowa ścieżka
krytyczna
• kontynuuj krok 6 do chwili
– maksymalnego skrócenia projektu
– uzyskania oczekiwanego (pożądanego) skrócenia
Program Evaluation and Review Technique
(PERT)
• Wykorzystywana
do szacowania czasu trwania
projektów,
kiedy występuje duży element
niepewności
• Wykorzystuje metody probabilistyczne,
bazuje na
optymistycznym, najbardziej prawdopodobnym i
pesymistycznym
czasie trwania projektu
• Wady: dodatkowa praca (3 szacowania na czynność),
są lepsze metody -> rzadko używana w praktyce
PERT
Podstawowe założenia metody PERT
– metoda CPM zakłada dostępność dokładnej informacji na
temat czasu realizacji poszczególnych zadań
– brak dokładnej informacji o czasie trwania poszczególnych
zadań skłania do oszacowania tego czasu
– doświadczony menedżer jest wstanie określić przedział
czasu realizacji poszczególnych czynności (estymaty czasu)
• najwcześniej jak to tylko możliwe (czas optymistyczny) –
a
• spodziewany czas zakończenia (czas najbardziej
prawdopodobny) –
m
• najpóźniej jak to tylko możliwe (czas pesymistyczny) –
b
PERT
Podstawowe założenia metody PERT
– czas trwania każdego zadania oszacowany jest za pomocą
oczekiwanego czasu t
i
oraz wariancji v
i
i odchylenie
standardowego σ
i
6
4
i
i
i
i
b
m
a
t
36
2
i
i
i
a
b
v
Oczekiwany czas realizacji zadania
Wariancja czasu realizacji
i
i
v
Odchylenie standardowe
PERT
Podstawowe założenia metody
PERT
•
Oczekiwany (średni) czas realizacji zadań znajdujących się na
dowolnej ścieżce schematu zależności obliczany jest jako suma
oczekiwanych czasów realizacji tych zadań t
i
•
Wariancja czasu realizacji zadań znajdujących się na dowolnej
ścieżce stanowi sumę wariancji tych zadań
– zakłada się, że zadania wchodzące w skład ścieżki są wzajemnie
niezależne
•
Ścieżka krytyczna w metodzie PERT jest taką sekwencją
zadań, dla której oczekiwany czas realizacji zadań jest
najdłuższy
PERT
PERT weighted average =
8 workdays + 4 X 10 workdays + 24 workdays
= 12 days
6
Crytical Chain Scheduling
(łańcuch krytyczny)
• Dotyczy tego czy wyrobimy się w czasie czy nie
• Bierze pod uwagę ograniczone zasoby i wprowadza
bufor w celu zapewnienia zakończenia projektu na
czas
• Zakłada, że zadania nie są wykonywane w
multitaskingu, ponieważ to często wydłuża czas
Przykład multitaskingu
Bufor i łańcuch krytyczny
• Ważne prawa:
– Marphy’ego: jeżeli coś ma pójść źle, pójdzie źle
– Parkinsona: praca się rozszerza, żeby wypełnić cały
dostępny czas
• Bufor - dodatkowy czas na wykonanie zadania
• Usuwamy bufor z poszczególnych czynności, gdzie
nie potrzeba i w zamian:
– Dodajemy go na koniec przed datą zakończenia projektu
– Dodajemy przed zadaniami na ścieżce krytycznej
Przykład metody krytycznego łańcucha
Którą metodę wybrać?
• Zależy od: rozmiaru projektu, ryzyka, złożoności
• Gantt
– Mniejsze, mniej złożone projekty
• CPM
(ścieżka krytyczna)
– Średnia wielkość/złożoność/ryzyko
• PERT
– Wysokie ryzyko
– Średnia – wysoka złożoność
Skracanie czasu trwania projektu
• Skracanie czasu trwania czynności krytycznych
– Dodanie więcej zasobów
– Zmianę ich zakresu
• Crashing - największe skrócenie harmonogramu przy
najmniejszym wzroście kosztów
• Fast tracking - wykonywanie zadań równolegle lub
tak, żeby nachodziły na siebie
Crashing i Fast Tracking
Overlapped
Tasks or fast
tracking
Shortened
duration thru
crashing
Original
schedule
Kontrola harmonogramu
• Testy: na ile realistyczny jest nasz harmonogram
• Nie wykluczać możliwości wydarzenia się czegoś
nieprzewidzianego
• Nie zakładać, że każdy będzie pracował na 100%
wydajności przez cały czas
• Opracować plan zmian harmonogramu
I co nam z tego wyszło?
Podsumowanie
Pytania i odpowiedzi
•
jak długo będzie trwać i ile będzie kosztować projekt,
•
czy posiadamy ludzi, sprzęt, wyposażenie i materiały do
realizacji projektu,
•
które fazy i zadania w całym projekcie są krytyczne,
•
jaki jest wpływ różnych scenariuszy biznesowych,
•
jaki jest najlepszy wariant organizacyjny przedsięwzięcia,
•
jak dokumentować pracę,
•
jak zapewnić monitorowanie projektu.
Podsumowanie cd..
W fazie realizacji projektu należy:
•
wiedzieć czy projekt realizowany jest zgodnie z planem (zakres,
harmonogram, budżet),
•
umieć
ocenić
jakie
są
konsekwencje
zaobserwowanych
odchyleń od planu biznesowego,
•
ustawicznie oszacowywać i planować pozostały zakres prac,
•
sporządzić
szczegółowe
plany
realizacyjne
na
najbliższy
nadchodzący okres (cykle tygodniowe)
Podsumowanie cd..
Narzędzie powinno pozwalać na:
•
prognozę czasu trwania i kosztów realizacji,
•
identyfikację zadań krytycznych,
•
analizę wykorzystanych zasobów oraz ich bilansowanie,
•
sporządzanie harmonogramów (pracy, zatrudnienia, zużycia
materiałów, etc.),
•
analizę różnych scenariuszy zdarzeń i analizę wrażliwości
projektu,
•
monitorowanie przedsięwzięcia, kontrolowanie zaawansowania
czasowego, rzeczowego,
•
wszechstronną ocenę planu, w tym odchyleń,
Podsumowanie
Narzędzie powinno pozwalać na:
•
podjecie działań korygujących, np.: modyfikacja struktury
projektowej,
•
wspomaganie pracy grupowej (poczta elektroniczna, www,
wspólne raporty, etc),
•
usprawnienie systemu komunikacji poprzez przesyłanie drogą
elektroniczną wiadomości, raportów,
•
uzyskiwanie pomocy, porad i objaśnień, komunikatów i
przypomnień w każdym okresie pracy,
•
swobodną wymianę informacji z innymi aplikacjami.
Podsumowanie cd..
Kolejne kroki:
•
określenie i analiza wymagań,
•
zbudowanie planu,
– definicja zakresu,
– planowanie zasobów (kto i czym),
– definiowanie zadań (co),
– przydzielenie zasobów,
– szacowanie czasu zadań (jak długo),
– definiowanie zależności,
– szacowanie kosztów (za ile),
– budowa harmonogramu (na kiedy),
– budżetowanie kosztów (za ile, na kiedy),
– budowa planu projektu.
Podsumowanie cd..
Jakie dane wprowadzić:
•
termin rozpoczęcia projektu,
•
wszystkie ważne zadania,
•
szacowany czas trwania zadań,
•
przydzielone zasoby,
•
zależności pomiędzy zadaniami,
•
znane ograniczenia, lokalizując je w czasie i przypisując do
zadań,
•
definicja ostatecznych terminów dla zadań,
•
kalendarz projektu oraz kalendarze zasobów i zadań,
•
plan bazowy,
•
dane o rzeczywistym stanie zadania.