Testschattingstechnieken in softwaretesten

โšก Slimme samenvatting

Technieken voor het schatten van de benodigde testtijd en de kosten hiervan geven een indicatie. Een proces in vier stappen โ€“ taken opsplitsen, verantwoordelijkheden toewijzen, de benodigde inspanning inschatten en valideren met belanghebbenden โ€“ zet vage tijdlijnen om in een onderbouwd plan dat door het management kan worden goedgekeurd.

  • ๐Ÿ“‹ Begin met de werkverdeling: Deel het project op in modules, submodules en taken, zodat elke raming betrekking heeft op een kleine, eigen eenheid van werk.
  • ๐Ÿ”ข Gebruik beproefde technieken: Function Point en Three-Point estimation leveren gestructureerde cijfers op; Wideband Delphi en Use-Case Point bevorderen consensus binnen het team.
  • ๐Ÿ’ฐ Vertaal inspanning naar kosten: Vermenigvuldig het geschatte aantal manuren met het gemiddelde teamtarief om de financiรซle afdeling een duidelijk budgetcijfer te geven.
  • ๐Ÿ›ก๏ธ Voeg buffer toe en valideer: Houd rekening met verlof, herwerk en onverwachte gebeurtenissen, en laat het plan vervolgens door de directie beoordelen en goedkeuren.
  • ๐Ÿค– Gebruik AI om schattingen te verfijnen: AI-assistenten analyseren historische projecten, signaleren ontbrekende taken en adviseren betrouwbaarheidsintervallen voor elke regel in het plan.

Schattingstechnieken voor softwaretests

Wat is softwaretestschatting?

Softwaretestschatting Testraming is een managementactiviteit die een schatting geeft van de tijdsduur en de kosten van een testtaak. Het opstellen van een betrouwbare testraming is een van de belangrijkste verantwoordelijkheden binnen een managementteam. testbeheer omdat het bepalend is voor beslissingen over planning, budget en middelen.

Waarom testschatting belangrijk is

Klanten stellen altijd twee vragen voordat ze een testovereenkomst goedkeuren:

Waarom een โ€‹โ€‹testschatting?

Voor kleine projecten zijn deze vragen gemakkelijk te beantwoorden. Voor een groter project โ€“ bijvoorbeeld het testen van de Guru99 Bank-website โ€” je hebt een gestructureerde aanpak nodig om het antwoord te verdedigen.

Wat te schatten?

Wat moet je inschatten in testmanagement?

  • Bronnen: Mensen, apparatuur, faciliteiten, financiering en al het andere dat nodig is om het werk uit te voeren.
  • Tijd: De meest waardevolle hulpbron bij elk project: elke release heeft een deadline.
  • Menselijke vaardigheden: De kennis en ervaring van het team spelen een rol. Ervaren testers ronden hun werk sneller af dan een minder ervaren team.
  • Kosten: Het projectbudget: hoeveel geld er nodig is om de geplande tests uit te voeren.

Hoe te schatten

De meest gebruikte methoden voor het schatten van de benodigde tijd voor softwaretests zijn:

  • Werkverdelingsstructuur (WBS).
  • Drie-puntschatting.
  • Breedband Delphi.
  • Functiepunt- of testpuntanalyse.
  • Gebruiksscenario-puntmethode.
  • Percentageverdeling.
  • Ad-hocmethode.

Lijst met schattingstechnieken

Het onderstaande vierstappenproces combineert verschillende technieken om tot een verdedigbare schatting te komen. Het voorbeeld maakt gebruik van de GuruCasestudy van 99 Bank.

Schattingproces in vier stappen

Stap 1) Verdeel het hele project in deeltaken

Gebruik de Work Breakdown Structure Een techniek om een โ€‹โ€‹complex project op te splitsen in modules, submodules en uiteindelijk de kleinste, meest relevante taken. Schattingen zijn veel betrouwbaarder op het laagste niveau dan bij vage projectomschrijvingen.

Deel het project op in deeltaken.

Pas de techniek toe om de GuruHet 99 Bank-project opsplitsen in vijf kleinere taken:

Guru99 Banktaken

Elke taak wordt vervolgens opgesplitst in subtaken totdat elke regel gedetailleerd genoeg is om een โ€‹โ€‹schatting te kunnen maken.

Taak Deeltaak
Analyseer de specificaties voor softwarevereisten Onderzoek de specificaties.
Interview ontwikkelaars en andere belanghebbenden om meer te weten te komen over de website.
Maak de testspecificatie Ontwerp testscenario's.
Maak testgevallen aan.
RevTestgevallen bekijken en herzien.
Voer de testcases uit Bouw de testomgeving op.
Voer de testgevallen uit.
RevBekijk de testuitvoeringsresultaten.
Meld de gebreken Maak de defect rapporten.
Meld de gebreken.

Stap 2) Wijs elke taak toe aan een teamlid.

Wijs elke deeltaak toe aan de meest geschikte verantwoordelijke.

Taak Eigenaar
Analyseer de specificaties voor softwarevereisten Alle teamleden
Maak de testspecificatie Tester / Testanalist
Bouw de testomgeving op. Testbeheerder
Voer de testcases uit Tester, testbeheerder
Gebreken melden tester

Stap 3) Inschatting van de benodigde inspanning voor elke taak

Twee complementaire technieken werken in dit stadium goed:

  1. Functiepuntmethode.
  2. Drie-puntschatting.

Methode 1) Functiepuntmethode

De testmanager schat de omvang, de duur en de kosten van elke taak in.

Functiepuntmethode

Stap A) Schat de omvang van de taak in.

Neem bijvoorbeeld de taak "Maak de testspecificatie". De omvang ervan hangt af van de functionele omvang van het te testen systeem: hoe meer functies, hoe complexer het systeem. Functiepunten worden doorgaans in drie groepen ingedeeld: complex, gemiddeld en eenvoudig.

Functiepuntcomplexiteitsgroepen

Op basis van de complexiteit kent de testmanager een gewicht toe aan elk functiepunt:

Groep weging
Complex 5
Medium 3
Eenvoudig 1

De GuruDe website van 99 Bank is onderverdeeld in 12 functionele onderdelen. De complexiteit hiervan wordt hieronder samengevat.

# Module Toepasselijke rollen Beschrijving weging
1 Balans onderzoek Manager, Klant Klant: Bekijk alleen het saldo van uw eigen rekeningen.
Manager: Bekijk het saldo van elke klant onder toezicht.
3
2 Geld transfer Manager, Klant Klant: Geld overmaken van je eigen rekening naar elke gewenste bestemming.
Manager: Geld overmaken van elke bron naar elke bestemming.
5
3 Mini Statement Manager, Klant De laatste vijf transacties van een rekening.
Klant: Bekijk alleen je eigen accounts.
Manager: Bekijk elk account.
3
4 Aangepaste verklaring Manager, Klant Transacties gefilterd op datum of waarde.
Klant: Alleen voor eigen accounts.
Manager: elk account.
5
5 Wachtwoord wijzigen Manager, Klant Klant: Wijzig je eigen wachtwoord.
Manager: Wijzig je eigen wachtwoord (niet dat van de klant).
1
6 Nieuwe klant Manager Klantgegevens toevoegen en bewerken (adres, e-mail, telefoonnummer). 3
7 Nieuw account Manager Spaar- en betaalrekeningen; een klant kan meerdere van beide hebben. De manager voegt nieuwe rekeningen toe voor bestaande klanten. 5
8 Bewerk je account Manager De gegevens van een bestaand account bewerken. 1
9 Account verwijderen Manager Een bestaand account voor een klant verwijderen. 1
10 Klant verwijderen Manager Verwijder een klant alleen als er geen actieve accounts meer zijn. 1
11 Statiegeld Manager Stort contant geld op een willekeurige rekening bij het filiaal. 3
12 Opname Manager Neem contant geld op van elke rekening bij het filiaal. 3

Stap B) Schat de duur van de taak in.

Zodra de complexiteit is vastgesteld, schat dan de benodigde tijd in om elke groep te testen.

Duurberekening

  • Totale inspanning: totale inspanning om elke functie van de website te testen.
  • Totaal aantal functiepunten: totale modules van de website.
  • Schatting per functiepunt: Gemiddelde inspanning per punt; afhankelijk van de productiviteit van het team.

Neem aan dat de schatting van het team per functiepunt is 5 uur/puntDe totale inspanning voor de GuruEen voorbeeld van 99 Bank is:

Groep weging Functiepunten Totaal
Complex 5 3 15
Medium 3 5 15
Eenvoudig 1 4 4
Functie Totaal aantal punten 34
Schatting per punt 5
Totale geschatte inspanning (persoonsuren) 170

De totale inspanning die nodig is om "De testspecificatie opstellen" te voltooien, bedraagt โ€‹โ€‹ongeveer 170 persoonsurenZodra de benodigde inspanning bekend is, kunt u middelen toewijzen om de duur en de kosten te bepalen.

Stap C) Schat de kosten voor de taken in.

Deze stap beantwoordt de tweede vraag van de klant: "Hoeveel kost het?". Ga uit van een gemiddeld teamtarief van $ 5 / uurDe bovenstaande taak duurt 170 uur, dus de kosten bedragen... 170 ร— $5 = $850Pas dezelfde berekening toe op elke WBS-taak om tot het projectbudget te komen.

Hoe nauwkeuriger de schatting, hoe beter u het projectbudget kunt beheren en ervoor kunt zorgen dat elke euro rendement oplevert.

Methode 2) Drie-puntschatting

Drie-puntschatting is een gestructureerde techniek waarbij de testmanager drie waarden per taak aanlevert: de optimistisch, hoogstwaarschijnlijken pessimistisch inspanning โ€” gebaseerd op eerdere ervaringen of beste schattingen.

Driepuntsschatting

Voor "De testspecificatie maken" kunnen de drie waarden zijn:

  • Beste geval: 120 manuren (~15 dagen) met een sterk, ervaren team.
  • Hoogstwaarschijnlijk: 170 manuren (~21 dagen) met een gemiddeld team en gemiddelde middelen.
  • Het slechtste geval: 200 manuren (~25 dagen) met een minder ervaren team en extra herwerk.

Parameter waarden

Bereken het gewogen gemiddelde met behulp van de PERT-formule:

Drie-puntenformule

De waarde E is de gewogen gemiddelde โ€” de geschatte kosten voor "Het opstellen van de testspecificatie".

Vraag van de manager

Om het vertrouwen uit te drukken rondom EBereken de standaardafwijking:

Formule voor de standaarddeviatie

Voor de Guru99 Bank voorbeeld: de schatting komt uit op 166.6 ยฑ 13.33 persoonsuren โ€” een bereik van 153.33 tot 179.99 persoonsuren.

Stap 4) Valideer de schatting

Bundel alle taakramingen uit de WBS en dien het plan ter beoordeling en goedkeuring in bij de directie (CEO, projectmanager, belangrijke stakeholders).

Valideer de schatting

Neem de begroting logisch met de raad van bestuur door, zodat ze de aannames, de gekozen methoden en de ingebouwd marge begrijpen.

Testschatting: beste werkwijzen

Voeg buffertijd toe

Plannen overleven zelden de confrontatie met de realiteit: teamleden vertrekken, tests duren langer dan verwacht, afhankelijkheden verschuiven. Bouw daarom een โ€‹โ€‹redelijke buffer in elke schatting in, zodat de planning kleine verrassingen kan opvangen.

Plan voor de beschikbaarheid van middelen

Houd rekening met gepland verlof, trainingen en oproepdiensten. Schattingen die geen rekening houden met beschikbaarheid zien er op papier goed uit, maar vallen in de praktijk tegen.

Gebruik je ervaringen uit het verleden als referentie.

Historische gegevens van vergelijkbare projecten zijn van onschatbare waarde. Als u vorig jaar een vergelijkbare website hebt getest, leer dan van de daadwerkelijke resultaten, de problemen die zich voordeden en de buffer die de situatie heeft gered.

Houd vast aan de schatting, maar herzie deze indien nodig.

Schattingen zijn niet betrouwbaar.tracts; het zijn schattingen. RevBezoek ze op bekende mijlpalen en pas alleen aan wanneer de eisen wezenlijk veranderen of nieuwe informatie de situatie verandert. Onderhandel over elke wijziging op een transparante manier met de klant.

Sjabloon voor schatting van softwaretests

Download het Excel-bestand (.xlsx) voor het schatten van softwaretestresultaten.

Andere schattingstechnieken

Naast WBS-, Function Point- en Three-Point-schattingen worden er nog diverse andere technieken veelvuldig gebruikt:

  • Breedband Delphi: iteratieve consensusbepaling door een panel van deskundigen.
  • Gebruiksscenario-puntmethode: De benodigde inspanning wordt afgeleid van het aantal en de complexiteit van de gebruiksscenario's.
  • Percentageverdeling: wijst een vast percentage van de totale projectinspanning toe aan testen.
  • Ad-hocmethode: Deskundig oordeel wanneer historische gegevens ontbreken.

Bottom-up versus top-down schatting

Een praktische kijk op schattingen kan ook worden onderverdeeld in twee complementaire strategieรซn:

  • Bottom-up schatting: Gebaseerd op taken op het laagste niveau van de WBS. Meerdere belanghebbenden, ervaren medewerkers en bijdragers combineren hun cijfers om tot een nauwkeurig totaal te komen. Ideaal wanneer het werk goed begrepen is.
  • Schatting van bovenaf: Het project wordt geclassificeerd op basis van omvang en complexiteit en vergeleken met voltooide projecten van vergelijkbare aard. Ook wordt de gemiddelde inspanning per project gebruikt. testcase en schaalt mee met het verwachte aantal gevallen. Handig in de beginfase van een project, wanneer er nog weinig details bekend zijn.

De meeste teams combineren de twee benaderingen: een top-downbenadering voor de belangrijkste cijfers en een bottom-upbenadering voor de betrouwbaarheid van de resultaten. Wanneer het budget dit toelaat, vullen ze het resultaat aan met geavanceerde modellen.

Veelgestelde vragen

De benodigde inspanning meet het totale aantal manuren dat nodig is om het werk te voltooien. De duur meet de kalendertijd die verstrijkt nadat je mensen aan de taak hebt toegewezen. Een taak van 170 uur duurt 170 uur voor รฉรฉn persoon, maar ongeveer 21 uur voor tien mensen die parallel werken.

Begin met een werkstructuur (WBS) om het project op te delen en voeg daar vervolgens een functionele puntenschatting of driepuntschatting aan toe. De WBS biedt structuur; de functionele puntenschatting of driepuntschatting levert onderbouwde cijfers op.

Een buffer van tien tot twintig procent is gebruikelijk voor stabiele projecten. Verhoog deze buffer voor nieuwe domeinen, onbekende tools of grote teams. Reserveer de buffer voor onbekende onbekenden in plaats van voor een bekende scope.

Agile teams gebruiken story points en planning poker om de testduur parallel aan de ontwikkeling te bepalen. De snelheid van voorgaande sprints wordt omgezet in story points en daarmee in de verwachte tijd, waardoor gedetailleerde schattingen vooraf overbodig worden.

PERT (Program Evaluation and RevDe E-methode (E-methode) combineert de optimistische (O), meest waarschijnlijke (M) en pessimistische (P) schattingen met de formule E = (O + 4M + P) / 6 om de verwachte inspanning te produceren.

RevGebruik de schatting wanneer de scope verandert, afhankelijkheden verschuiven of de teamsamenstelling aanzienlijk verandert. Communiceer de wijziging tijdig en heronderhandel met de klant voordat u de deadline stilletjes verlengt.

AI-tools analyseren historische projecten, suggereren ontbrekende taken, adviseren over betrouwbaarheidsmarges en actualiseren het plan naarmate er meer gegevens binnenkomen. Dit verkleint de kloof tussen plan en werkelijkheid en vermindert blinde vlekken.

Ja. AI-assistenten zetten een projectbeschrijving om in een Work Breakdown Structure (WBS), een Function Point (FP)-classificatie en een Three-Point-schatting met formules, die de testmanager vervolgens kan beoordelen en verfijnen.

Vat dit bericht samen met: