Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałEleonora Kucharska Został zmieniony 5 lat temu
1
Kontrola jakości Inżynieria oprogramowania II
(c) Jerzy Nawrocki Wykład 2 Inżynieria oprogramowania II Kontrola jakości Copyright, 2004 © Jerzy R. Nawrocki Inżynieria oprogramowania II
2
Jakość oprogramowania
(c) Jerzy Nawrocki Wykład 2 Jakość oprogramowania Philip Crosby’83: zgodność z wymaganiami Jakość projektu (wymagania a projekt) Jakość wykonania (projekt a implementacja) Copyright (c) 2004 by J. Nawrocki Inżynieria oprogramowania II
3
Osiem wymiarów jakości
D.A. Garvin, Competing in the Eight Dimensions of Quality, Harvard Business Review, Sept.-Oct A gdzie cena? 1. Wydajność (szybkość, ..) 2. Niezawodność (częst. błędów) 3. Wytrzymałość (jak długo) 4. Łatwość naprawy 5. Estetyka 6. Cechy funkcjonalne 7. Reputacja 8. Zgodność ze standardami i wymaganiami Copyright (c) 2004 by J. Nawrocki
4
Pracochłonność testowania
Testowanie: ~ % % całkowitej pracochłonności. Testowanie systemów krytycznych: 70% - 80% całkowitej pracochłonności (!) -- Roger Pressman’97 Copyright (c) 2004 by J. Nawrocki
5
Cztery filary zapewniania jakości
(c) Jerzy Nawrocki Wykład 2 Wprowadzenie Cztery filary zapewniania jakości Jakość oprogramowania Zarz. konfiguracją Testowanie Przeglądy Refaktoryzacja Copyright (c) 2004 by J. Nawrocki Inżynieria oprogramowania II
6
Copyright (c) 2004 by J. Nawrocki
(c) Jerzy Nawrocki Wykład 2 Wprowadzenie Koszt naprawy błędu Względny czas identyfikacji błędu (IBM ): w trakcie przeglądu projektu: 1 w trakcie inspekcji kodu: 20 w trakcie testów maszynowych: 82 Copyright (c) 2004 by J. Nawrocki Inżynieria oprogramowania II
7
Przetargi dot. kontroli jakości
SI Platforma Wyborcza: ok. 1 mln zł SI GIIF (MF): kilkaset tysięcy złotych System Zintegrowanej Taryfy Celnej ISZTAR2: 600 godz. x 300 zł/godz. 200 tys. zł Copyright (c) 2004 by J. Nawrocki
8
Nawyki skutecznego działania
.. a sprawa testowania Ostrz piłę Dbaj o synergię Najpierw staraj się zrozumieć Myśl o obopólnej korzyści Aby rzeczy pierwsze były pierwsze Zaczynaj mając koniec na względzie Bądź proaktywny Copyright (c) 2004 by J. Nawrocki
9
Wprowadzenie do testowania
Cele testowania Testowanie = wykonanie programu celem znalezienia błędu. Jakość przypadku testowego: prawdopodobieństwo znalezienia jeszcze nie wykrytego błędu. Udany test to taki, który wykrywa jeszcze nie wykryty błąd. -- Glen Myers’79 Copyright (c) 2004 by J. Nawrocki
10
Wprowadzenie do testowania
Powiedzenie Dijkstry Testowaniem nie można wykazać braku błędów, można w ten sposób jedynie wykazać ich obecność. -- E.W Dijkstra Copyright (c) 2004 by J. Nawrocki
11
Jakość oprogramowania
Testowanie Testy systemowe Testy akceptacyjne Testy integracyjne Testy jednostkowe { n+=NF; } END { print n; } Copyright (c) 2004 by J. Nawrocki
12
Wprowadzenie do testowania
Zasady testowania Wszystkie testy powinny być powiązane z wymaganiami użytkownika. Testowanie należy planować na długo przed jego rozpoczęciem. W przypadku testowania obowiązuje zasada Pareto (80 /20). Copyright (c) 2004 by J. Nawrocki
13
Wprowadzenie do testowania
Zasady testowania Testowanie należy przeprowadzać “od dołu do góry”. Testowanie wyczerpujące nie jest możliwe. Pewne testy powinny być wykonane przez niezależną trzecią stronę. Copyright (c) 2004 by J. Nawrocki
14
Copyright (c) 2004 by J. Nawrocki
Wprowadzenie Przegląd Przegląd (review) = Analiza artefaktu (np.kodu, dokumentu) realizowana przez grupę osób. Inspekcja (inspection) = Najbardziej sformalizowana postać przeglądu Artefakt Copyright (c) 2004 by J. Nawrocki
15
Modele doskonalenia procesów
CMM: Capability Maturity Model Zarządzanie wymaganiami Planowanie przedsięwzięcia Śledzenie postępów Zarządzanie podzleceniami Zapewnianie jakości Zarządzanie konfiguracją Pomiary i analiza 5. Optymalizujący 4. Zarządzany ilościowo 3. Zdefiniowany 2. Zarządzany (powtarzalny) 1. Początkowy Copyright (c) 2004 by J. Nawrocki
16
Copyright (c) 2004 by J. Nawrocki
(c) Jerzy Nawrocki Wykład 2 Zapewnianie jakości Zdolność 1. Istnieje grupa SQA odpowiedzialna za koordynację i implementację zapewniania jakości oprogramowania w przedsięwzięciu. Copyright (c) 2004 by J. Nawrocki Inżynieria oprogramowania II
17
Copyright (c) 2004 by J. Nawrocki
Zapewnianie jakości Działanie 4. Grupa SQA realizuje przeglądy działań dot. inżynierii oprogramowania celem weryfikacji ich zgodności z SDP, wybranymi standardami i procedurami. QA Copyright (c) 2004 by J. Nawrocki
18
Copyright (c) 2004 by J. Nawrocki
Zapewnianie jakości Działanie 5. Grupa SQA realizuje audyty wybranych produktów oprogramowania aby zweryfikować ich zgodność z przyjętymi standardami i wymaganiami zawartymi w kontrakcie. QA if (a < b) a+= b; Copyright (c) 2004 by J. Nawrocki
19
Copyright (c) 2004 by J. Nawrocki
Wprowadzenie Rola przeglądów Zapewnianie jakości Przekazywanie informacji Copyright (c) 2004 by J. Nawrocki
20
Copyright (c) 2004 by J. Nawrocki
(c) Jerzy Nawrocki Wykład 2 Plan wykładu Wprowadzenie Analiza przypadku Formalny przegląd techniczny Inspekcje Fagana Przeglądy aktywne i inspekcje fazowe Copyright (c) 2004 by J. Nawrocki Inżynieria oprogramowania II
21
Copyright (c) 2004 by J. Nawrocki
Procedura FTR Wprowadzenie FTR = Formal Technical Review (Formalny przegląd techniczny) Copyright (c) 2004 by J. Nawrocki
22
Copyright (c) 2004 by J. Nawrocki
Procedura FTR Osoby Producent Kierownik projektu Kierownik przeglądu Recenzent (recenzenci) Sekretarz Copyright (c) 2004 by J. Nawrocki
23
Copyright (c) 2004 by J. Nawrocki
Procedura FTR Kroki (I) Producent informuje kierownika projektu + kierownika przeglądu, że produkt jest gotowy i śle im jego kopię Kierownik przeglądu ustala, w porozumieniu ze wszystkimi uczestnikami przeglądu datę spotkania (najlepiej w ciągu 3 dni). Przesyła też recenzentom kopie produktu. Copyright (c) 2004 by J. Nawrocki
24
Copyright (c) 2004 by J. Nawrocki
Procedura FTR Kroki (II) Kierownik przeglądu opracowuje agendę spotkania. Spotkanie FTR Sekretarz przygotowuje raport przeglądu i wysyła go do uczestników spotkania. Jego kopia idzie też do kierownika projektu. Copyright (c) 2004 by J. Nawrocki
25
Copyright (c) 2004 by J. Nawrocki
Spotkanie FTR Propozycja agendy (I) Kierownik przeglądu: Przedstawienie agendy. Uczestnicy mogą proponować zmiany. Sekretarz: Zbieranie kopii formularzy przygotowawczych. Producent: Prezentacja produktu. Recenzenci mogą zadawać pytania. Sekretarz notuje problemy i wykryte błędy. Copyright (c) 2004 by J. Nawrocki
26
Propozycja agendy (II)
Spotkanie FTR Propozycja agendy (II) Sekretarz: Podsumowuje problemy i błędy. Wszyscy uczestnicy oprócz producenta: Tajne głosowanie wstępne. Sekretarz: Zbiera głosy i prezentuje wyniki. Producent: “Ostatnie słowo” Wszyscy uczestnicy oprócz pro-ducenta: Ostateczne głosowanie Copyright (c) 2004 by J. Nawrocki
27
Copyright (c) 2004 by J. Nawrocki
Spotkanie FTR Decyzja Akceptacja. Żadne modyfikacje nie są konieczne. Akceptacja warunkowa. Są drobne błędy ale dodatkowy przegląd nie jest konieczny (kierownik projektu sprawdzi wersję końcową). Odrzucenie. Są istotne błędy i dodatkowy przegląd jest konieczny. Copyright (c) 2004 by J. Nawrocki
28
Copyright (c) 2004 by J. Nawrocki
Spotkanie FTR Decyzja Jeśli decyzja recenzentów nie jest jasna (niektórzy proponują Akceptację a inni Odrzucenie), ostateczna decyzja należy do Copyright (c) 2004 by J. Nawrocki
29
Copyright (c) 2004 by J. Nawrocki
Formularz recenzji Nagłówek Nazwa produktu i jego wersja: Producent: Recenzent: Produkt otrzymano: Spodziewany czas przygot.: Faktyczny czas przygot.: Termin spotkania: Wstępna decyzja: Copyright (c) 2004 by J. Nawrocki
30
Copyright (c) 2004 by J. Nawrocki
Formularz recenzji Część zasadnicza Poważne błędy i problemy (np. ukryte problemy, niejednoznacz-ność, niezrozumienie) Opis problemu (rodzaj) Drobne problemy (np. ortografia, gramatyka, format) Opis problemu (rodzaj) Copyright (c) 2004 by J. Nawrocki
31
Rodzaje - Główne przyczyny błędów
Formularz recenzji Rodzaje - Główne przyczyny błędów “Two” or “too”? Edukacja: brak rozumienia Komunikacja: brak poinformowanie Przeoczenie: wiedziałem, że mam zrobić ale zapomniałem Transkrypcja: wiedziałem, ale pomyliłem się Proces: winna jest procedura Copyright (c) 2004 by J. Nawrocki
32
Copyright (c) 2004 by J. Nawrocki
(c) Jerzy Nawrocki Wykład 2 Plan wykładu Wprowadzenie Analiza przypadku Formalny przegląd techniczny Inspekcje Fagana Przeglądy aktywne i inspekcje fazowe Copyright (c) 2004 by J. Nawrocki Inżynieria oprogramowania II
33
Copyright (c) 2004 by J. Nawrocki
Inspekcje Fagana Cykl życia Specyfikacje zewnętrzne (funkcje) Specyfikacje wewnętrzne (moduł) - I0 Specyfikacje logiki przetw - I1 inspek projek Projekt Kodowanie (logika) - I2 inspek kodu Testowanie jednostkowe Kod Test Test funkcji (zewn.), składnika, systemu Copyright (c) 2004 by J. Nawrocki
34
Copyright (c) 2004 by J. Nawrocki
Inspekcje Fagana Implementator Sesja przeglądu Projektant Moderator Tester Copyright (c) 2004 by J. Nawrocki
35
Copyright (c) 2004 by J. Nawrocki
Inspekcje Fagana Proktant Implem. Moderator Tester Review session 1. Omówienie (cały zespół) 2. Przygot. (indywidualnie) 3. Inspekcja (cały zespół) 4. Naprawa 5. Sprawdzenie Copyright (c) 2004 by J. Nawrocki
36
Copyright (c) 2004 by J. Nawrocki
Inspekcje Fagana Prędkość (loc/h) I1 I2 Omówienie (zespół) niepotrzebne Przygotowanie (indyw.) Inspekcja (zespół) Naprawa Sprawdzenie Spotkanie inspekcyjne <= 2 godz 1 - 2 spotkania na dzień Copyright (c) 2004 by J. Nawrocki
37
Copyright (c) 2004 by J. Nawrocki
Inspekcje Fagana Lista kontrolna dla inspekcji projektu Czy wszystkie stałe są zdefiniowane? Czy w trakcie manipulacji kolejką może wystąpić przerwanie? Jeśli tak, to czy kolejka jest ujęta w rejon krytyczny? Czy rejestry są odtwarzane przy wyjściu? Czy wszystkie liczniki są odpowiednio inicjowane (0 lub 1)? Czy są literały numeryczne, które powinny być zastąpione stałymi symbolicznymi? Czy wszystkie bloki na schemacie są potrzebne Missing Wr Ex Copyright (c) 2004 by J. Nawrocki
38
Copyright (c) 2004 by J. Nawrocki
(c) Jerzy Nawrocki Wykład 2 Plan wykładu Wprowadzenie Analiza przypadku Formalny przegląd techniczny Inspekcje Fagana Przeglądy aktywne i inspekcje fazowe Copyright (c) 2004 by J. Nawrocki Inżynieria oprogramowania II
39
Copyright (c) 2004 by J. Nawrocki
Przeglądy aktywne Parnas i Weiss, 1985 Pytania formułowane przez autorów - zachęta do dokładnej recenzji Kilka krótkich przeglądów skupiających się na części produktu (dokumentu) Copyright (c) 2004 by J. Nawrocki
40
Copyright (c) 2004 by J. Nawrocki
Inspekcje fazowe 1 Zgodność ze standardem dokumentu. Także sprawdzenie ortografii i gramatyki. 2. Struktura kodu źródłowego. 3. Czytelność. 4. Dobre praktyki programistyczne (skoki, globalne zmienne, ..). 5. Właściwe użycie konstrukcji programistycznych (aktualizacja zmiennych sterujących pętli, zamykanie plików, ...). 6. Poprawność funkcjonalna. Copyright (c) 2004 by J. Nawrocki
41
Copyright (c) 2004 by J. Nawrocki
Podsumowanie Inspekcja = przegląd + lista kontrolna Problemy z listami kontrolnymi Inspekcja i przegląd może ale nie musi zawierać prezentacji (różne zdania) Może być przegląd bez recenzji (ale z prezentacją) Czasochłonność inspekcji: ok. 20 godz. / KLOC na osobę Szacowanie liczby błędów Wreszcie! Copyright (c) 2004 by J. Nawrocki
42
Copyright (c) 2004 by J. Nawrocki
Zapewnianie jakości Ostrzeżenie Pewien dyrektor w Sopocie Pracując w PZJ-cie Chcąc robić coś w robocie Wymyślał standardy na krocie Za co dostanie w XXXX po robocie. -- Anonim Copyright (c) 2004 by J. Nawrocki
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.