Uczestnicy i klienci procesu testowania
- W jaki sposób, na którym etapie i z kim współpracuje zespół testowy w procesie tworzenia oprogramowania?
- Jakich rezultatów oczekują poszczególni uczestnicy procesu wytwórczego od zespołu QA i w jaki sposób to osiągnąć?
Czym jest jakość?
W celu zapoznania się ze wszystkimi oczekiwaniami i wymaganiani co do zespołu testowego i jakości produktu, proponuję zrobić krok do tyłu i przyjżeć się samemu pojęciu jakości.
Czym jest jakość? Co można nazwać wysoką jakością? Jakie mamy oczekiwania do wysokojakościowego produktu? Co odróżnia produkt wysokiej jakości od produktu niskiej jakości?
- Jakość jest bardzo subiektywnym pojęciem. Każdy ma swoją własną definicję jakości, swój własny opis wysokojakościowego produktu.
- Każdy człowiek może uważać ten lub inny przedmiot lub produkt za jakościowy lub niejakościowy, w zależności od swoich potrzeb, wartości i priorytetów. Ta sama rzecz może być jednocześnie uważana za wysokojakościową dla jednej osoby, jak i niskojakościową dla drugiej.
Jakie można wyciągnąć z tego wnioski? Aby osiągnąć wysoką ocenę jakości, trzeba wiedzieć, kto i na podstawie czego wystawia daną ocenę. Tym samym, jeśli chcemy uzyskać jakościowy produkt oprogramowania, to musimy zrozumieć oczekiwania wszystkich uczestników zaangażowanych w wytworzenie i eksploatację danego produktu. Trzeba umieć wspólnie pracować ze wszystkimi uczestnikami i na każdym z etapów procesu wytwórczego.
Jakie są oczekiwania w stosunku do jakości oprogramowania?
Zrozumienie jakości oprogramowania może różnić się między uczestnikami procesu wytwórczego. To samo dotyczy oczekiwań wzgędem zespołu testowego procesu kontroli jakości (QA). Spójrzmy na wszystkie przedstawione wymagania w formie tabeli.
Uczestnicy procesu wytwórczego oprogramowania |
Oczekiwania względem oprogramowania wysokiej jakości |
Oczekiwania względem QA |
Klienci biznesowi |
|
Potwierdzenie wydajności wszystkich nowych funkcji i produktów Sprawdzenie procesów biznesowych |
Analitycy, architekci |
|
Kontrola całokształtu realizacji logiki funkcjonalności, obiektów i metod współdziałania |
Deweloperzy |
|
|
Zewnętrzne zespoły IT |
|
|
Użytkownicy |
|
|
Wsparcie |
|
|
Na których etapach procesu wytwórczego oprogramowania dołączają się testerzy?
Krótka odpowiedź - na wszystkich. Jak już zostało wyjaśnione, zespół testowy współpracuje ze wszystkimi uczestnikami podczas procesu wytwórczego oprogramowania. Jeśli w ramach procesu można wydzielić oddzielne etapy, testerzy są zaangażowani w każdy z etapów.
Rozbicie procesu na różne etapy niekoniecznie oznacza Waterfall. Także w granicach procesu wytwórczego Agile można wydzielić różne rodzaje zadań: analiza i dyskusja o historiach użytkowników, konfiguracja środowiska, debugowanie software'u, demo, przyjęcie funkcjonalności itd.
W procesie wytwórczym oprogramowania można zidentyfikować następujące rodzaje aktywności związane z QA:
- W Waterfall będą to oddzielne etapy/fazy procesu wytwórczego
- W Agile mogą to być różnorodne aktywności w obrębie jednej iteracji
Pavel Novikov
Program Manager