380 likes | 548 Views
Analiza systemów informatycznych Wykład 10. Szacowanie pracochłonności. Jerzy.Nawrocki@put.poznan.pl www.cs.put.poznan.pl/jnawrocki/wsb-wdi/. Hierarchiczna struktura produktów. Diagram przepływu produktów. Zależności między czynnościami. Lista czynności. Opisy produktów.
E N D
Analiza systemów informatycznych Wykład 10 Szacowanie pracochłonności Jerzy.Nawrocki@put.poznan.pl www.cs.put.poznan.pl/jnawrocki/wsb-wdi/
Hierarchiczna struktura produktów Diagram przepływu produktów Zależności między czynnościami Lista czynności Opisy produktów Projektowanie planu Definiowanie i analiza produktów Identyfikacja czynności i zależności PL1 PL2 PL3 Szacowanie Szeregowanie Analizowanie ryzyka PL6 PL4 PL5 Scalanie planu PL7 Harmonogram Oszacowanie czynności Rejestr ryzyka J.Nawrocki, Szacowanie pracochłonności
Plan wykładu • COCOMO II • Metoda punktów funkcyjnych • Punkty przypadków użycia • Metoda delficka • 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 J.Nawrocki, Szacowanie pracochłonności
Plan wykładu • COCOMO II • Metoda punktów funkcyjnych • Punkty przypadków użycia • Metoda delficka • 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 J.Nawrocki, Szacowanie pracochłonności
Barry W. Boehm 1957: BA, Matematyka, Harvard 1961: MS, Matematyka, UCLA 1964: PhD, Matematyka, UCLA 1959-73: Rand Corporation 1973-89: TRW 1989-92: Department of Defence (DoD) 1993-teraz: USC Center for SE J.Nawrocki, Szacowanie pracochłonności
Model post-architektoniczny PMNS = A SizeE i=116 EMi gdzie E = B + 0.01 i=15 SFi Size w KSLOC Effort Multiplier Scale Factor J.Nawrocki, Szacowanie pracochłonności
Model post-architektoniczny PMNS = A SizeE i=116 EMi gdzie E = B + 0.01 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 0.91 E 1.226 J.Nawrocki, Szacowanie pracochłonności
Wpływ czynników skali, SF, na pracochłonność E= 1.226 E= 1 E= 0.91 J.Nawrocki, Szacowanie pracochłonności
Rozpiętość pracochłonności 8.9 8.1 7.1 5.7 J.Nawrocki, Szacowanie pracochłonności
Czynniki skali, SFi Typowość Elastyczność Zarz. ryzykiem Spójność zespołu Dojrzałość proc. J.Nawrocki, Szacowanie pracochłonności
Model post-architektoniczny Dla przeciętnego projektu: PMNS = 2.94 SizeE gdzie 0.91 E 1.226 Size w KSLOC J.Nawrocki, Szacowanie pracochłonności
Plan wykładu • COCOMO II • Metoda punktów funkcyjnych • Punkty przypadków użycia • Metoda delficka • 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 J.Nawrocki, Szacowanie pracochłonności
Metoda punktów funkcyjnych 3 4 3 7 5 • Albrecht, IBM, 1979 • Podstawowe funkcje: • Wejścia • Wyjścia • Zapytania • Wewn. pliki danych • Zewn. interfejsy 4 5 4 10 7 6 7 6 15 10 J.Nawrocki, Szacowanie pracochłonności
Metoda punktów funkcyjnych Inna aplikacja Wyjście Wewn. plik Interfejs zewn. Wejście Zapytanie Budowana aplikacja J.Nawrocki, Szacowanie pracochłonności
Metoda punktów funkcyjnych Wyjś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
Metoda punktów funkcyjnych 2 2 2 3 3 3 2 1 0 2 1 0 0 1 0 J.Nawrocki, Szacowanie pracochłonności
Metoda punktów funkcyjnych 2 2 2 26 3 3 3 48 2 1 0 10 2 1 0 24 0 1 0 7 115 Problem: proste, średnie,czyzłożone? J.Nawrocki, Szacowanie pracochłonności
Metoda punktów funkcyjnych • FP = UT * CM • FP – Punkty funkcyjne (Function points) • UT – Wstępne oszacowanie (Unadjusted total) • CM – Mnożnik złożoności (Complexity multiplier): 0.65 .. 1.35 • CM = 0.65 + 0.01 * Współczynniki_wpływu (Influence_factors) • 14 współczynników wpływu, 0 - 5 punktów każdy J.Nawrocki, Szacowanie pracochłonności
Metoda punktów funkcyjnych 5 Factor • Ocena współczynników wpływu • 0 – Brak wpływu • 1 – Bardzo słaby • 2 – Raczej słaby • 3 – Średni • 4 – Istotny • 5 – Zasadniczy J.Nawrocki, Szacowanie pracochłonności
Czy jest wymaganeprzesyłanie danych? Czy są funkcjeprzetwarzania rozproszonego? Czywydajnośćma kluczowe znaczenie? Czy system ma działać wmocno obciążonym środowisku operacyjnym? Czy system wymagawprowadzania danych on-line? Czy wewnętrzneprzetwarzanie jest złożone? Czy kod ma byćre-używalny? Metoda punktów funkcyjnych Influence Factors J.Nawrocki, Szacowanie pracochłonności
Język Język asemblera C Cobol Fortran Pascal Ada Języki obiektowe Arkusze kalkulacyjne LOC/FP 320 128 105 105 90 70 30 6 Metoda punktów funkcyjnych J.Nawrocki, Szacowanie pracochłonności
Model post-architektoniczny Dla przeciętnego projektu: PMNS = 2.94 SizeE gdzie 0.91 E 1.226 Size w KSLOC J.Nawrocki, Szacowanie pracochłonności
Model post-architektoniczny Dla przeciętnego projektu w Pascalu: PMNS = 2.94 ( 0.09 Size )E gdzie 0.91 E 1.226 Size w FP J.Nawrocki, Szacowanie pracochłonności
Plan wykładu • COCOMO II • Metoda punktów funkcyjnych • Punkty przypadków użycia • Metoda delficka • 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 J.Nawrocki, Szacowanie pracochłonności
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
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
Punkty przypadków użycia (Use-Case Points) Unadjusted Use-Case Points UCP = UUCP * TCF * EF Effort = UCP * <20, 30> [godz.] gdzie: TCF = 0.6 + (0.01 * TFactor) EF = 1.4 + ( –0.03 * EFactor) J.Nawrocki, Szacowanie pracochłonności
Technical Factors (TFactor) 5 Factor T1 System rozproszony 2 T2 Czas odp. lub przepustowość 2 T3 Efektywność użyt. końcowego 1 T4 Złożone przetwarzanie wew. 1 T5 Reużywalny kod 1 T6 Łatwość instalacji 0.5 T7 Łatwość użycia 0.5 T8 Przenośność 2 T9 Łatwość modyfikowania 1 T10 Współbieżność 1 T11 Mechanizmy bezpieczeństwa 1 T12 Dostęp dla trzeciej strony 1 T13 Spec. mechanizmy szkoleniowe 1 J.Nawrocki, Szacowanie pracochłonności
Environment Factors (EFactor) 5 Factor F1 Znajomość RUP-a 1.5 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 1 F6 Stabilne wymagania 2 F7 Pracownicy na część etatu -1 F8 Trudny język programowania -1 J.Nawrocki, Szacowanie pracochłonności
Punkty przypadków użycia (Use-Case Points) UCP = UUCP * TCF * EF Effort = UCP * <20, 30> [godz.] gdzie: TCF = 0.6 + (0.01 * TFactor) EF = 1.4 + ( –0.03 * EFactor) J.Nawrocki, Szacowanie pracochłonności
Plan wykładu • COCOMO II • Metoda punktów funkcyjnych • Punkty przypadków użycia • Metoda delficka • 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 J.Nawrocki, Szacowanie pracochłonności
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
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
Metoda delficka • Estymator: Jerzy Nawrocki Data: 12.03.2004 • Projekt: Procedura sortowania • Oszacowania z 1-szej rundy: • e EM e e • 0 20 40 60 80 100 • e - oszacowania, E - Twoje oszac., M - średnie oszac. • Twoje oszacowanie do następnej rundy: ......... • Uzasadnienie Twojego oszac.: .......................................... • ............................................................................................ J.Nawrocki, Szacowanie pracochłonności
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
Podsumowanie At last! • 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 20-30 godz./UCP • Metoda delficka: wykorzystanie wiedzy ekspertów J.Nawrocki, Szacowanie pracochłonności
Pytania? ? J.Nawrocki, Szacowanie pracochłonności
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