Szacowanie rozmiaru i pracochłonności

1 Szacowanie rozmiaru i pracochłonnościInżynieria oprogra...
Author: Gabryjela Dyszy
0 downloads 2 Views

1 Szacowanie rozmiaru i pracochłonnościInżynieria oprogramowania II Wykład 3 Szacowanie rozmiaru i pracochłonności

2 oor quality (kiepska jakość) ver budget (przekroczony budżet)Syndrom LOOP Loop L O P ate (późno) oor quality (kiepska jakość) ver budget (przekroczony budżet) vertime (nadgodziny) J.Nawrocki, Wprowadzenie..

3 Szacowanie rozmiaru i pracochłonnościPlan wykładu Kontrola jakości oprogramowania Szacowanie rozmiaru i pracochłonności Standardy serii ISO 9000 Modele CMM/CMMI Inżynieria wymagań i IEEE 830 Zarządzanie projektami i PRINCE 2 Personal Software Process Team Software Process Zwinne metodyki programowania Rational Unified Process Projekty dyplomowe 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, Wprowadzenie..

4 Szacowanie rozmiaru i pracochłonnościGra planistyczna w XP Pracochłonność, ryzyko Informatycy More colors 9 godz. Zakres wydania Klient More colors func. 9 h 6 h Klient Wymagania More colors J.Nawrocki, Wprowadzenie..

5 Szacowanie rozmiaru i pracochłonnościPrzetargi Pracochłonność, ryzyko Informatycy More colors 9 godz. Wykonawca Klient 2 mln zł Klient Wymagania More colors 1 mln zł J.Nawrocki, Wprowadzenie..

6 Systematyczne podejście do planowaniaSzacowanie pracochłonności Szacowanie harmonogramu 13 May begin .. end 500 LOC Szacowanie rozmiaru J.Nawrocki, Wprowadzenie..

7 Szacowanie pracochłonnościCOCOMO: Effort = a  Sizeb COCOMO 2.0: Effort = (ei)  A  SizeB Walston-Felix model: Effort = 5.2  Size0.91 Software equation (Putnam): Effort = (Size  B0.333/P)3/ t4 J.Nawrocki, Wprowadzenie..

8 Metoda wartości rozmytychPutnam’92: Potrzebujemy oszacowań rozmiaru, które są dokładne ale nie koniecznie precyzyjne. Odnieśmy oszacowanie do danych historycznych. Wysoki Średni Niski J.Nawrocki, Wprowadzenie..

9 Metoda wartości rozmytychZakresy rozmytych rozmiarów J.Nawrocki, Wprowadzenie..

10 Metoda wartości rozmytychMając dany najmniejszy (S) i największy (L) rozmiar, znajdź granice zakresów A, B, C, D takie, że S, A, B, C, D, L tworzą postęp geometryczny. A/S = B/A = C/B = D/C = L/D = p L/S = p5  p = (L/S)0.2 Jeśli S= i L= , to p=4 B.mały: S - A Mały: A - B Średni: B - C Duży: C - D B.duży: D - L J.Nawrocki, Wprowadzenie..

11 Rand Corporation, Boehm’81 Metoda delfijska Pytia Rand Corporation, Boehm’81 Kilku ekspertów indywidualnie szacuje nakład (rozmiar). Stosując proces delfijski dochodzi się do konsensusu. J.Nawrocki, Wprowadzenie..

12 1. Eksperci dostają specyfikację i formularz estymacyjny. Metoda delfijska 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, Wprowadzenie..

13 Projekt: Procedura sortowaniaMetoda delfijska 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: LOC Uzasadnienie Twojego oszac.: J.Nawrocki, Wprowadzenie..

14 Metoda delfijska 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, Wprowadzenie..

15 Standard-component methodPlan of the lecture Delphi method Fuzzy-logic method Standard-component method Function point method J.Nawrocki, Wprowadzenie..

16 Metoda standardowego składnikaPutnam’92 Dekompozycja systemu do zbioru standardowych składników (ekrany, pliki, moduły etc.). Dla każdego standardowego składnika mamy dane historyczne o jego rozmiarze. Dom: 2 łazienki 4 sypialnie 1 kuchnia 1 pokój gościnny J.Nawrocki, Wprowadzenie..

17 Metoda standardowego składnikaDla każdego typu składnika należy określić: S – najmniejszą liczbę składników tego typu; L – największą liczbę M – najbardziej prawdopodobną liczbę Szacunkowa liczba komponentów danego typu: (S+4*M+L) / 6 Dla każdego typu komponentu znamy średnie LOC. J.Nawrocki, Wprowadzenie..

18 Function point method Plan of the lecture Delphi methodFuzzy-logic method Standard-component method Function point method J.Nawrocki, Wprowadzenie..

19 Metoda punktów funkcyjnychAlbrecht, IBM, 1979 Podstawowe funkcje: Wejścia Wyjścia Zapytania Wewn. pliki danych Zewn. interfejsy J.Nawrocki, Wprowadzenie..

20 Metoda punktów funkcyjnychInna aplikacja Interfejs zewn. Budowana aplikacja Wejście Wyjście Wewn. plik Zapytanie J.Nawrocki, Wprowadzenie..

21 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, Wprowadzenie..

22 Metoda punktów funkcyjnych 115 Problem: proste, średnie, czy złożone? J.Nawrocki, Wprowadzenie..

23 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, Wprowadzenie..

24 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, Wprowadzenie..

25 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, Wprowadzenie..

26 Metoda punktów funkcyjnychCzy wejścia, wyjścia, pliki i zapytania są złożone? Czy wprowadzanie danych on-line wymaga transakcji obejmujących wiele ekranów lub operacji? Czy pliki główne są aktualizowane on-line? Czy system ma mieć automatyczne konwersje i instalacje? Influence Factors J.Nawrocki, Wprowadzenie..

27 Metoda punktów funkcyjnychCzy system wymaga mechanizmu kopii zapasowych i odtwarzania? Czy system jest projektowany dla wielu instalacji w różnych organizacjach? Czy aplikacja jest projektowana aby wspomagać zmiany i być łatwą w użyciu przez użytkownika? Influence Factors J.Nawrocki, Wprowadzenie..

28 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, Wprowadzenie..

29 Metoda punktów funkcyjnychModyfikacje metody punktów funkcyjnych: Feature points (C. Jones, 1991) Object points (R. Kauffman, R. Kumar, 1993) 3D function point (S.A. Whitmire, 1995) J.Nawrocki, Wprowadzenie..

30 Pytania? ? J.Nawrocki, Wprowadzenie..

31 3. Czy dowiedziałeś się czegoś ważnego? 4. Co i jak poprawić?Ocena wykładu 1. Wrażenie ogólne (1 - 6) 2. Za szybko czy za wolno? 3. Czy dowiedziałeś się czegoś ważnego? 4. Co i jak poprawić? J.Nawrocki, Wprowadzenie..

32 Kontrola jakości oprogramowania Szacowanie rozmiaru i pracochłonności Plan wykładu Kontrola jakości oprogramowania Szacowanie rozmiaru i pracochłonności Standardy serii ISO 9000 Modele CMM/CMMI Inżynieria wymagań i IEEE 830 Zarządzanie projektami i PRINCE 2 Personal Software Process Team Software Process Zwinne metodyki programowania Rational Unified Process Projekty dyplomowe 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, Wprowadzenie..