Testování zlepšení procesu (TPI) pomocí modelu PDCA

⚡ Chytré shrnutí

Zlepšování testovacího procesu aplikuje cyklus PDCA na testování tak, aby každý projekt zanechal měřitelné poznatky. Tato stránka vysvětluje čtyři kroky PDCA, modely zralosti, které se za nimi skrývají, a metriky, které prokazují, že ke zlepšení skutečně došlo.

  • 🔁 PDCA smyčka: Plánování, Dělání, Kontrola a Jednání promění chyby jednoho projektu v opakovatelný standard.
  • 🎯 Začněte s problémy: Před výběrem jakéhokoli zlepšovacího opatření si uveďte skutečné vady, zpoždění a překročení nákladů.
  • 📊 Změřte všechno: Tracproduktivity k, úniku defektů a nákladů na testovací případ před a po každé změně.
  • ⚠️ Sledujte vedlejší účinky: Automatizace zde zvýšila propustnost, ale kvalita klesla, dokud nebyl opraven výběr nástrojů.
  • 🪜 Postupně se zlepšujte: Malé sekvenční akce jsou úspěšné mnohem častěji než úplné přepsání procesu.
  • 🏛️ Vyberte si model: TPI NEXT používá čtyři úrovně zralosti; TMMi a CMMI jich definují pět.
  • ???? Standardizujte výhru: Aktualizujte testovací zásady a šablony tak, aby další projekt zdědil tento zisk.

Zlepšování testovacího procesu (TPI) s využitím modelu PDCA

Co je to zlepšování testovacího procesu?

Vylepšení testovacího procesu je praxe měření výkonu testovacího procesu, identifikace jeho slabých míst a provádění kontrolovaných změn tak, aby další projekt přinesl vyšší kvalitu za nižší náklady a v kratším čase. Považuje testování za proces, který lze měřit a ladit, nikoli za aktivitu, která se opakuje stejným způsobem při každém vydání.

Představte si GuruProjekt 99 Bank byl právě dokončen. Představenstvo si vaší práce váží a zákazník je spokojený. Přesto má na vás váš šéf stále otázky.

Vylepšení testovacího procesu pomocí modelu PDCA

Manažeři často popisují testování softwaru jako problematický a nekontrolovatelný proces. Ohlédneme-li se zpět na GuruV rámci projektu Bank 99 jste se setkali s některým z následujících problémů?

Běžné problémy, které řeší zlepšování testovacích procesů

Toto jsou běžné problémy téměř v každém testovacím projektu. Mnoho organizací si uvědomuje, že zlepšení testovacího procesu je jediný trvalý způsob, jak je vyřešit, protože poučení se z minulých chyb je to, co zabraňuje opakování stejných chyb v dalším cyklu vydání.

Proč zlepšovat testovací proces?

Následující scénář ukazuje, proč je důležité zlepšovat testovací proces. GuruProjekt 99 Bank je dokončen, kvalita testování byla skvělá a od zákazníka jste obdrželi dobrou zpětnou vazbu.

Proč je potřeba vylepšit testovací proces – scénář srovnání s konkurencí

Jaké je ponaučení z této situace? Je to jednoduše „Vždy se snažte dělat věci lépe“I když si myslíte, že jste odvedli dobrou práci, vždycky existují jiní, kteří ji dělají lépe, protože našli lepší nápady a lepší řešení než ty vaše.

Každá firma chce, aby byl projekt dokončen s nejvyšší kvalita, v Nejnižší náklady a v nejkratší dodací lhůta. Zlepšení testovacího procesu pomáhá testovacímu týmu dosáhnout všech tří cílů současně.

Cíle zlepšování testovacího procesu – kvalita, náklady a čas

Jak implementovat vylepšení testovacího procesu?

Implementovat vylepšení testovacího procesu na GuruProjekt 99 Bank může manažer testování sledovat PDCA Model PDCA (Plánuj-Dělej-Kontroluj-Jednej) je čtyřkroková metoda řízení používaná v podnikání pro kontrolu a neustálé zlepšování procesu. Každý průchod smyčkou představuje jeden cyklus zlepšování a výstup z modelu Jednaj se stává vstupem pro další plán.

Model PDCA použitý k implementaci vylepšení testovacího procesu

💡 Tip: Spouštějte smyčku PDCA postupně proti jednomu úzkému problému. Cyklus, který se zaměřuje na jeden měřitelný problém, jako je doba provádění regrese, končí dostatečně rychle, aby se výsledek zobrazil v rámci jednoho vydání.

Krok 1) Plán

Fáze plánování je fází, ve které se navrhuje vylepšení. Je rozdělena do tří menších kroků.

Tři kroky fáze plánování při zlepšování testovacího procesu

Krok 1.1) Identifikujte problém

První činností procesu zlepšování testu je identifikující problémy, které se vyskytly v aktuálním projektu. Problémy v tomto projektu se mohou opakovat v jiném projektu. Řešení problémů a hledání řešení, abychom se jim v budoucnu vyhnuli, je primárním cílem Test Improvement.

A teď zpět k projektu GuruNa webových stránkách banky 99 najdete nějaké problémy nebo body ke zlepšení? Vyberte níže uvedené možnosti.

Sr č Problém Description vybrat
1 Kvalita Zákazník ještě nějaké našel Přeběhnout po propuštění
2 Doručení Projekt byl zpožděn
3 Tým Někteří zaměstnanci nespolupracovali s ostatními členy týmu
4 schopnosti Člen týmu postrádal požadované dovednosti k dokončení svých úkolů
5 management Test Manager nesledoval dobře průběh, což způsobilo zpoždění některých projektů
6 Komunikace Žádný neustálý kontakt se zákazníkem; nepochopení požadavku zákazníka
7 Stát Náklady na projekt byly překročeny nad stanovený rozpočet

Máš problém s Kvalita Doručení Tým ,Dovednosti ,Řízení , Komunikace ,Náklady

Krok 1.2) Určete cíl

Pochopte problém a obtíže, které se v projektu vyskytly. Takto určíte body ke zlepšení a fáze testování, které si zaslouží pozornost jako první.

Předpokládejme, že jste zjistili, že fáze provádění testu trvala také hodně čas a náklady na dokončení. Mohlo by být testování rychlejší a levnější? Tato otázka se stává cílem cyklu. Užitečný cíl je stanoven jako číslo a termín, například „snížit úsilí potřebné k provedení regrese o 30 procent před dalším vydáním“.

Krok 1.3) Definujte opatření ke zlepšení

Na základě dohodnutého cíle se stanoví zlepšovací opatření. Tato opatření by měla být postupná a zaváděna krůček po krůčku, protože není realistické změnit vše okamžitě.

Například pro urychlení a zlevnění testování jsou vhodné následující akce.

Definování zlepšovacích akcí pro rychlejší a levnější testování

Ve výše uvedeném příkladu možnosti A i B posouvají testování směrem k rychlejšímu a levnějšímu. Možnost C by testování urychlila, ale byla by dražší, protože zkušenější tester měl vyšší plat. Právě tento kompromis je důvodem, proč musí být každá akce kandidáta posuzována s ohledem na cílovou skupinu, nikoli na základě intuice.

Krok 2) Udělejte

Body ke zlepšení jste již definovali. Nyní je čas vytvořit plán, který je implementuje. Tento plán musí odpovědět na následující otázky.

  • Které body pro zlepšení je třeba implementovat a v jakém pořadí?
  • Kdy musí být plán hotový?
  • Jaké kroky je třeba dokončit k dosažení plánu?
  • Kdo je zodpovědný za každý krok a jak bude potvrzeno jeho dokončení?

Proveďte zlepšovací akce

Jakmile je plán stanoven, musí být implementován. Zlepšovací aktivity mohou narušit již probíhající testovací práci, takže manažer testování musí platit pozornost jim, aby vyhnout se nežádoucím důsledky.

Uvažujme následující scénář. Na GuruV rámci projektu Bank 99 jste se rozhodli použít, abyste testování zrychlili a zlevnili. testování automatizace místo velkého bloku manuálních regresních testů. Po aplikaci akce se produktivita výrazně zvýšila.

Krok 3) Zkontrolujte

V kroku Kontrola provedete tři věci.

  • Vyhodnoťte účinnost akce na zlepšení testu
  • Změřte jak efektivní řešení bylo
  • Analyzujte, zda by to mohlo být zlepšila další

Cílem této fáze je potvrdit, že zlepšovací opatření byla úspěšně implementována, a vyhodnotit, zda byl cíl stanovený v plánu skutečně dosažen.

Nejlepší způsob, jak provést toto hodnocení, je pomocí metrikyMetriky jsou nezbytné pro úspěšné řízení organizace. Manažer testování shromažďuje data a používá je k měření parametrů, jako je produktivita, kvalita a náklady.

Například předtím, než byla v projektu použita automatizace, byla produktivita testování 10 testovacích případů za člověkohodinuPo aplikaci automatizace byla produktivita měřena na 20 testovacích případů za člověkohodinu.

Kontrola produktivity před a po zlepšovacích opatřeních

Ale spolu s tímto ziskem se objevil i nežádoucí problém.

Vedlejší účinek zlepšovacího opatření - kvalita klesá s rostoucí produktivitou

V tomto případě použití automatizace vzrostl produktivita testování, ale kvalita testování sníženaZlepšovací opatření proto může způsobit vážné důsledky jinde. V takovém scénáři musí být testovací nástroj vybrán mnohem pečlivěji a automatizovaná sada musí být přezkoumána se stejnou důsledností jako produkční kód. Strukturované hodnocení kandidátských nástrojů, jako je ten popsaný v Selenium konzultace, brání přijetí nástroje pouze proto, že je populární.

Warning️ Varování: Nikdy neposuzujte zlepšovací akci na základě jediné metriky. Změna, která zdvojnásobí propustnost provádění a zároveň sníží detekci defektů, proces zároveň zrychlí i zhorší. Vždy spojte metriku rychlosti s metrikou kvality.

Zvažte znovu stejný scénář. Guru99 nákladů na projekt obsadit protože členové týmu si vzali také mnoho času k provedení testovacích případů. Použitím automatického testovacího nástroje jste ušetřili 30 procent nákladů na projekt. To je dobré zlepšení, ale váš šéf očekává víc.

Vedení očekává další snížení nákladů po prvním cyklu zlepšování

Proto musíte vždy hledat novější řešení, která dále vylepší proces testování. V tomto scénáři mohou jiné možnosti ušetřit dodatečné náklady na projekt.

  • Efektivně řiďte své lidské zdroje, aby zkušení testeři byli využíváni tam, kde přinášejí největší přidanou hodnotu.
  • Vyjednejte lepší obchodní podmínky s dodavateli nástrojů a personálu
  • Duplicitní nebo nízkohodnotné testovací případy vyřazujte z provozu namísto jejich automatizace.

Krok 4) Act

Po úspěšné implementaci zlepšovacích akcí a dosažení cíle by měl manažer testování dokončit cyklus následujícími aktivitami.

Aktivity fáze Act v cyklu zlepšování testovacího procesu PDCA

  • Review aktivity ke zlepšení a jednat na základě získaných poznatků
  • Standardizovat bod zlepšení v procesu správy testů
  • Aktualizace dokumenty zásad, šablony plánů testování a standardní procesní dokumenty
  • Určit kdy a kde budou tyto změny aplikovány na další projekt

Pokud cíl nebyl splněn, cyklus se nezastaví. Nesplněný cíl se přenese do nové fáze plánování spolu se vším, co fáze kontroly odhalila o tom, proč akce nevedla k požadovaným výsledkům.

Porovnání TPI NEXT, TMMi a CMMI

PDCA je motorem zlepšování, ale referenční model vám řekne, jak vypadá „lepší“. Běžně se používají tři modely, které se často zaměňují.

TPI NEXT je referenční model specifický pro testování, který publikovala společnost Sogeti. Hodnotí 16 klíčových oblastí, uspořádaných do tří skupin, podle čtyř úrovní zralosti: Počáteční, Kontrolovaná, Efektivní a Optimalizační. Protože hodnocení probíhá klíčová oblast po klíčové oblasti, může být tým efektivní v jedné oblasti, zatímco v jiné stále kontrolovaný.

TMMi, spravovaný společností TMMi Foundation, je stupňovitý model zralosti testování s pěti úrovněmi: počáteční, řízená, definovaná, měřená a optimalizační. Organizace dosáhne určité úrovně až po splnění procesních oblastí dané úrovně.

CMMI Není to vůbec testovací model. Pokrývá celou vývojovou organizaci a jeho fázované znázornění má také pět úrovní zralosti: počáteční, řízenou, definovanou, kvantitativně řízenou a optimalizační. TMMi byl navržen spíše jako doplněk k CMMI než jako jeho náhrada.

Model Rozsah Struktura Úrovně zralosti
TPI NEXT Pouze testovací proces 16 klíčových oblastí ve 3 skupinách s kontrolními body a klastry 4 — Počáteční, Kontrolované, Efektivní, Optimalizační
TMMi Pouze testovací proces Fázované, s oblastmi procesu přiřazenými ke každé úrovni 5 — Počáteční, Řízené, Definované, Měřené, Optimalizace
CMMI Celá vývojová organizace Postupné nebo kontinuální zastoupení 5 (fázované) – Počáteční, Řízené, Definované, Kvantitativně řízené, Optimalizační

Metriky, které prokazují zlepšení testovacího procesu

Fáze kontroly se bez čísel zhroutí. Postačí malá, stabilní sada metrik shromážděná před a po každém cyklu a na obou stranách porovnání musí být použity stejné definice.

  • Produktivita provádění testů — počet testovacích případů provedených za pracovní hodinu
  • Procento detekce vad (DDP) — vady zjištěné při testování jako podíl všech zjištěných vad, včetně vad hlášených po vydání
  • Cena za provedený testovací případ — celkové náklady na testovací úsilí dělené počtem provedených testovacích případů
  • Pokrytí požadavků — požadavky s alespoň jedním propojeným modelový případ
  • Oprava závady — průměrné stáří vady v celém životní cyklus defektu

Za použití GuruZ 99 bankovních údajů, kde bylo při testování zjištěno 180 vad a 20 jich zákazník nahlásil po vydání, je výpočet přímočarý.

# 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))

Výstup:

Defect Detection Percentage: 90.0%
Productivity gain: 100.0%
Test cost change: -30.0%

DDP ve výši 90 procent znamená, že k zákazníkovi unikla jedna vada z deseti, takže cíl kvality nebyl plně splněn, i když se produktivita zdvojnásobila a náklady klesly o 30 procent. Právě tento jediný pohled zabrání týmu v předčasném vyhlášení vítězství.

Časté chyby při vylepšování testovacího procesu

Většina programů na zlepšení selhává spíše z organizačních než technických důvodů. Následující chyby jsou příčinou většiny opuštěných iniciativ.

  • Zlepšování bez základní linie. Pokud nikdo neměřil proces před změnou, nikdo nemůže prokázat, že změna pomohla. Zachyťte základní linii během plánování, ne po něm.
  • Honba za úrovní zralosti místo hnací síly podnikání. Certifikát, který nesnižuje náklady, vady ani dodací lhůty, je výdajem, nikoli vylepšením.
  • Příliš mnoho změn najednou. Pokud se ve stejné verzi objeví pět akcí, nelze provést regresi. tracvěnováno kterémukoli z nich.
  • Automatizace nefunkčního procesu. Automatizace znásobuje jakýkoli proces, na který je aplikována, včetně slabého návrhu testů a nejasných vstupních kritérií.
  • Přeskočitping fáze Akt. Vylepšení, které není nikdy zapsáno do testovací politiky a životní cyklus testování softwaru dokumenty umírají s projektovým týmem, který je vynalezl.
  • S výjimkou testerů. Lidé, kteří nebyli ohledně změny konzultováni, spolehlivě najdou způsoby, jak ji obejít.

Abychom tyto myšlenky dále rozvinuli, zopakujeme si fáze životní cyklus testování softwaru, utáhněte modelový případ navrhnout, formalizovat proces správy vad, vyhodnoťte, kde testování automatizace poskytuje skutečnou návratnost a podívejte se, jak nástroj, jako je HP ALM může obsahovat metriky, na kterých závisí vaše kontrolní fáze.

Nejčastější dotazy

Ihned po vydání, dokud jsou retrospektivní data ještě čerstvá a nikdo není pod tlakem ohledně dodání. Zahájení v polovině sprintu soupeří se samotným vydáním a zahájení o několik měsíců později znamená, že údaje o úsilí, chybách a nákladech již nejsou důvěryhodné.

Manažer testování je zodpovědný za cyklus a metriky, ale každá akce potřebuje určeného vlastníka z týmu, který práci provádí. Vylepšení přiřazená skupině, nikoli osobě, se tiše zastaví.

Retrospektivy dobře pokrývají lokální opravy, ale zřídka se zabývají slabinami v celé organizaci, jako je poskytování testovacích dat nebo dostupnost prostředí. Referenční model poskytuje agilním týmům sdílenou slovní zásobu pro tyto problémy napříč týmy, aniž by nahrazoval retrospektivu.

Metriky provádění, jako je produktivita nebo doba cyklu, se obvykle pohybují v rámci jednoho vydání. Metriky kvality, jako je únik defektů, vyžadují dvě nebo tři vydání, protože uniklé defekty se počítají až poté, co zákazníci software používají v produkčním prostředí.

Ano, pro detekci vzorů. Modely trénované na historii defektů, protokolech sestavení a záznamech o provedení mohou odhalit nestabilní testy, redundantní případy a moduly s opakovanými úniky. Rozhodnutí o tom, na základě kterého zjištění se vyplatí reagovat, zůstává lidským úsudkem o obchodním riziku.

Objem lze zaměnit za pokrytí. Umělá inteligence může při opakovaném testování stejných cest vytvářet tisíce případů, které navyšují počet provedení. Tracdetekce defektů k spolu s počty případů a kontrola vygenerovaných případů před jejich vstupem do regresní sady.

Shrňte tento příspěvek takto: