Doskonalenie procesu testowego (TPI) przy użyciu modelu PDCA
⚡ Inteligentne podsumowanie
Doskonalenie Procesu Testowania stosuje cykl PDCA do testowania, aby każdy projekt dawał mierzalne wnioski. Ta strona wyjaśnia cztery etapy PDCA, stojące za nimi modele dojrzałości oraz wskaźniki potwierdzające, że poprawa faktycznie nastąpiła.

Czym jest doskonalenie procesu testowania?
Doskonalenie procesu testowego To praktyka polegająca na mierzeniu wydajności procesu testowania, identyfikowaniu jego słabych punktów i wprowadzaniu kontrolowanych zmian, aby kolejny projekt zapewniał wyższą jakość przy niższych kosztach i krótszym czasie. Traktuje ona testowanie jako proces, który można mierzyć i dostrajać, a nie jako czynność powtarzaną w ten sam sposób przy każdym wydaniu.
Wyobraź sobie GuruProjekt 99 Banku właśnie dobiegł końca. Zarząd docenia Twoją pracę, a klient jest zadowolony. Mimo to Twój szef wciąż ma do Ciebie pytania.
Menedżerowie często opisują Testowanie oprogramowania jako proces kłopotliwy i niekontrolowany. Patrząc wstecz na GuruProjekt 99 Bank, czy napotkałeś któryś z poniższych problemów?
Są to częste problemy w niemal każdym projekcie testowym. Wiele organizacji zdaje sobie sprawę, że ulepszenie procesu testowania to jedyny trwały sposób na ich rozwiązanie, ponieważ wyciąganie wniosków z błędów z przeszłości zapobiega ich powtarzaniu w kolejnym cyklu wydawniczym.
Dlaczego usprawnianie procesu testowego?
Poniższy scenariusz pokazuje, dlaczego udoskonalenie procesu testowania jest ważne. GuruProjekt 99 Bank został ukończony, jakość testów była świetna, a opinie od klientów były pozytywne.
Jaka jest lekcja płynąca z tego scenariusza? To po prostu „zawsze staraj się robić to lepiej”Nawet jeśli uważasz, że wykonałeś dobrą robotę, zawsze znajdą się inni, którzy wykonają ją lepiej, bo znaleźli lepsze pomysły i rozwiązania niż ty.
Każda firma chce, aby projekt został ukończony Najwyższa jakość, na najniższy koszt i w najkrótsza czas realizacji. Doskonalenie procesu testowania to proces, który pomaga zespołowi testowemu dążyć do osiągnięcia wszystkich trzech celów jednocześnie.
Jak wdrożyć udoskonalenie procesu testowania?
Wdrożenie udoskonalenia procesu testowania w GuruProjekt 99 Bank, Menedżer Testów może śledzić PDCA Model PDCA (Plan-Do-Check-Act) to czteroetapowa metoda zarządzania stosowana w biznesie do kontroli i ciągłego doskonalenia procesu. Każde przejście przez pętlę stanowi pojedynczy cykl doskonalenia, a wynik działania staje się danymi wejściowymi kolejnego planu.
💡 Wskazówka: Uruchom pętlę PDCA dla jednego wąskiego problemu na raz. Cykl, który koncentruje się na pojedynczym mierzalnym problemie, takim jak czas wykonania regresji, kończy się wystarczająco szybko, aby pokazać wynik już w jednej wersji.
Krok 1) Zaplanuj
Faza planowania to etap projektowania ulepszeń. Jest ona podzielona na trzy mniejsze etapy.
Krok 1.1) Zidentyfikuj problem
Pierwszą czynnością w procesie doskonalenia testów jest identyfikacja problemy, które wystąpiły w bieżącym projekcie. Problemy w tym projekcie mogą wystąpić ponownie w innym projekcie. Rozwiązywanie problemów i znajdowanie rozwiązań, aby uniknąć ich w przyszłości, jest głównym celem doskonalenia testów.
A teraz wracamy do projektu GuruStrona internetowa 99 Bank. Czy zauważyłeś jakieś problemy lub poprawki? Wybierz poniżej.
| Pan No | Problem | OPIS | Wybierz |
|---|---|---|---|
| 1 | Jakość | Klient nadal coś znalazł Wada po zwolnieniu | |
| 2 | Dostawa | Projekt został opóźniony | |
| 3 | Zespół | Niektórzy pracownicy nie współpracowali z innymi członkami zespołu | |
| 4 | umiejętności | Członek zespołu nie posiadał pożądanych umiejętności, aby wykonać swoje zadania | |
| 5 | Zarząd | Kierownik testów nie monitorował postępów, co spowodowało opóźnienie niektórych projektów | |
| 6 | Komunikacja | Brak stałego kontaktu z klientem; niezrozumienie wymagań klienta | |
| 7 | Koszty: | Koszt Projektu przekroczył ustalony budżet |
Krok 1.2) Określ cel
Zrozum problem i kwestie, które wystąpiły w projekcie. W ten sposób określisz punkty wymagające poprawy i fazy testów, które wymagają uwagi w pierwszej kolejności.
Załóżmy, że stwierdziłeś, że faza wykonania testu również trwała dużo Czas i koszt wykonania. Czy testy można by przyspieszyć i obniżyć? To pytanie staje się celem cyklu. Użyteczny cel jest określony liczbą i terminem, na przykład „zmniejszyć nakład pracy związany z wykonaniem regresji o 30% przed kolejną wersją”.
Krok 1.3) Zdefiniuj działania usprawniające
Na podstawie uzgodnionego celu określane są działania naprawcze. Działania te powinny być stopniowe i wdrażane etapami, ponieważ nie jest realistyczne, aby wszystko zmienić od razu.
Na przykład, aby testowanie stało się szybsze i tańsze, można podjąć następujące działania.
W powyższym przykładzie opcje A i B przyspieszają i obniżają koszty testowania. Opcja C przyspieszyłaby testowanie, ale byłaby droższa, ponieważ bardziej doświadczony tester oczekuje wyższego wynagrodzenia. Właśnie ten kompromis jest powodem, dla którego każde działanie kandydata należy oceniać w kontekście celu, a nie intuicji.
Krok 2) Zrób
Zdefiniowałeś już punkty do poprawy. Teraz czas na stworzenie planu, który je wdroży. Plan ten musi odpowiadać na poniższe pytania.
- Które punkty ulepszeń należy wdrożyć i w jakiej kolejności?
- Kiedy plan musi zostać ukończony?
- Jakie kroki należy podjąć, aby zrealizować plan?
- Do kogo należy każdy etap i w jaki sposób potwierdzane będzie jego ukończenie?
Wykonaj działania usprawniające
Po ustaleniu planu należy go wdrożyć. Działania usprawniające mogą zakłócić prace testowe, które już trwają, dlatego Kierownik Testów musi za to zapłacić. Uwaga do nich, aby unikaj niechcianych konsekwencje.
Rozważmy następujący scenariusz. Na GuruProjekt 99 Bank, aby przyspieszyć i obniżyć koszty testowania, zdecydowaliście się na użycie testowanie automatyzacji zamiast dużego bloku ręcznych testów regresyjnych. Po zastosowaniu tej akcji, wydajność znacznie wzrosła.
Krok 3) Sprawdź
W kroku Sprawdź wykonaj trzy czynności.
- Oceń efektywność działań udoskonalających testy
- Zmierz jak skuteczny rozwiązaniem było
- Przeanalizuj, czy to może być ulepszony dalej
Celem tej fazy jest potwierdzenie, że działania naprawcze zostały wdrożone pomyślnie, a także ocena, czy cel wyznaczony w Planie został rzeczywiście osiągnięty.
Najlepszym sposobem na przeprowadzenie tej oceny jest metrykaMetryki są niezbędne do skutecznego zarządzania organizacją. Kierownik ds. Testów zbiera dane i wykorzystuje je do pomiaru parametrów takich jak produktywność, jakość i koszty.
Na przykład przed zastosowaniem automatyzacji w projekcie testowanie wydajności było 10 przypadków testowych na godzinę pracyPo wprowadzeniu automatyzacji wydajność mierzono na poziomie 20 przypadków testowych na godzinę pracy.
Ale wraz z tym zyskiem pojawił się niepożądany problem.
W tym przypadku zastosowanie automatyzacji wzrosła produktywność testowania, ale jakość testowania zmniejszony.Działanie naprawcze może zatem spowodować poważne konsekwencje W takim scenariuszu narzędzie testowe musi zostać wybrane znacznie ostrożniej, a pakiet automatyczny musi zostać sprawdzony z taką samą rygorystycznością, jak kod produkcyjny. Ustrukturyzowana ocena narzędzi kandydackich, taka jak opisana w Selenium Tutorial, zapobiega przyjęciu narzędzia wyłącznie ze względu na jego popularność.
⚠️ Ostrzeżenie: Nigdy nie oceniaj działań usprawniających na podstawie jednego wskaźnika. Zmiana, która podwaja przepustowość wykonania, jednocześnie zmniejszając wykrywalność defektów, przyspiesza i pogarsza proces. Zawsze łącz wskaźnik szybkości z wskaźnikiem jakości.
Rozważmy ten sam scenariusz jeszcze raz. GuruKoszt projektu wyniósł 99 najechać ponieważ członkowie zespołu wzięli zbyt dużo czasu do wykonania przypadków testowych. Korzystając z narzędzia do automatycznego testu, zaoszczędziłeś Wzrost o 30 kosztów projektu. To dobra poprawa, ale twój szef oczekuje więcej.
Dlatego zawsze trzeba szukać nowszych rozwiązań, które jeszcze bardziej usprawnią proces testowania. W takim scenariuszu inne opcje mogą obniżyć koszty projektu.
- Zarządzaj efektywnie swoimi zasobami ludzkimi, aby wykwalifikowani testerzy byli zatrudniani tam, gdzie przynoszą największą wartość
- Negocjuj lepsze warunki handlowe ze swoimi dostawcami narzędzi i personelu
- Zamiast automatyzować przypadki testowe, wycofuj je z użycia
Krok 4) Działaj
Gdy działania udoskonalające zostaną wdrożone pomyślnie i cel zostanie osiągnięty, Kierownik Testów powinien zakończyć pętlę, wykonując następujące czynności.
- Review działania naprawcze i działanie na podstawie wyciągniętych wniosków
- Ujednolicić punkt poprawy w procesie zarządzania testami
- Aktualizacja dokumenty polityki, szablony planu testów i dokumenty standardowego procesu
- Ustalać kiedy i gdzie te zmiany zostaną zastosowane w następnym projekcie
Jeśli cel nie został osiągnięty, cykl się nie zatrzymuje. Nieosiągnięty cel jest przenoszony do nowej fazy Planowania wraz ze wszystkim, co ujawniła faza Kontroli, wyjaśniając, dlaczego działanie nie przyniosło oczekiwanych rezultatów.
Porównanie TPI NEXT, TMMi i CMMI
PDCA to motor napędowy udoskonaleń, ale model referencyjny pokazuje, jak wygląda „lepiej”. Powszechnie stosuje się trzy modele, które często są ze sobą mylone.
TPI NEXT to model referencyjny opracowany przez Sogeti, opracowany specjalnie dla testów. Ocenia on 16 kluczowych obszarów, podzielonych na trzy grupy, w odniesieniu do czterech poziomów dojrzałości: Początkowego, Kontrolowanego, Efektywnego i Optymalizującego. Ponieważ ocena odbywa się w każdym kluczowym obszarze, zespół może być Efektywny w jednym obszarze, a jednocześnie Kontrolowany w innym.
TMMi, utrzymywane przez TMMi Foundation, to model dojrzałości testów etapowych z pięcioma poziomami: początkowym, zarządzanym, zdefiniowanym, mierzonym i optymalizacyjnym. Organizacja osiąga dany poziom dopiero po spełnieniu wymagań w obszarach procesowych tego poziomu.
CMMI W ogóle nie jest modelem testowym. Obejmuje całą organizację programistyczną, a jego etapowa reprezentacja również obejmuje pięć poziomów dojrzałości: początkowy, zarządzany, zdefiniowany, zarządzany ilościowo i optymalizujący. TMMi został zaprojektowany jako uzupełnienie CMMI, a nie jego zamiennik.
| Model | Zakres | Structure | Poziomy dojrzałości |
|---|---|---|---|
| TPI NEXT | Tylko proces testowy | 16 kluczowych obszarów w 3 grupach, z punktami kontrolnymi i klastrami | 4 — Początkowy, kontrolowany, wydajny, optymalizujący |
| TMMi | Tylko proces testowy | Etapowe, z obszarami procesów przypisanymi do każdego poziomu | 5 — Początkowy, zarządzany, zdefiniowany, mierzony, optymalizacja |
| CMMI | Cała organizacja rozwojowa | Reprezentacja etapowa lub ciągła | 5 (etapowy) — początkowy, zarządzany, zdefiniowany, zarządzany ilościowo, optymalizujący |
Metryki potwierdzające udoskonalenie procesu testowania
Faza sprawdzania kończy się bez liczb. Wystarczy niewielki, stabilny zestaw metryk zebrany przed i po każdym cyklu, a te same definicje muszą być stosowane po obu stronach porównania.
- Produktywność wykonywania testów — przypadków testowych wykonanych na roboczogodzinę
- Procent wykrycia defektów (DDP) — błędy wykryte podczas testów jako udział wszystkich błędów wykrytych, w tym zgłoszonych po wydaniu
- Koszt wykonania jednego przypadku testowego — całkowity koszt wysiłku testowego podzielony przez wykonane przypadki testowe
- Pokrycie wymagań — wymagania z co najmniej jednym powiązanym walizka testowa
- Naprawa usterek — średni wiek wady w całym cykl życia wady
Korzystanie z GuruW przypadku 99 Bank Figures, gdzie 180 błędów wykryto podczas testów, a 20 zgłosili klienci po udostępnieniu oprogramowania, obliczenia są proste.
# Defect Detection Percentage and improvement deltas def ddp(found_in_test, found_after_release): return found_in_test / (found_in_test + found_after_release) * 100 def delta(before, after): return (after - before) / before * 100 print("Defect Detection Percentage: %.1f%%" % ddp(180, 20)) print("Productivity gain: %.1f%%" % delta(10, 20)) print("Test cost change: %.1f%%" % delta(50000, 35000))
Wyjście:
Defect Detection Percentage: 90.0% Productivity gain: 100.0% Test cost change: -30.0%
Wskaźnik DDP na poziomie 90 procent oznacza, że co dziesiąty defekt nadal trafia do klienta, co oznacza, że cel jakościowy nie został w pełni osiągnięty, mimo że wydajność podwoiła się, a koszty spadły o 30 procent. To właśnie ten pojedynczy punkt widzenia powstrzymuje zespół przed zbyt wczesnym ogłoszeniem zwycięstwa.
Typowe błędy w doskonaleniu procesu testowania
Większość programów doskonalących kończy się niepowodzeniem z przyczyn organizacyjnych, a nie technicznych. Poniższe błędy odpowiadają za większość porzuconych inicjatyw.
- Poprawa bez punktu odniesienia. Jeśli nikt nie zmierzył procesu przed zmianą, nikt nie będzie w stanie udowodnić, że zmiana była pomocna. Ustal punkt odniesienia podczas planowania, a nie później.
- Dążenie do osiągnięcia poziomu dojrzałości zamiast kierowania się motywacją biznesową. Certyfikat, który nie obniża kosztów, nie zmniejsza liczby usterek ani nie skraca czasu realizacji zamówienia, jest kosztem, a nie ulepszeniem.
- Zmienianie zbyt wielu rzeczy na raz. Jeżeli pięć akcji znajdzie się w tym samym wydaniu, nie można mówić o regresji. tracdo żadnego z nich.
- Automatyzacja uszkodzonego procesu. Automatyzacja zwielokrotnia każdy proces, do którego jest stosowana, łącznie ze słabymi projektami testów i niejasnymi kryteriami wejścia.
- Skipping Faza działania. Ulepszenie, które nigdy nie jest zapisane w polityce testów i cykl życia testowania oprogramowania dokumenty umierają wraz z zespołem projektowym, który je wymyślił.
- Z wyłączeniem testerów. Ludzie, których nie konsultowano w sprawie zmian, zawsze znajdują sposoby na ich obejście.
Aby rozwinąć te pomysły, przejrzyj fazy cykl życia testowania oprogramowania, dokręć walizka testowa projekt, sformalizować proces zarządzania defektami, ocenić gdzie testowanie automatyzacji daje prawdziwy zwrot i zobacz, jak narzędzie takie jak HP ALM może przechowywać metryki, od których zależy faza sprawdzania.











