1 Szacowanie pracochłonności(c) J.Nawrocki Lecture 5 Analiza systemów informatycznych Wykład 10 Szacowanie pracochłonności Req. Eng. & Project Manag.
2 Oszacowanie czynnościHierarchiczna struktura produktów Opisy produktów Diagram przepływu produktów Lista czynności Zależności między czynnościami Projektowanie planu Definiowanie i analiza produktów Identyfikacja czynności i zależności PL1 PL2 PL3 Szacowanie Szeregowanie Analizowanie ryzyka PL4 PL5 PL6 Scalanie planu PL7 Oszacowanie czynności Harmonogram Rejestr ryzyka J.Nawrocki, Szacowanie pracochłonności
3 Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delfickaPlan wykładu Kontrola jakości Szacowanie rozmiaru i Standardy serii ISO 9000 Modele CMM/CMMI Inżynieria wymagań Zarządzanie projektami Personal Software Process Team Software Process Zwinne metodyki Rational Unified Process Projekty dyplomowe COCOMO II Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delficka J.Nawrocki, Szacowanie pracochłonności
4 Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delfickaPlan wykładu Kontrola jakości Szacowanie rozmiaru i Standardy serii ISO 9000 Modele CMM/CMMI Inżynieria wymagań Zarządzanie projektami Personal Software Process Team Software Process Zwinne metodyki Rational Unified Process Projekty dyplomowe COCOMO II Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delficka J.Nawrocki, Szacowanie pracochłonności
5 1957: BA, Matematyka, Harvard 1961: MS, Matematyka, UCLA Barry W. Boehm 1957: BA, Matematyka, Harvard 1961: MS, Matematyka, UCLA 1964: PhD, Matematyka, UCLA : Rand Corporation : TRW : Department of Defence (DoD) 1993-teraz: USC Center for SE J.Nawrocki, Szacowanie pracochłonności
6 Model post-architektonicznyPMNS = A SizeE i=116 EMi gdzie E = B i=15 SFi Size w KSLOC Effort Multiplier Scale Factor J.Nawrocki, Szacowanie pracochłonności
7 Model post-architektonicznyPMNS = A SizeE i=116 EMi gdzie E = B i=15 SFi Size w KSLOC Wartości A, B skalibrowane na podstawie 161 projektów: A = 2.94 B = 0.91 Dla przeciętnego projektu EMi = 1. 0 i=15 SFi 31.6 PMNS = 2.94 SizeE gdzie E 1.226 J.Nawrocki, Szacowanie pracochłonności
8 Wpływ czynników skali, SF, na pracochłonnośćE= 1.226 E= 1 E= 0.91 J.Nawrocki, Szacowanie pracochłonności
9 Rozpiętość pracochłonności8.9 8.1 7.1 5.7 J.Nawrocki, Szacowanie pracochłonności
10 Czynniki skali, SFi Very low Low Nominal High Very high Extra high6.20 4.96 3.72 2.48 1.24 0.00 5.07 4.05 3.04 2.03 1.01 7.07 5.65 4.24 2.83 1.41 5.48 4.38 3.29 2.19 1.10 7.80 6.24 4.68 3.12 1.56 Typowość Elastyczność Zarz. ryzykiem Spójność zespołu Dojrzałość proc. J.Nawrocki, Szacowanie pracochłonności
11 Model post-architektonicznyDla przeciętnego projektu: PMNS = 2.94 SizeE gdzie E 1.226 Size w KSLOC J.Nawrocki, Szacowanie pracochłonności
12 Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delfickaPlan wykładu Kontrola jakości Szacowanie rozmiaru i Standardy serii ISO 9000 Modele CMM/CMMI Inżynieria wymagań Zarządzanie projektami Personal Software Process Team Software Process Zwinne metodyki Rational Unified Process Projekty dyplomowe COCOMO II Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delficka J.Nawrocki, Szacowanie pracochłonności
13 Metoda punktów funkcyjnychAlbrecht, IBM, 1979 Podstawowe funkcje: Wejścia Wyjścia Zapytania Wewn. pliki danych Zewn. interfejsy J.Nawrocki, Szacowanie pracochłonności
14 Metoda punktów funkcyjnychInna aplikacja Interfejs zewn. Budowana aplikacja Wejście Wyjście Wewn. plik Zapytanie J.Nawrocki, Szacowanie pracochłonności
15 Metoda punktów funkcyjnychWyjście Zapytanie Wyjście: raport, ekran, komunikat o błędzie. Pojedyncze dane w raporcie nie są liczone osobno. Zapytanie: bezpośrednie wej. skutkujące bezpośrednim wyj. Zapytanie nie może modyfikować żadnego pliku wewnętrznego (stanu). J.Nawrocki, Szacowanie pracochłonności
16 Metoda punktów funkcyjnych J.Nawrocki, Szacowanie pracochłonności
17 Metoda punktów funkcyjnych 115 Problem: proste, średnie, czy złożone? J.Nawrocki, Szacowanie pracochłonności
18 Metoda punktów funkcyjnychFP = UT * CM FP – Punkty funkcyjne (Function points) UT – Wstępne oszacowanie (Unadjusted total) CM – Mnożnik złożoności (Complexity multiplier): CM = * Współczynniki_wpływu (Influence_factors) 14 współczynników wpływu, punktów każdy J.Nawrocki, Szacowanie pracochłonności
19 Metoda punktów funkcyjnychOcena współczynników wpływu 0 – Brak wpływu 1 – Bardzo słaby 2 – Raczej słaby 3 – Średni 4 – Istotny 5 – Zasadniczy Factor 5 J.Nawrocki, Szacowanie pracochłonności
20 Metoda punktów funkcyjnychCzy jest wymagane przesyłanie danych? Czy są funkcje przetwarzania rozproszonego? Czy wydajność ma kluczowe znaczenie? Czy system ma działać w mocno obciążonym środowisku operacyjnym? Czy system wymaga wprowadzania danych on-line? Czy wewnętrzne przetwarzanie jest złożone? Czy kod ma być re-używalny? Influence Factors J.Nawrocki, Szacowanie pracochłonności
21 Metoda punktów funkcyjnychJęzyk Język asemblera C Cobol Fortran Pascal Ada Języki obiektowe Arkusze kalkulacyjne LOC/FP 320 128 105 90 70 30 6 J.Nawrocki, Szacowanie pracochłonności
22 Model post-architektonicznyDla przeciętnego projektu: PMNS = 2.94 SizeE gdzie E 1.226 Size w KSLOC J.Nawrocki, Szacowanie pracochłonności
23 Model post-architektonicznyDla przeciętnego projektu w Pascalu: PMNS = 2.94 ( 0.09 Size )E gdzie E 1.226 Size w FP J.Nawrocki, Szacowanie pracochłonności
24 Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delfickaPlan wykładu Kontrola jakości Szacowanie rozmiaru i Standardy serii ISO 9000 Modele CMM/CMMI Inżynieria wymagań Zarządzanie projektami Personal Software Process Team Software Process Zwinne metodyki Rational Unified Process Projekty dyplomowe COCOMO II Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delficka J.Nawrocki, Szacowanie pracochłonności
25 1 pkt: Prosty - Zdefiniowane API 2 pkt: Średni - TCP/IP lub tekst Aktorzy 1 pkt: Prosty - Zdefiniowane API 2 pkt: Średni - TCP/IP lub tekst 3 pkt: Złożony - GUI J.Nawrocki, Szacowanie pracochłonności
26 5 pkt: Prosty – do 3 transakcji 10 pkt: Średni – 4-7 transakcji Przypadki użycia Rejestracja artykułu Scenariusz główny 1. System wyświetla formularz. 2. Autor wypełnia formularz. 3. System sprawdza dane. Rozszerzenia 3a. Zły format danych. 3a1. System wyświetla komunikat. Powrót do kroku 2. 5 pkt: Prosty – do 3 transakcji 10 pkt: Średni – 4-7 transakcji 15 pkt: Złożony – powyżej 7 transakcji J.Nawrocki, Szacowanie pracochłonności
27 Punkty przypadków użycia (Use-Case Points)Unadjusted Use-Case Points UCP = UUCP * TCF * EF Effort = UCP * <20, 30> [godz.] gdzie: TCF = (0.01 * TFactor) EF = ( –0.03 * EFactor) J.Nawrocki, Szacowanie pracochłonności
28 Technical Factors (TFactor)T1 System rozproszony T2 Czas odp. lub przepustowość T3 Efektywność użyt. końcowego 1 T4 Złożone przetwarzanie wew T5 Reużywalny kod T6 Łatwość instalacji T7 Łatwość użycia T8 Przenośność T9 Łatwość modyfikowania T10 Współbieżność T11 Mechanizmy bezpieczeństwa T12 Dostęp dla trzeciej strony T13 Spec. mechanizmy szkoleniowe 1 Factor 5 J.Nawrocki, Szacowanie pracochłonności
29 Environment Factors (EFactor)F1 Znajomość RUP-a F2 Dośw. w budowie takich aplikacji 0.5 F3 Doświadczenie w „obiektowości” 1 F4 Umiejętności głównego analityka 0.5 F5 Motywacja F6 Stabilne wymagania F7 Pracownicy na część etatu F8 Trudny język programowania Factor 5 J.Nawrocki, Szacowanie pracochłonności
30 Punkty przypadków użycia (Use-Case Points)UCP = UUCP * TCF * EF Effort = UCP * <20, 30> [godz.] gdzie: TCF = (0.01 * TFactor) EF = ( –0.03 * EFactor) J.Nawrocki, Szacowanie pracochłonności
31 Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delfickaPlan wykładu Kontrola jakości Szacowanie rozmiaru i Standardy serii ISO 9000 Modele CMM/CMMI Inżynieria wymagań Zarządzanie projektami Personal Software Process Team Software Process Zwinne metodyki Rational Unified Process Projekty dyplomowe COCOMO II Metoda punktów funkcyjnych Punkty przypadków użycia Metoda delficka J.Nawrocki, Szacowanie pracochłonności
32 Rand Corporation, Boehm’81 Metoda delficka Pytia Rand Corporation, Boehm’81 Kilku ekspertów indywidualnie szacuje nakład (rozmiar). Stosując proces delfijski dochodzi się do konsensusu. J.Nawrocki, Szacowanie pracochłonności
33 1. Eksperci dostają specyfikację i formularz estymacyjny. Metoda delficka 1. Eksperci dostają specyfikację i formularz estymacyjny. 2. Spotykają się by przedyskutować: cele projektu, założenia, problemy estymacji. 3. Ekspert anonimowo wylicza zadania i szacuje nakład (rozmiar). 4. Szacunki trafiają do moderatora, który opracowuje wyniki i przedstawia je ekspertom. Moderator J.Nawrocki, Szacowanie pracochłonności
34 Projekt: Procedura sortowaniaMetoda delficka Estymator: Jerzy Nawrocki Data: Projekt: Procedura sortowania Oszacowania z 1-szej rundy: e E M e e e - oszacowania, E - Twoje oszac., M - średnie oszac. Twoje oszacowanie do następnej rundy: Uzasadnienie Twojego oszac.: J.Nawrocki, Szacowanie pracochłonności
35 Metoda delficka 5. Eksperci spotykają się by przedyskutować wyniki. Dyskutują zadania, które zdefiniowali, ale nie dyskutują ich szacunkowych nakładu (rozmiarów). 6. Procedura jest powtarzana od kroku 3 aż szacunki ekspertów są dostatecznie bliskie. Moderator J.Nawrocki, Szacowanie pracochłonności
36 Podsumowanie COCOMO II – szacowanie pracochłonności na podstawie rozmiaru kodu w KSLOC Punkty funkcyjne i przejście na KSLOC (tablica przeliczania FP na SLOC dla różnych języków) Punkty przypadków użycia: mnożnik godz./UCP Metoda delficka: wykorzystanie wiedzy ekspertów At last! J.Nawrocki, Szacowanie pracochłonności
37 ? Pytania? J.Nawrocki, Szacowanie pracochłonności (c) J.NawrockiLecture 5 ? J.Nawrocki, Szacowanie pracochłonności Req. Eng. & Project Manag.
38 3. Czego ważnego dowiedziałeś się na wykładzie? 4. Co poprawić i jak?Ocena jakości 1. Wrażenie ogólne? (1 - 6) 2. Tempo wykładu? 3. Czego ważnego dowiedziałeś się na wykładzie? 4. Co poprawić i jak? J.Nawrocki, Szacowanie pracochłonności