11 6





W.Dąbrowski :: Budowa i wytwarzanie oprogramowania ::








Wykłady

> Testowanie > Inspekcje










11.6 Inspekcje





Inspekcja jest formalną techniką oceny, w której wymagania na oprogramo-wanie, projekt lub kod są szczegółowo badane przez osobę lub grupę osób nie będą-cych jej autorami. Inspekcję przeprowadza się w celu identyfikacji błędów, spraw-dzenia czy nie zostały naruszone standardy oraz identyfikacji innych problemów powstałych w czasie procesu wytwórczego oprogramowania [IEEE Std. 729-1983].

Inspekcja powinna być przeprowadzana w kilku staranni zaplanowanych i przygotowanych sesjach. W czasie każdej sesji powinny być protokołowane wszel-kie dostrzeżone błędy i problemy. Ważne jest aby inspekcja wykonywana była bez udziału kierownictwa (najczęściej przez techników dla techników). Dzieje się tak dlatego, aby wyeliminować niekorzystny wpływ oceny pracy członków zespołu przez kierownictwo na podstawie dostrzeżonych w ich zadaniach błędach lub uster-kach. Założeniem inspekcji jest, aby do kierownictwa trafiały jedynie zbiorcze uwagi i wnioski dotyczące całego procesu lub produktu poddawanego inspekcji i aby jej wyniki nie były wykorzystywane do oceny poszczególnych pracowników.

Proces inspekcji powinien kończyć się spotkaniem kontrolnym członków ze-społu inspekcyjnego, w czasie którego przeprowadzana jest burza mózgów. Celem tej burzy mózgów jest ostateczna ocena oraz sformułowanie wniosków naprawczych zmierzających do wyeliminowania dostrzeżonych błędów oraz ewentualnego wdro-żenia procedur zmierzających do ich uniknięcia w przyszłości.



Rys. 11.6.1 Przebieg inspekcji


Klasyczna inspekcja składa się z kilku kroków przedstawionych na rysunku 11.6.1. Kroki inspekcji są następujące:


Inicjowanie - zgłoszenie potrzeby inspekcji; wyłonienie lidera inspekcji


Planowanie - lider ustala uczestników, listy kontrolne, zbiory reguł, tempo kontroli, daty spotkań kontrolnych


Spotkanie inicjujące - ustalenie ról, ustalenie celów i oczekiwań, dystrybucja dokumentu, szkolenie w inspekcjach


Kontrola indywidualna - uczestnicy sprawdzają dokument wzglę-dem zadanych kryteriów, reguł i list kontrolnych (znaleźć jak najwięcej unikalnych błędów)


Spotkanie kontrolne (burza mózgów) - Notowanie uwag z kontroli indywidualnej; każda uwaga jest kwalifikowana jako "zagadnienie" (po-tencjalny błąd), "pytanie o intencje", "propozycja poprawy procesu"; szu-kanie nowych zagadnień; poprawa procesu inspekcji.


Poprawa produktu: edytor (najczęściej autor) rozwiązuje zagadnie-nia; prawdziwy problem może być inny niż jest to zgłoszone; zagadania są kwalifikowane jako błędy lub dokument jest redagowany, by uniknąć błędnych interpretacji


Kontynuacja: lider sprawdza, że obsłużono wszystkie zagadnienia: są poprawione lub są w systemie zarządzania konfiguracją; sprawdza kom-pletność, a nie poprawność


Decyzja o gotowości; lider podejmuje decyzje czy produkt jest go-towy do przekazania dalej (np. liczba błędów w określonym limicie)


Rozpowszechnienie dokumentu


Burza mózgów ma na celu identyfikację przyczyn błędów (max 10 najpoważniejszych) i propozycji poprawy procesu programowego, by błędy te nic powtórzyły się w przyszłości; idee są notowane bez ich głę-bokiej oceny


Jak wykazują badania jest to technika o najlepszej skuteczności (od 50% do 80%; średnia 60%; dla testowania średnia 30%, max 50%). Ze względu na sposób realizacji i liczne warunki ograniczające jest jednak stosowana stosunkowo rzadko i tylko do "elitarnych" systemów.

Ocenia się, że inspekcja przyczynia się do wzrost produktywności od 30% do 100%, skrócenia czasu projektu od 10% do 30%, zmniejszenia kosztu i czasu wyko-nywania testów od 5 do 10 razy (mniej błędów, mniej testów regresyjnych), 10 razy mniejsze koszty pielęgnacji (naprawczej), poprawy procesu programowego. W ze-społach stosujących technikę inspekcji zauważono też dostarczanie na czas produk-tów (bo wcześnie wiemy o problemach), wzrost komfortu pracy (brak presji czasu i nadgodzin) i zwiększenie motywacji pracowników.

Wpływa na to zapewne wyższa świadomość, że produkt będzie oceniany (wybór pomiędzy byciem zażenowanym a dumnym), nauka przez znajdowanie błę-dów oraz mniejsze koszty marketingu ("przykrywanie" braku jakości).

Brak powszechności inspekcji wynika między innymi z konieczności prawidłowego jej zaplanowania i wykonania przy udziale kompetentnych osób. Ni wymaga ona natomiast specjalizowanych narzędzi. Dodatkowo analiza kosztów i zysków inspekcji nie jest prosta. Inspekcja może nie przynieść spodziewanych korzyści jeśli przeprowadzana jest ocena osób na podstawie zebranych metryk lub zaangażowani są słabi kontrolerzy. Metoda inspekcji może też prowadzić do skłonności autora do lekceważenia defektów na etapie opracowywania dokumentów ("inspekcja wskaże błędy...") oraz poczucia zagrożenia u autora - nieuzasadniona obrona własnych rozwiązań.





Przejdź dalej







Wykłady

> Testowanie > Inspekcje









Wyszukiwarka