Aby uznać, że znajdujemy się na danym poziomie dojrzałości należy spełnić większość kryteriów (80%) danego poziomu oraz poprzednich.
Poziom 1: Initial
- Testowanie jest chaotyczne
- Brak zdefiniowanego procesu
- Testowanie jest postrzegane jako debagowanie
- Cel testowania to pokazać, że oprogramowanie nie ma poważniejszych awarii
- Produkt wydany bez świadomości jakości i ryzyka
- Produkt zazwyczaj nie spełnia założeń
- Testerzy zazwyczaj nie są przygotowani do pełnienia roli i nie są doświadczeni
Poziom 2: Definition
- Testowanie jest określone procesem oddzielonym od debagowania.
- Plan testów jest zdefiniowany i zawiera strategię testów
- Używa się formalnych technik projektowania przypadków testowych
- Testowanie zaczyna się późno w projekcie
- Główny cel testowania to udowodnić, że oprogramowanie spełnia wymagania
Poziom 3: Integration
- Testowanie zintegrowane z cyklem życia oprogramowania
- Testowanie rozróżniane zgodnie z poziomami z modelu V
- Planowanie testów wykonuje się wcześnie w projekcie
- Strategia opiera się o techniki zarządzania ryzykiem i wynika ze sformalizowanych wymagań
- Istnieje organizacja testerska
- Program szkoleń dla testerów jest zdefiniowany
- Testowanie jest postrzegane jako profesja
- Odbywają się nieformalne przeglądy
- Wykonuje się dużo testów negatywnych
Poziom 4: Management and Measurement
- Testowanie jest prowadzone zgodnie z miarodajnym procesem
- Przeglądy i inspekcje prowadzone są w całym cyklu
- Produkty programistyczne są oceniane przy użyciu charakterystyk jakości jak niezawodność czy użyteczność
- Przypadki testowe są zbierane, przechowywane i zarządzane w centralnej bazie danych (do ponownego użycia)
- Miary testów dostarczają informacji o procesie i jakości produktu
- Testowanie jest postrzegane jako ocena dowolnego produktu w cyklu wytwarzania
Poziom 5: Optimisation
- Testowanie jest pełnym procesem umożliwiającym kontrolę kosztów i efektywności testowania
- Metody i techniki testowania są optymalizowane i stawia się na ciągłe usprawnianie procesu
- Istnieje procedura doboru i wdrażania narzędzi testowych
- Istnieją narzędzia wspierające proces testowy w każdej fazie (projektowanie, wykonanie, regresja, zarządzanie przypadkami testowymi, etc.)
- Testowanie ma na celu zapobieganie defektom
Ocena dojrzałości jest jedynie wstępem do właściwego usprawniania procesów.
O dojrzałości w procesie testowania mówimy szerzej na szkoleniu Dobry Kierownik Testów.