(c) Jerzy Nawrocki Jerzy Nawrocki Jerzy.Nawrocki@put.poznan.pl Inżynieria oprogramowania II Planowanie projektu Jerzy Nawrocki Jerzy.Nawrocki@put.poznan.pl XPrince dla architektów
Plan jakości projektu Planowanie jakości IP1
Dokument rozpoczęcia projektu Plan jakości projektu Plan projektu Spojrzenie biznesowe IP Planowanie jakości Planowanie projektu Dopracowanie spojrzenia biz. i czynników ryzyka IP1 IP2 IP3 Zdefiniowanie mechanizmów kontroli Założenie plików projektu Scalenie dokumentu rozpocz. IP4 IP5 IP6 Plan komunikacji Mechaniz-my kontr. Rejestr spraw Rejestr jakości Rejestr doświadczeń Dokument rozpoczęcia projektu
3 h ??? 3 h 2 h 2 h 4 h Plan jakości projektu Plan projektu Spojrzenie biznesowe IP Planowanie jakości Planowanie projektu Dopracowanie spojrzenia biz. i czynników ryzyka 3 h ??? 3 h IP1 IP2 IP3 Zdefiniowanie mechanizmów kontroli Założenie plików projektu Scalenie dokumentu rozpocz. 2 h 2 h 4 h IP4 IP5 IP6 Plan komunikacji Mechaniz-my kontr. Rejestr spraw Rejestr jakości Rejestr doświadczeń Dokument rozpoczęcia projektu
Planowanie wg PRINCE2 Projektowanie planu PL1
Projektowanie planu traktować opcjonalnie Standard? Tak Nie Projektowanie planu Definiowanie i analiza produ-któw PL1 PL2
Planowanie wg PRINCE2 Hierarchiczna struktura produktów Opisy produktów Diagram przepływu produktów Projektowanie planu Definiowanie i analiza produ-któw PL1 PL2
Product Breakdown Structure Hierarchiczna struktura produktów Product Breakdown Structure System Kod Moduł księgowy Moduł magazynowy Dokumentacja techniczna Specyfikacja wymagań Przypadki testowe Podręcznik użytkownika
Hierarchiczna struktura produktów Produkty Produkty specjalistyczne Produkty zarządcze Kod Przypadki testowe Opis architektury Wymagania Procesy biznesowe Plany Raporty . . .
„Konsumenci” produktów specjalistycznych kod + podręcznik (procesy biznes. + wymagania funkcjonalne) Użytkownik Nic nie można usunąć Maintainer kod + przyp. testowe + wymagania (funkcjonalne + pozafunkc.) + opis architektury
Hierarchiczna struktura produktów Produkty Produkty specjalistyczne Produkty zarządcze Kod Przypadki testowe Opis architektury Wymagania Procesy biznesowe Plany Raporty . . .
Produkty specjalistyczne a wydania Zależy od metodyki
Planowanie wg PRINCE2 Lista czynności Zależności między czynnościami Projektowanie planu Definiowanie i analiza produ-któw Identyfikacja czynności i za-leżności PL1 PL2 PL3
Oszacowanie pracochłonności Planowanie wg PRINCE2 Projektowanie planu Definiowanie i analiza produ-któw Identyfikacja czynności i za-leżności PL1 PL2 PL3 Szacowa-nie PL4 Oszacowanie pracochłonności
Planowanie wg PRINCE2 Harmonogram Projektowanie planu Definiowanie i analiza produ-któw Identyfikacja czynności i za-leżności PL1 PL2 PL3 Szerego-wanie Szacowa-nie PL5 PL4 Harmonogram
Planowanie wg PRINCE2 Rejestr ryzyka Projektowanie planu Definiowanie i analiza produ-któw Identyfikacja czynności i za-leżności PL1 PL2 PL3 Analizowanie ryzyka Szerego-wanie Szacowa-nie PL6 PL5 PL4 Rejestr ryzyka
Planowanie wg PRINCE2 Projektowanie planu Definiowanie i analiza produ-któw Identyfikacja czynności i za-leżności PL1 PL2 PL3 Scalanie planu Analizowanie ryzyka Szerego-wanie Szacowa-nie PL7 PL6 PL5 PL4
Problemy z grą planistyczną Wszystkie wymagania od razu?
Plan projektu Plan wydania Plan przyrostu Poziomy planowania Przyg. założ. Inic. proj. Architek- tura Wyd. 1 Wyd. 2 Wyd. 3 Zam. proj. Przyr. 1 Przyr. 2 Wdr. Plan projektu Plan wydania Plan przyrostu
Produkty specjalistyczne a wydania Zależy od projektu Zależy od metodyki
Produkty specjalistyczne a wydania Zależy od projektu AWK2C compiler x x
Planowanie projektu w XPrince Hierarchiczna struktura problemów Opisy wydań Terminy dostawy Projektowanie planu Definiowanie i analiza wydań Identyfikacja czynności i za-leżności PL1 PL2 PL3 Scalanie planu Analizowanie ryzyka Szerego-wanie Szacowa-nie PL7 PL6 PL5 PL4
Założenia – Kto? Komitet Sterujący Główny użytkownik Przewodn. Główny dostawca Kierownik Kierownik Zespołu Programiści Analityk Architekt
Założenia – Kto? Jurek – Główny użytkownik + Przewodniczący KS Ewa – Kierownik + Analityk Mirek – Architekt (przetwarzanie języka natural.) Łukasz – Architekt (IBM Eclipse i Java) Honoriusz – Programista Pankracy – Programista
Wydanie = 2 przyrosty + wdrożenie Przyrost = 3 tygodnie Założenia – Rytm? Wydanie = 2 przyrosty + wdrożenie Przyrost = 3 tygodnie Przyg. założ. proj. Inicjowanie projektu Architek- tura Wydanie 1 Wydanie 2 Wydanie 3 Zamkn. Projektu Przyrost 1 Przyrost 2 Wdroż.
Ograniczenia – wymagania pozafunkcjonalne
Diagram kontekstu – Architektura – Wersja 1 Bank System 1 Sokrates 1 System 2 Sokrates 2 Kandydat System 9 Sokrates 9
Diagram kontekstu – Architektura – Wersja 2 Bank Sokrates 1 System Sokrates 2 Kandydat Sokrates 9
Klient Informatycy Klient (c) Jerzy Nawrocki Gra planistyczna Klient Informatycy Klient 6 h 10 h Wyślij list Zamów książkę Zamów książkę Zamów książkę 10 h Pisanie opowieści Pracochł. + ryzyko Zakres XPrince dla architektów
Planowanie przedsięwzięcia (c) Jerzy Nawrocki Planowanie przedsięwzięcia Klient Informatycy Ręczne wprow. ocen Za duże Zgrubna ocena pracochłonności Klient Hierarchiczna struktura probl. Ręczne wprow. ocen Ręczne gen. proto. 1-krotny zapis Ręczne wprow. ocen Opisanie problemu XPrince dla architektów
Planowanie projektu w XPrince Hierarchiczna struktura problemów Opisy wydań Terminy dostawy Projektowanie planu Definiowanie i analiza wydań Identyfikacja czynności i za-leżności PL1 PL2 PL3 Scalanie planu Analizowanie ryzyka Szerego-wanie Szacowa-nie PL7 PL6 PL5 PL4
wymagania funkcj. (zarys) (c) Jerzy Nawrocki Planowanie projektu Opis wydania: problem procesy biznesowe wymagania funkcj. (zarys) Ręczne wprowadzanie ocen Ręczne gener. protokołów Wydanie 1 1-krotny zapis do bazy Wydanie 2 XPrince dla architektów
Planowanie projektu w XPrince Hierarchiczna struktura problemów Opisy wydań Terminy dostawy Projektowanie planu Definiowanie i analiza wydań Identyfikacja czynności i za-leżności PL1 PL2 PL3 Scalanie planu Analizowanie ryzyka Szerego-wanie Szacowa-nie PL7 PL6 PL5 PL4
Plan przedsięwzięcia
Extreme89 Prezentacja głównych praktyk XP bez programowania Zróżnicowanie wiedzy klienta i informatyków – potrzeba komunikacji Dopasowanie gry do czasu zajęć akademickich Możliwość współzawodnictwa
Uczestnicy gry Extreme89 Moderator Programiści Klient
Przebieg gry Extreme89
Wiedza klienta Wartość rynkowa Parametr Punkty Oprawa 4 Wkład 3 toner sterowanie arytmometr oprawa wkład komputer procesor drukarka laser pióro Wartość rynkowa Parametr Punkty Oprawa 4 Wkład 3 Pióro 24 ... ... Komputer 100 Testy akceptacyjne Parametr Przedział Oprawa 170..190 Wkład 150..450 Pióro 12500..12800 ... ... Komputer 5400..5700
Wiedza programistów Formuły wkład= F(x3, x4, 18) oprawa= F(x5, x6, 18) F(a, b, 1)= a F(a, b, 2)= b F(a, b, n)= F(a, b, n-2) + F(a, b, n-1) div 2 dla n>2 G(a, b, 1)= a G(a, b, 2)= b G(a, b, n)= G(a, b, n-2) + G(a, b, n-1) div 10 dla n>2 Formuły wkład= F(x3, x4, 18) oprawa= F(x5, x6, 18) pióro= wkład + F(x5, x6, 35) ... toner= F(x13, x14, 18) drukarka= laser + F(x13, ..., 35) Zestaw wartości xi x1 = 2 x26 = ... x2 = 3 x27 = 2 x3 = 2 x28 = 16 x4 = 4 x29 = ... ... X30 = 2
Scenariusz gry Czas gry 0 min. 5 min. 10 min. 15 min. 27 min. 32 min. Opis czynności Klient i programiści poznają swoją wiedzę dziedz. Planowanie wydania I Planowanie przyrostu I.1
Przebieg gry Extreme89 Czy pióro jest komponentem innego obiektu? Brakuje danych!!! Za pióro dają 24
Przebieg gry Extreme89 Zmiany...
Scenariusz gry Czas gry 0 min. 5 min. 10 min. 15 min. 27 min. 32 min. Opis czynności Klient i programiści poznają swoją wiedzę dziedz. Planowanie wydania I Planowanie przyrostu I.1 Praca Planowanie przyrostu I.2 Przekazanie wydania do użytkownika - weryfikacja
Wiedza klienta Wartość rynkowa Parametr Punkty Oprawa 4 Wkład 3 toner sterowanie arytmometr oprawa wkład komputer procesor drukarka laser pióro Wartość rynkowa Parametr Punkty Oprawa 4 Wkład 3 Pióro 24 ... ... Komputer 100 Testy akceptacyjne Parametr Przedział Oprawa 170..190 Wkład 150..450 Pióro 12500..12800 ... ... Komputer 5400..5700
Scenariusz gry Czas gry 0 min. 5 min. 10 min. 15 min. 27 min. 32 min. Opis czynności Klient i programiści poznają swoją wiedzę dziedz. Planowanie wydania I Planowanie przyrostu I.1 Praca Planowanie przyrostu I.2 Przekazanie wydania do użytkownika - weryfikacja Planowanie wydania II Planowanie przyrostu II.1 Planowanie przyrostu II.2
Przebieg gry Extreme89 oprawa 170 wkład 400 laser 565
Dokument rozpoczęcia projektu Plan jakości projektu Plan projektu Spojrzenie biznesowe IP Planowanie jakości Planowanie projektu Dopracowanie spojrzenia biz. i czynników ryzyka IP1 IP2 IP3 Zdefiniowanie mechanizmów kontroli Założenie plików projektu Scalenie dokumentu rozpocz. IP4 IP5 IP6 Plan komunikacji Mechaniz-my kontr. Rejestr spraw Rejestr jakości Rejestr doświadczeń Dokument rozpoczęcia projektu
Planowanie projektu w XPrince Planowanie jakości IP1 Założenia architekt. Zarys zespołu Definiowanie i analiza wydań PL1 PL2 PL3 Scalanie planu Analizowanie ryzyka PL5 PL4