Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Inżynieria Oprogramowania Copyright, 2002 © Jerzy R. Nawrocki Wprowadzenie do informatyki.

Podobne prezentacje


Prezentacja na temat: "Inżynieria Oprogramowania Copyright, 2002 © Jerzy R. Nawrocki Wprowadzenie do informatyki."— Zapis prezentacji:

1 Inżynieria Oprogramowania Copyright, 2002 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl http://www.cs.put.poznan.pl/jnawrocki/ics/ Wprowadzenie do informatyki Wykład 7 Wprowadzenie do informatyki Wykład 7

2 J. Nawrocki, Inżynieria Oprogr. WstępWstęp LOOPLOOP Syndrom LOOP ate (późno) oor quality (kiepska jakość) ver budget (przekroczony budżet) vertime (nadgodziny) Loop

3 J. Nawrocki, Inżynieria Oprogr. Plan wykładu ISO 9000 CMM Programowanie Ekstremalne Studio Rozwoju Oprogramowania

4 J. Nawrocki, Inżynieria Oprogr. Asesor Dobrzy ISO 9000 Kryte- ria Źli

5 J. Nawrocki, Inżynieria Oprogr. Seria ISO 9000:2000 ISO 9000:2000 Systemy zarządzania jakością – Podstawy i terminologia ISO 9001:2000 Systemy zarządzania jakością – Wymagania (zastępuje ISO 9001:1994, ISO 9002:1994, ISO 9003:1994) ISO 9004:2000 Systemy zarządzania jakością – Wytyczne doskonalenia funkcjonowania (zastępuje ISO 9004-1:1994, ISO 9000-2:1994)

6 J. Nawrocki, Inżynieria Oprogr. JakośćJakość Stopień, w jakim zbiór inherentnych właściwości spełnia wymagania ISO 9000:2000, rozdz. 3.1.1

7 J. Nawrocki, Inżynieria Oprogr. Podejście procesowe Proces Wej.Wyj. Zasoby Działanie wykorzystujące zasoby i zarządzane w celu umożliwienia przekształcenia wej. w wyj. ISO 9001:2000, rozdz. 0.2

8 J. Nawrocki, Inżynieria Oprogr. DokumentacjaDokumentacja Polityka jakości i cele jakości Księga jakości Udokumentowane procedury wymagane przez standard Plany jakości, udokumentowane procedury, instrukcje pracy Zapisy

9 J. Nawrocki, Inżynieria Oprogr. Główne części ISO 9001:2000 Odpowiedzialność kierownictwa Zarządzanie zasobami Realizacja produktu Pomiary, analiza i doskonalenie

10 J. Nawrocki, Inżynieria Oprogr. Plan wykładu ISO 9000 CMM Programowanie Ekstremalne Studio Rozwoju Oprogramowania

11 J. Nawrocki, Inżynieria Oprogr. Modele doskonalenia procesów CMM: Capability Maturity Model 1. Początkowy 2. Zarządzany (powtarzalny) 3. Zdefiniowany 4. Zarządzany ilościowo 5. Optymalizujący Organizacje programistyczne SEI, Pittsburg, USA 1989-1993

12 J. Nawrocki, Inżynieria Oprogr. Modele doskonalenia procesów CMM: Capability Maturity Model 1. Początkowy 2. Zarządzany (powtarzalny) 3. Zdefiniowany 4. Zarządzany ilościowo 5. Optymalizujący Zarządzanie wymaganiami Planowanie przedsięwzięcia Śledzenie postępów Zarządzanie podzleceniami Zapewnienie jakości Zarządzanie konfiguracją Pomiary i analiza

13 J. Nawrocki, Inżynieria Oprogr. Zarządzanie wymaganiami SP 1.1 Uzyskaj zrozumienie wymagań SP 1.3 Panuj nad zmianami wymagań SP 1.5 Identyfikuj niespójności między wymaganiami a produktami projektu

14 J. Nawrocki, Inżynieria Oprogr. Utwórz zarządzany proces Planuj proces Dostarcz zasoby Przypisz odpowiedzialność Szkol ludzi

15 J. Nawrocki, Inżynieria Oprogr. Plan wykładu ISO 9000 CMM Programowanie Ekstremalne Studio Rozwoju Oprogramowania

16 J. Nawrocki, Inżynieria Oprogr. WstępWstęp Problemy Za dużo papierów! Za dużo spotkań!

17 J. Nawrocki, Inżynieria Oprogr. WstępWstęp

18 WstępWstęp

19 WstępWstęp Tom DeMarco "XP jest dzisiaj najważniejszym ruchem w naszej dziedzinie." Extreme Programming (XP) = lekka (lightweight, agile) lekka (lightweight, agile) metodyka rozwoju oprogramowania metodyka rozwoju oprogramowania

20 J. Nawrocki, Inżynieria Oprogr. XP Zbawca WstępWstęp Najważniejsza komunikacja ustna. Jedyne artefakty: kod + testy IEEE/ANSI standard 830/1993? Zawsze to mówiłem! Zbędny! Inspekcje Fagana? Punkty funkcyjne? Żadnych nadgodzin! Zbędne!

21 J. Nawrocki, Inżynieria Oprogr. WstępWstęp 1. Zupełnie niezgodny Model dojrzałości dla XP 2. Początkowy Relacje z klientem (CRM) Zapewnienie jakości produktu 3. Zaawansowany Programowanie parami 4. Dojrzały Wydajność procesu

22 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Nie musisz być wydajny, byleś był skuteczny Klient powinien cały czas pracować z zespołem Uczyń klienta swoim przywódcą (co robić ważniejsze niż jak robić) Zadbaj o efektywną współpracę

23 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Panie! Oto pierwsze wydanie statku umożliwiającego na księżyc latanie. Stosuj częste krótkie wydania Wydanie: Ma wartość użytkową. Trafia do użytkowników końcowych.

24 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Wydanie podziel na przyrosty Przyrost I Przyrost II Przyrost: Niepusty zbiór opowieści użytkownika. Charakter wewnętrzny (nie trafia do użytkownika końcowego). 2 – 3 tygodnie (70%).

25 J. Nawrocki, Inżynieria Oprogr. Elaboration iteration 2 Przyrost Relacje z klientem Struktura przyrostu wg RUP Analiza wymagań Projekt Kodowanie, testy jednost. Testy systemu i podsys.

26 J. Nawrocki, Inżynieria Oprogr. Balon? To taka łódka, tyle, że pływa w powietrzu a nie po wodzie. Relacje z klientem Znajdź metaforę dla systemu Metafora: Wyjaśnia działanie systemu w terminach zrozumiałych dla klienta.

27 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Opowieści użytkownika It was not OK. Muszę napisać opowieść. Opowieść: Jest wstępem do rozmowy. Jest krótka. Opisuje funkcję/cechę systemu. Ma wartość dla klienta. Musi być testowalna.

28 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Data: 6.11.01 Typ: Nowa: X Naprawa:__ Rozbudowa:__ Numer opowieści: 23 OPOWIEŚĆ: Dla każdego konta oblicz saldo dodając wszystkie wpłaty i odejmując wszystkie wypłaty. Rozmiar: Opowieści użytkownika

29 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Stosuj grę planistyczną Aby rzeczy pierwsze były pierwsze – S. Covey

30 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Planowanie wydania Pisze opowieść It was not OK. Dzieli opowieść It was not OK. Szacują opowieść It was not OK. Za duża!

31 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Planowanie wydania (kont.) Sortowanie opowieści wg ich wartości. Sortowanie wg ryzyka: przewidywalne średnio wcale Prędkość: pracochłonność/ przyrost Wybiera zakres

32 J. Nawrocki, Inżynieria Oprogr. Relacje z klientem Mierz prędkość projektu (IET/tydzień) Eksperymentuj by zmniejszyć ryzyko Nie poszerzaj funkcjonalności zbyt wcześnie Wciąż tworzę dzieła wiekopomne, O których jutro... sam zapomnę.

33 J. Nawrocki, Inżynieria Oprogr. WstępWstęp 1. Zupełnie niezgodny Model dojrzałości dla XP 2. Początkowy Relacje z klientem (CRM) Zapewnienie jakości produktu 3. Zaawansowany Programowanie parami 4. Dojrzały Wydajność procesu

34 J. Nawrocki, Inżynieria Oprogr. Zapewnianie jakości Dbaj o prostotę Unikaj optymalizacji Dla każdej jednostki kodu opracuj NAJPIERW zestaw testów, potem pisz kod. Automatyzuj wykonanie testów (xUnit) Co pewien czas dokonuj refaktoryzacji

35 J. Nawrocki, Inżynieria Oprogr. Zapewnianie jakości Kod musi przejść wszystkie testy jednostkowe zanim przekażesz go do eksploatacji Dla każdego wykrytego błędu utwórz zestaw testów Często integruj kod Często wykonuj testy akceptacyjne i publikuj ich wyniki

36 J. Nawrocki, Inżynieria Oprogr. WstępWstęp 1. Zupełnie niezgodny Model dojrzałości dla XP 2. Początkowy Relacje z klientem (CRM) Zapewnienie jakości produktu 3. Zaawansowany Programowanie parami 4. Dojrzały Wydajność procesu

37 J. Nawrocki, Inżynieria Oprogr. Programowanie parami Autor Recenzent if (x=y) z=0; Ma być x==y

38 J. Nawrocki, Inżynieria Oprogr. Programowanie parami Po pewnym czasie.. AutorRecenzent x-=y; else Jak to testować?

39 J. Nawrocki, Inżynieria Oprogr. Programowanie parami Cały produkt jest kodowany w parach. Standard kodowania. Częste integracje. Tylko jedna para integruje kod w danej chwili. Pary się zmieniają. Error

40 J. Nawrocki, Inżynieria Oprogr. Programowanie parami Kod jest własnością całego zespołu. System zarządzania wersjami ! Otwarta przestrzeń pracy dla zespołu. Error

41 J. Nawrocki, Inżynieria Oprogr. WstępWstęp 1. Zupełnie niezgodny Model dojrzałości dla XP 2. Początkowy Relacje z klientem (CRM) Zapewnienie jakości produktu 3. Zaawansowany Programowanie parami 4. Dojrzały Wydajność procesu

42 J. Nawrocki, Inżynieria Oprogr. Plan wykładu ISO 9000 CMM Programowanie Ekstremalne Studio Rozwoju Oprogramowania

43 J. Nawrocki, Inżynieria Oprogr. Studio Rozwoju Oprogramowania Od 1998 Część programu Master in Software Engineering Corocznie 11 przedsięwzięć realizowanych w zespołach 8-osobowych (III + IV + V rok)

44 J. Nawrocki, Inżynieria Oprogr. Zespół projektowy Zarządzanie projektem + zarządzanie produktem IV rok Zarządzanie projektem + zarządzanie produktem IV rok Zapewnianie jakości V rok Zapewnianie jakości V rok Projektowanie, implementacja, testowanie, dokumentacja III rok Projektowanie, implementacja, testowanie, dokumentacja III rok Decyzje biznesowe + wiedza Klient Decyzje biznesowe + wiedza Klient

45 J. Nawrocki, Inżynieria Oprogr. MetodykaMetodyka CMMI Poziom 2 Zarządzanie wymaganiamiZarządzanie wymaganiami Planowanie i kontrola przedsięwzięćPlanowanie i kontrola przedsięwzięć Zapewnianie jakościZapewnianie jakości Zarządzanie konfiguracjąZarządzanie konfiguracją Analiza i pomiaryAnaliza i pomiary ISO 9001:2000 XP Rola klienta i gra planistycznaRola klienta i gra planistyczna Krótkie przyrosty i wydaniaKrótkie przyrosty i wydania Automatyczne testowanie + testy akceptacyjneAutomatyczne testowanie + testy akceptacyjne CMMI Poziom 2 ISO 9001 XP Projekty 2002

46 J. Nawrocki, Inżynieria Oprogr. PodsumowaniePodsumowanie XP jest lekką metodyką programowania Małe przedsięwzięcia programistyczne (do 10 osób). Podstawowe czynniki ryzyka: brak dokumentacji – pielęgnacja produktu, problemy z dostępnością klienta, tylko 1 przedstawiciel klienta. Wreszcie!

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


Pobierz ppt "Inżynieria Oprogramowania Copyright, 2002 © Jerzy R. Nawrocki Wprowadzenie do informatyki."

Podobne prezentacje


Reklamy Google