Weryfikacja i walidacja - omówienie

Nasza ocena:

3
Pobrań: 35
Wyświetleń: 679
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Weryfikacja i walidacja - omówienie - strona 1

Fragment notatki:

Weryfikacja i walidacja
Walidacja – proces oceny oprogramowania na zakończenie procesu (fazy) produkcyjnej w celu
sprawdzenia, czy jest wolne od błędów i niezgodności
Weryfikacja – proces określenia, czy produkt danej fazy produkcyjnej spełnia wymagania
postawione w fazie poprzedniej
Metody:
– przeglądy techniczne oprogramowania (przegląd techniczny wykonywalnej specyfikacji
programu)
– dowodzenie poprawności
– symulacje i prototypowanie
– śledzenie wymagań
Warto zapamiętać!
– wydajność testowania to 2-4 błędów/h, a przeglądów 10-12 błędów/h
– pracochłonność poprawy błędów wykrytych w testowania to 10-40 h/błąd, a w wyniku
przeglądu 1 h/błąd
Testowanie
Testowanie – proces sprawdzania/oceny, czy produkt lub jego część jest „dobra”.
Atestowanie (walidacja) – testowanie zgodności systemu z rzeczywistymi potrzebami
użytkownika
Klasyfikacja testów
Testy statystyczne – wykrywanie przyczyn najczęstszych błędnych wykonań oraz ocena
niezawodności systemu.
Schemat wykonania:
– losowa konstrukcja danych wejściowych zgodnych z rozkładem prawdopodobieństwa tych
danych
– określenie wyników poprawnego działania systemu na tych danych
– uruchomienie systemu oraz porównanie wyników działania z poprawnymi wynikami
Niektóre cechy:
– testowanie systemu w typowych sytuacjach
– możliwość automatyzacji (brute force, sprawdzanie wszystkich możliwości?)
Miary niezawodności oprogramowania
– prawdopodobieństwo wystąpienia błędnego wykonania podczas realizacji transakcji
• stosowane głównie w przypadku testowania systemów o charakterze transakcyjnym
(operacje mogą się zakończyć wyłącznie sukcesem bądź ich anulacją)
• wyliczane na podstawie częstości transakcji zakończonych niepowodzeniem
– częstotliwość występowania błędnych wykonań
• dotyczy głównie systemów, które nie posiadają charakteru transakcyjnego
• określa przewidywalną liczbę błędnych wykonań w jednostce czasu
– średni czas między błędnymi wykonaniami
• szacowany czas pomiędzy wystąpieniem błędnych wykonań
– dostępność systemu
• określa prawdopodobieństwo dostępności systemu dla użytkownika w danej chwili
• tylko błędy prowadzące do czasowej niedostępności systemu mają wpływ na tę miarę
• zależy też od szybkości powrotu do stanu normalnego
Miary niezawodności pozwalają oszacować koszty konserwacji!
Testy funkcjonalne
– system traktowany jako czarna skrzynka, która w nieznany sposób realizuje wymagane
funkcje
dane wejściowe dzielone na klasy, których działanie powinno być podobne
– sprawdzamy działania funkcji dla:
• wszystkich dopuszczalnych warunków wejściowych i opcji
• danych na granicach dziedzin wejściowych
• danych na granicach dziedzin wynikowych
• danych dla granic funkcjonalnych
• danych niepoprawnych, niespodziewanych i destrukcyjnych
Zasady wyboru testowanych funkcji i danych wejściowych:
– możliwość wykonania funkcji jest ważniejsza niż jakość wykonania (tj. klient akceptuje
niedopracowane rozwiązanie, jeżeli chce mieć je jak najszybciej)
– funkcje systemu znajdujące się w poprzedniej wersji są

(…)

… wejściowych
– kryterium pokrycia wszystkich instrukcji (każda instrukcja wykonana co najmniej raz)
– kryterium pokrycia instrukcji warunkowych (każdy warunek instrukcji warunkowej został
co najmniej raz spełniony i raz niespełniony
Dobór danych wejściowych dla pętli:
– tak, by nie wykonała się żadna iteracja (lub minimalna liczba)
– tak, aby wykonała się maksymalna liczba iteracji
– tak, aby wykonała…






błędy w instrukcjach warunkowych
niekończące się pętle
błędy popełniane dla granicznych wartości
błędne użycie/pominięcie nawiasów w złożonych wyrażeniach
nieuwzględnienie błędnych danych
Ocena liczby błędów
– liczba błędów nie musi mieć związku z niezawodnością oprogramowania
– liczba błędów ma bezpośredni wpływ na konserwację oprogramowania
Technika posiewania błędów
– wprowadzamy celowo błędy…
… informatycznych a produkcją towarów pzrzemysłowych na
początku XX wieku:
– oprogramowanie jest zawodne
– producent dyktuje warunki
– niezadowalająca obsługa klienta
By poprawić sytuację stosuje się systemy jakości.
Zagadnienia systemów jakości:
– powtarzalność
• norma ISO9001 - „opisz to, co robisz, a potem postępuj tak jak napisano”
– zapewnienie minimalnej liczby defektów
• sprawność procesów biznesowych
… na poziomie „pięciu dziewiątek” (99,999%)
– tworzenie coraz lepszych produktów
• japońskie określenie „kaizen” - wprowadzanie stałych, drobnych informacji
• „jeżeli możesz coś zrobić lepiej bez dodatkowego nakładu pracy, zrób to”
Jakość kosztuje:
– opracowanie i wdrożenie standardów
– stosowanie automatycznych narzędzi testujących
– utrzymanie wewnętrznego działu jakości
– znalezienie najlepszych ludzi…
... zobacz całą notatkę

Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz