Co nale y oszacowa

Transkrypt

Co nale y oszacowa
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 1
Co nale y oszacowa ?
• pracochłonno
• harmonogram – czas trwania zada i całego projektu
• zasoby ludzkie – jak du y zespół
• bud et
− koszty wynagrodze
− koszty sprz tu i oprogramowania
− koszty materiałów
− koszty usług obcych (podwykonawców)
− koszty szkole , wyjazdów itp.
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 2
Trudno ci w szacowaniu
• bardzo du e zró nicowanie i zło ono
informatycznych
projektów
• nieliniowy wzrost zło ono ci oprogramowania przy
zwi kszaniu zakresu projektu
• zmienno wymaga , rodowiska, organizacji przy
ka dym nowym projekcie
technologii – praktycznie ka dy nowy
• zmienno
projekt w innej technologii
• rosn cy udział kosztu opracowania oprogramowania
w ogólnych kosztach systemu
• niematerialny charakter oprogramowania trudny z
natury do oszacowania
• brak do wiadczenia zespołów projektowych – zwykle
młodzi ludzie
• brak dojrzałych metryk oprogramowania dobrze
skorelowanych z procesem tworzenia oprogramowania
Dodatkowo
• konieczno dokonywania oszacowa przed
− specyfikacj wymaga
− wykonaniem projektu, który okre la technologi ,
narz dzia i architektur
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 3
Przy szacowaniu trzeba uwzgl dni
• zło ono
zadania
• umiej tno ci i do wiadczenie pracowników
• znajomo
i dost pno
technologii
• czas nieproduktywny (praca w innych projektach,
administrowanie, wakacje, choroby, szkolenia)
• czynno ci i czas zwi zany z zarz dzaniem (spotkania,
przygotowywanie raportów, sprawozda itp.)
• czas niezb dny dla komunikacji w zespole
• czas przeznaczony na kontrol
przegl dy, inspekcje)
jako ci (np. audyty,
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 4
Czas realizacji a liczba pracowników
Zale no nieliniowa
Przyczyny
• wraz z liczb pracowników ro nie nakład czasu na
komunikacj
• niepodzielno
zada
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 5
Miesi ce
Czas realizacji a liczba pracowników
Pracownicy
Miesi ce
Projekty wymagaj ce niewielkiej komunikacji
Pracownicy
Projekty wymagaj ce intensywnej komunikacji
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 6
Zalecenia przy szacowaniu
• aktualizowanie oszacowa – im pó niej szacujemy,
tym dokładniej bo mamy wi cej informacji (w praktyce
zalecenie to sprowadza si do weryfikacji oszacowa )
• dekompozycja
− mo liwo precyzyjniejszego oszacowania mniejszego
zadania, modułu itp.
− zmniejszenie
wpływu
bł dów
oszacowania
poszczególnych elementów na sumaryczny szacunek
cało ci
• opieranie si na charakterystyce produktywno ci
zespołu – konieczno
mierzenia produktywno ci,
gromadzenia danych i uaktualniania charakterystyki
• stosowanie ró norodnych oszacowa
•d
enie do okre lania i minimalizacji rozrzutu
szacunków
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 7
Metody szacowania pracochłonno ci
• szacowanie wst puj ce (np. metoda PERT)
• szacowanie
zst puj ce
–
okre lenie
stopnia
pracochłonno ci zadania wzgl dem wi kszej cało ci (np. na
zasadzie reguły 40-20-40)
• na zasadzie analogii z podobnymi przedsi wzi ciami
• ocena ekspertów
− metoda delficka
• Standard Task Method – podział zada
wielko ci i zło ono ci
wzgl dem
• metoda AQUA
• szacowanie algorytmiczne
− na podstawie linii kodu (np. COCOMO)
− na podstawie struktury programu (np. metoda punktów
funkcyjnych)
• u ycie i porównanie kilku metod
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
Szacowanie 8
ą
Szacowanie zst puj ce (top-down)
Przykład
Cały projekt
100%
Projektowanie
40%
Oprogramowanie
20%
Testowanie
i wdro enie
40%
Specyfikacja
wymaga
15%
Kodowanie
10%
Integracja
15%
Analiza
i projekt
25%
Testy
modułów
10%
Testowanie
20%
ń
Dokumentacja
5%
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 9
Metoda delficka
• szacowania dokonuje grupa ekspertów – ka dy z
osobna (w sposób tajny)
• wyniki zbiera si i wyznacza
− najbardziej optymistyczne oszacowanie
− warto
redni oszacowa
− najbardziej pesymistyczne oszacowanie
• powy sze wielko ci przedstawia si ekspertom i prosi
si ich znowu o dokonanie (zrewidowanie) oszacowania
proces kontynuuje si a si uzyska zbie no ocen
(albo si nie uzyska)
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 10
Standard Task Method
• klasyfikacja projektu (zadania) wzgl dem wielko ci,
np. mały, redni, du y
• klasyfikacja projektu (zadania) wzgl dem zło ono ci,
np. prosty, umiarkowany, zło ony
• tabelaryczna ocena pracochłonno ci (kosztu)
Przykład
„Przygotowanie planu realizacji projektu”
Zło ono
Rozmiar
projektu
Mały
redni
Du y
projektu
Prosty
Umiarkowany
Zło ony
10
osobodni
12
osobodni
15
osobodni
13
osobodni
15
osobodni
18
osobodni
15
osobodni
18
osobodni
21
osobodni
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 11
Metoda AQUA
• opiera si na analizie danych historycznych
− warto ci atrybutów
− pracochłonno
• badany jest stopie podobie stwa aktualnego
projektu do projektów historycznych na podstawie
porównywania warto ci atrybutów
• okre lenie N najbardziej podobnych przypadków w
oparciu o warto ci miary podobie stwa (N
wyliczane automatycznie)
• wyliczana jest pracochłonno nowego projektu na
podstawie pracochłonno N projektów najbardziej
podobnych (jako rednia wa ona wzgl dem miar
podobie stwa)
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 12
Metoda COCOMO
(COnstructive COst MOdel)
• pracochłonno
– E [osobomiesi ce]
E = a ∗ (KDSI)b ∗ d
KDSI (Kilo Delivered Source Instructions) – tysi ce
instrukcji ródłowych w programie (oszacowanie liczby
linii kodu)
• czas trwania projektu – T [miesi ce]
T = 2,5∗ Ec
• liczebno
zespołu – S
S = E/T
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 13
Współczynniki modelu COCOMO
• a, b, c – zale
od rodzaju systemu
♦ prosty – mały, typowy, w stabilnym rodowisku
♦ typowy – redni, typowy z modyfikacjami, w
umiarkowanie zło onym rodowisku
♦ zło ony – du y, unikalny, w zło onym rodowisku
prosty
typowy
zło ony
a
2,40
3,00
3,60
b
1,05
1,12
1,20
c
0,38
0,35
0,32
• d – współczynnik koryguj cy zale ny od atrybutów procesu,
produktu i rodowiska tworzenia oprogramowania (w
klasycznym modelu d=1)
Przykład
Program – 20 tys. instrukcji ródłowych (linii kodu), typowy
projekt
• pracochłonno
– 86 osobomiesi cy
• czas trwania
– 12 miesi cy
• zespół
– 7-8 osób
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 14
Zastrze enia do metod opartych na liniach
kodu
• wymagaj oszacowania linii kodu (szacowanie
pracochłonno ci zast pujemy szacowaniem linii kodu)
• szacowanie pracochłonno ci odbywa si tylko na
podstawie samego procesu kodowania programu, a
jest to tylko jeden z etapów realizacji
oprogramowania
• liczba linii kodu (instrukcji ródłowych) jest miar
długo ci programu i nie bierze pod uwag w
bezpo redni sposób jego zło ono ci i mo liwo ci
funkcjonalnych
• miara w postaci liczby linii kodu uniemo liwia
wykonywanie bada porównawczych, gdy silnie
zale y od rodków implementacji (j zyka)
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 15
Metoda punktów funkcyjnych
• obliczenie liczby wst pnych punktów funkcyjnych
(UFP– Unadjusted Function Points)
• obliczenie sumarycznego poziomu technicznej
zło ono ci (TCF– The Technical Complexity Factor)
• obliczenie punktów funkcyjnych (FP – Function
Points)
FP = UFP ∗ TCF
• wyznaczenie pracochłonno ci projektu na podstawie
wyliczonej liczby punktów funkcyjnych
• okre lenie czasu trwania projektu
• okre lenie liczebno ci zespołu
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 16
Wst pne punkty funkcyjne
(UFP – Unadjusted Function Points)
• klasyfikacja składników systemu
− wej cia do systemu
− wyj cia systemu
− wewn trzne zbiory danych
− zewn trzne zbiory danych
− zapytania
• okre lenie kategorii zło ono ci funkcji
− proste
− rednie
− zło one
• obliczenie sumy wag zło ono ci na podstawie
tabeli
Proste
rednie Zło one
Wej cia
3
4
6
Wyj cia
4
5
7
Zbiory wewn.
7
10
15
Zbiory zewn.
5
7
10
Zapytania
3
4
6
ń
K.Pie kosz
Zarz dzanie Projektami Informatycznymi
ą
Szacowanie 17
Poziom technicznej zło ono ci systemu
(TCF– The Technical Complexity Factor)
• szacowanie wpływu czynników koryguj cych ( w skali
0, 1, 2, 3, 4, 5 – im wi kszy wpływ tym wi cej
punktów)
1. szybko przesyłania danych
2. rozproszenie przetwarzania
3. wydajno
4. stopie obci enia systemu
5. cz stotliwo wykonywania transakcji
6. ilo danych wprowadzanych on-line
7. wydajno u ytkownika ko cowego
8. aktualizacja danych w trybie on-line
9. zło ono przetwarzania danych
10. przenaszalno oprogramowania
11. łatwo instalacji
12. prostota obsługi systemu
13. liczba lokalizacji stanowisk
14. łatwo wprowadzania zmian
• obliczenie zło ono ci przetwarzania F (suma stopni
wpływu poszczególnych czynników)
• wyznaczenie współczynnika koryguj cego, np.
TCF = 0,65 + (0.01 ∗ F)