Meetbare diepgang van testen Henry Peters DataCase Introductie software engineering factory model Methode Ervaring Management Medewerkers metrics &data werving& opleiding 1
Introductie Inhoud: - Systeemontwikkeling en testen - Kwantificering van het testproces - Beheersing van het testproces - Tot besluit.. Softwareontwikkeling en testen ontwikkelingen consequenties kwantificering Voor administratieve systemen: - softwarekwaliteit < 100% - gebruik van standaard componenten - beperkte broninformatie - levensduur beperkt - beheersbare (?) risico's nemen > Consequenties voor testen 2
Softwareontwikkeling en testen ontwikkelingen consequenties kwantificering Consequenties: - geen "bottom-up" analyse - snel, goedkoop en praktisch - plannen, sturen, aanpassen, stoppen > Noodzaak tot kwantificering Softwareontwikkeling en testen ontwikkelingen consequenties kwantificering Kwantificering tbv: - Raming en - Besturing, aanpassing - Beeindiging Wat moet? Wat kan? > Metrieken? 3
Kwantificering van het testproces Het testproces (XT): algemeen A. omvang B. testgevallen C. defects Kwantificering van het testproces algemeen A. omvang B. testgevallen C. defects Bepalende variabelen: A. Omvang en complexiteit systeem B. Aantal testgevallen (testsituaties) C. Aantal bevindingen (defects) specificeren uitvoeren systeem model testgevallen L>F systeem defects F>L realisatie 4
Kwantificering van het testproces algemeen A. omvang B. testgevallen C. defects A. Omvang en complexiteit - Functiepunt analyse (FPA) - Afgeleide maten: entiteiten, schermen, sourcelines, ontwikkelinspanning,.. - Verschil tussen model en realisatie: logisch =fysiek? > Aantal functiepunten Kwantificering van het testproces algemeen A. omvang B. testgevallen C. defects B. Testgevallen - Wat is een testgeval? - Logisch = fysiek (?) > Aantal testgevallen / functiepunt 5
Kwantificering van het testproces algemeen A. omvang B. testgevallen C. defects C. Defects - Wat is een bevinding/defect? - Defect heeft tijdstip - Fysiek = logisch (?) > Aantal defects / functiepunt > Aantal defects / testgeval > Aantal defects / tijd(verloop) > Aantal defects wel/niet gevonden Beheersing van het testproces Planning: Functiepunten * testuren/fp (norm)? aantal testgevallen/fp * uren per testgeval welke diepgang? productiviteit 6
Beheersing van het testproces aantal testgevallen/fp: op basis van ervaringen mbt. nazorg: aantal testgevallen/fp testkwaliteit 0.25 minimaal 0.50 matig 1 redelijk 1.5 goed Beheersing van het testproces aantal testgevallen/fp op basis van detectiegraad: detection rate / test depth 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% 0% 50% 100% 150% 200% 7
Beheersing van het testproces aantal testgevallen/fp op basis van detectiegraad: 120% 100% 80% 60% 40% 20% 0% 0% 50% 100% 150% 200% Beheersing van het testproces Besturing, aanpassing: Functiepunten: onderdelen wel/niet testen Testgevallen: diepgang varieren Defects: behandeling uitstellen, workarounds, kwetsbare delen niet gaan gebruiken,... 8
Beheersing van het testproces Beeindiging: Is het aantal uitgevoerde testcases/fp voldoende voor gewenste detectiegraad? Is de nog verwachte toename van defects beheersbaar? Beheersing van het testproces Beeindiging op basis van defectverloop: 120% cum.defects 100% 80% 60% 40% 20% 0% testdagen 1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 9
Beheersing van het testproces Beeindiging op basis van defectverloop: 120% 100% 80% cum.defects 60% 40% 20% 0% testdagen 1 11 21 31 41 51 61 71 Tot besluit Aandachtspunten - stabiel "aanbod" van testgevallen genereren - doorlopende test- en defectregistratie - statistiek pragmatisch toepassen - weinig extra kosten 10
Tot besluit Vragen... Informatie: www.datacase.nl 11