Schattingstechnieken voor softwaretests
Wat is softwaretestschatting?
Testschatting is een managementactiviteit die bij benadering hoe lang een taak zou duren om te voltooien. Het schatten van de inspanning voor de test is een van de groot en belangrijk Taken in Testmanagement.
Waarom een schatting testen?
Twee vragen die u van uw klanten kunt verwachten bij het bespreken van potentiële testopdrachten zijn:
Voor kleine projecten zijn deze vragen relatief eenvoudig te beantwoorden. Maar voor het grote project zoals Testen Guru99 Bank-website, je moet goed nadenken om die vragen te beantwoorden.
Wat te schatten?
- Bronnen: Er zijn middelen voor nodig uitvoeren eventuele projecttaken. Het kunnen mensen, uitrusting, faciliteiten, financiering of iets anders zijn dat kan worden gedefinieerd en vereist voor de voltooiing van een projectactiviteit.
- Keer : Tijd is de meest waardevolle hulpbron in een project. Elk project heeft een deadline voor oplevering.
- Menselijke vaardigheden : Menselijke vaardigheden betekenen de kennis en ervaring van de Teamleden. Ze zijn van invloed op uw inschatting. Een team waarvan de leden over lage testvaardigheden beschikken, zal bijvoorbeeld meer tijd nodig hebben om het project af te ronden dan een team met hoge testvaardigheden.
- Kosten: De kosten zijn het project begroting. Over het algemeen betekent dit hoe veel geld nodig is om het project af te ronden.
Hoe inschatten?
Lijst met schattingstechnieken voor softwaretests
- Work Breakdown Structure
- 3-punts schattingstechniek voor het testen van software
- Breedband Delphi-techniek
- Functiepunt-/testpuntanalyse
- Gebruik – Case Point-methode
- Procentuele verdeling
- Ad-hocmethode
Hieronder vindt u het 4-stappenproces om tot een schatting te komen
U leert hoe u deze technieken kunt combineren om de schatting voor de Guru99 Bank-casestudy te vinden.
Stap 1) Verdeel de hele projecttaak in subtaken
Een taak is een werkstuk dat aan iemand is gegeven. Om dit te doen, kunt u gebruik maken van de Work Breakdown Structure techniek.
Bij deze techniek wordt een complex project verdeeld in modules. De modules worden verdeeld in submodules. Elke submodule wordt verder verdeeld in functionaliteit. Dit betekent dat de hele projecttaak wordt verdeeld in de kleinste taken.
Gebruik de Work Break Down-structuur om het Guru99 Bank-project op te splitsen in 5 kleinere taken:
Daarna kunt u elke taak opsplitsen in de subtaak. Het doel van deze activiteit is het maken van een taak als gedetailleerd as mogelijk.
Taak | Subtaak |
---|---|
Analyseer de specificatie van softwarevereisten | Onderzoek de zachte vereistenspecificaties |
Interview met de ontwikkelaar en andere belanghebbenden om meer te weten te komen over de website | |
Maak de testspecificatie | Ontwerp testscenario's |
Testcases maken | |
RevTestgevallen bekijken en herzien | |
Voer de testcases uit | Bouw de testomgeving op |
Voer de testcases uit | |
Revbekijk de resultaten van de testuitvoering | |
Meld de gebreken | |
Maak de Defect meldt | |
Meld de gebreken |
Stap 2) Wijs elke taak toe aan een teamlid
In deze stap wordt elke taak toegewezen aan de passend lid van het projectteam. U kunt als volgt een taak toewijzen
Taak | Leden |
---|---|
Analyseer de specificatie van softwarevereisten | Alle leden |
Maak de testspecificatie | Tester/testanalist |
Bouw de testomgeving op | Testbeheerder |
Voer de testcases uit | Tester, Testbeheerder |
Gebreken melden | tester |
Stap 3) Inspanningsschatting voor taken
Er zijn 2 technieken die u kunt toepassen om de inspanning voor taken te schatten
- Functionele puntmethode
- Driepuntsschatting
Methode 1) Functiepuntmethode
Bij deze methode schat de Testmanager de omvang, duur en kosten voor de taken
Stap A) Schat de omvang van de taak
In Stap 1, hebt u de hele projecttaak al in kleine taken opgedeeld met behulp van de WBS-methode. Nu schat je de omvang van die taken in. Laten we oefenen met een bepaalde taak “Maak de testspecificatie"
De omvang van deze taak hangt af van de functionele omvang van het te testen systeem. De functionele omvang weerspiegelt de bedragen van functionaliteit die relevant is voor de gebruiker. Meer aantal van functionaliteit, des te meer complex systeem is.
Voordat wordt begonnen met het daadwerkelijk inschatten van de taakinspanning, worden functionele punten verdeeld in drie groepen, zoals Complex, Middel eenvoudig als volgt:
Op basis van de complexiteit van de softwarefuncties moet de Test Manager voldoende informatie verstrekken gewicht naar elk functioneel punt. Bijvoorbeeld
Groep | Gewichtsverlies |
---|---|
Complex | 5 |
Medium | 3 |
Eenvoudig | 1 |
Laten we een eenvoudige voorbeeldoefening nemen om duidelijker te worden:
Bekijk de softwarespecificaties van website Guru99 Bank eens hier, de software-ingenieur heeft de softwaremodules al in detail beschreven, kunt u de ingewikkeldheid van de functies van de website door het gewicht voor elke module te geven?
Hoe complexer het functie punt, hoe meer moeite het kost om het te testen. De website is verdeeld in 12 functie punten, kunt u de ingewikkeldheid van elke functie wijst als volgt:
Nr. | Module Naam | Toepasselijke rollen | Beschrijving | Gewichtsverlies |
---|---|---|---|---|
1. | Balans onderzoek | Manager
|
Klant: Een klant kan meerdere bankrekeningen hebben. Hij kan alleen het saldo van zijn rekeningen bekijken
Manager: Een manager kan het saldo inzien van alle klanten die onder zijn toezicht vallen |
3 |
2. | Geld transfer | Manager
|
Klant: Een klant kan geld van zijn “eigen” rekening naar elke bestemmingsrekening laten overboeken.
Manager: Een manager kan geld overboeken van elke bronbankrekening naar de bestemmingsrekening |
5 |
3. | Mini Statement | Manager
|
Op een mini-afschrift worden de laatste 5 transacties van een rekening weergegeven
Klant: Een klant kan alleen een mini-overzicht van zijn “eigen” rekeningen zien Manager: Een manager kan het mini-afschrift van elke rekening bekijken |
3 |
4. | Aangepaste verklaring | Manager
|
Met een aangepast overzicht kunt u transacties in een rekening filteren en weergeven op basis van datum en transactiewaarde
Klant: Een klant kan Maatwerk zien van alleen zijn “eigen” rekeningen Manager: Een beheerder kan het Aangepaste overzicht van elke rekening inzien |
5 |
5. | Wachtwoord wijzigen | Manager
|
Klant: Een klant kan alleen het wachtwoord van zijn account wijzigen.
Manager: Een manager kan alleen het wachtwoord van zijn account wijzigen. Hij kan de wachtwoorden van zijn klanten niet wijzigen |
1 |
6. | Nieuwe klant | Manager | Manager: Een manager kan een nieuwe klant toevoegen.
Manager: Een manager kan gegevens zoals adres, e-mailadres en telefoonnummer van een klant bewerken. |
3 |
7. | Nieuw account | Manager | Momenteel biedt het systeem 2 soorten accounts
Een klant kan meerdere spaarrekeningen hebben (een op zijn naam, een andere op een gezamenlijke naam etc.). Hij kan meerdere betaalrekeningen hebben voor verschillende bedrijven waarvan hij eigenaar is. Of hij kan meerdere betaal- en spaarrekeningen hebben. Manager: Een manager kan een nieuw account toevoegen voor een bestaande klant. |
5 |
8. | Bewerk je account | Manager | Manager: Een manager kan accountgegevens voor een bestaand account toevoegen en bewerken | 1 |
9. | Account verwijderen | Manager | Manager: Een manager kan een account voor een klant verwijderen. | 1 |
10. | Klant verwijderen | Manager | Een klant kan alleen worden verwijderd als hij/zij geen actieve betaal- of spaarrekening heeft
Manager: Een manager kan een klant verwijderen. |
1 |
11. | Statiegeld | Manager | Manager: Een beheerder kan op iedere rekening geld storten. Meestal gedaan wanneer contant geld wordt gestort bij een bankfiliaal. | 3 |
12. | Opname | Manager | Manager: Een beheerder kan van elke rekening geld opnemen. Meestal gedaan wanneer contant geld wordt opgenomen bij een bankfiliaal. | 3 |
STAP B) Schat de duur van de taak
Na het classificeren van de ingewikkeldheid van de functiepunten moet je de waarde schatten duur om ze te testen. Duur betekent hoe veel er is tijd nodig om de taak te voltooien.
- Totale inspanning: De inspanning om alle functies van de website volledig te testen
- Totaal functiepunten: Totaal modules van de website
- Schatting gedefinieerd per functiepunten: De gemiddelde inspanning om één functie te voltooien, levert punten op. Deze waarde is afhankelijk van de produktiviteit van het lid dat deze taak op zich zal nemen.
Stel dat uw projectteam per Functiepunten een schatting heeft gemaakt van 5 uur/punten. U kunt de totale inspanning om alle functies van website Guru99 Bank te testen als volgt inschatten:
Gewichtsverlies | Aantal functiepunten | Totaal | |
---|---|---|---|
Complex | 5 | 3 | 15 |
Medium | 3 | 5 | 15 |
Eenvoudig | 1 | 4 | 4 |
Functie Totaal aantal punten | 34 | ||
Schatting definiëren per punt | 5 | ||
Totale geschatte inspanning (persoon Hours) | 170 |
De totale inspanning om de taak “Maak de testspecificatie” van Guru99 Bank te voltooien, bedraagt ongeveer 170 manuren.
Zodra u begrijpt welke inspanning nodig is, kunt u middelen toewijzen om te bepalen hoe lang de taak zal duren (duur), en vervolgens kunt u de arbeids- en niet-arbeidskosten schatten.
Bovenstaand voorbeeld laat ook het belang van het lid in uw team zien. Als je hebt getalenteerd en ervaren leden, kunt u de toegewezen taak voltooien in het Klein tijd, en uw project zal op de deadline of eerder eindigen.
STAP C) Schat de kosten voor de taken
Deze stap helpt je bij het beantwoorden van de laatste vraag van de klant “Hoeveel kost het?"
Stel dat het salaris van uw team gemiddeld $ 5 per uur is. De tijd die nodig is voor de taak "Create Test Specs" is 170 uur. De kosten voor de taak zijn dus 5 * 170 = $ 850. Nu kunt u het budget voor andere activiteiten in WBS berekenen en tot een totaalbudget voor het project komen.
Als projectmanager moet u beslissen hoe u de het meeste rendement voor de investering van uw bedrijf. Meer accuraat uw schatting van de projectkosten is: de beter in staat bent om het budget van uw project te beheren.
Methode 2) Driepuntsschatting
Driepuntsschatting is een van de technieken die gebruikt kunnen worden om een taak te schatten. De eenvoud van de Driepuntsschatting maakt het een zeer nuttig hulpmiddel voor een Projectmanager die wil inschatten.
Bij een driepuntsschatting is drie waarden worden in eerste instantie voor elke taak geproduceerd op basis van eerdere ervaring or beste gissingen als hieronder
Bij het inschatten van een taak moet de Testmanager drie waarden opgeven, zoals hierboven aangegeven. De drie geïdentificeerde waarden schatten wat er gebeurt in een optimale staat, wat is de hoogstwaarschijnlijk, of wat wij denken dat het zou zijn het slechtste geval scenario.
Laten we eens kijken hoe we de bovenstaande drie waarden in het volgende voorbeeld kunnen gebruiken
Voor de taak “Maak de testspecificatie”, kunt u de testinspanning inschatten? Onthoud dat het moet bedek alles de modules van de Guru99 Bank-website zoals gedaan in Functiepuntmethode
U kunt het als volgt schatten
- De beste geval om deze taak te voltooien is 120 manuren (ongeveer 15 dagen). In dit geval heb je een getalenteerd team, zij kunnen de taak in de kortst mogelijke tijd afronden.
- De hoogstwaarschijnlijk geval om deze taak te voltooien is 170 manuren (ongeveer 21 dagen). Dit is een normaal geval, u hebt voldoende middelen en mogelijkheden om de taak te voltooien
- De het slechtste geval om deze taak te voltooien is 200 manuren (ongeveer 25 dagen). U moet veel meer werk verrichten omdat uw teamleden niet ervaren zijn.
Wijs nu de waarde toe aan elke parameter, zoals hieronder
De inspanning om de taak te voltooien kan worden berekend met behulp van dubbel-driehoekige verdeling formule als volgt-
In de bovenstaande formule staat parameter E bekend als Gewogen gemiddelde. Het is de inschatting van de taak “Maak de testspecificatie”.
Maar misschien vraagt je baas het je wel
In de bovenstaande schatting bepaal je gewoon a mogelijk en niet een zeker waarde, we moeten weten over de waarschijnlijkheid dat de schatting juist is. U kunt de andere formule gebruiken:
In de bovenstaande formule betekent de SD standaarddeviatie. Deze waarde kan u informatie geven over de waarschijnlijkheid dat de schatting juist is.
Nu kunt u de schatting voor de taak “Maak de testspecificatie maken” afronden.
Om de taak “Maak de testspecificatie” van de Guru99 Bank-website te voltooien, hebt u nodig 166.6 13.33 ± Manuur (153.33 tot 179.99 manuur)
Stap 4) Valideer de schatting
Zodra u een totale schatting heeft gemaakt voor alle taken die in de WBS worden vermeld, moet u deze doorsturen naar de raad van bestuur, wie zal beoordelen en goedkeuren het.
Het lid van de raad van bestuur kan bestaan uit de CEO, de projectmanager en andere belanghebbenden.
Het bestuur zal uw ramingsplan met u beoordelen en bespreken. U kunt hen uw schatting uitleggen logischerwijze en redelijk zodat zij uw schattingsplan kunnen goedkeuren.
Best practices voor schattingen testen
In dit onderwerp worden algemene tips geïntroduceerd voor het schatten van de nauwkeurigheid van testen.
Voeg wat buffertijd toe:
Er kunnen veel onvoorspelbare dingen gebeuren met uw project, zoals een getalenteerd teamlid dat plotseling zijn baan opzegt, het testen duurt langer dan geschat om te voltooien... etc. Daarom moet u een buffer in uw schatting opnemen. Een buffer in de schatting zorgt ervoor dat u eventuele vertragingen kunt opvangen.
Account Resourceplanning in schatting
Wat moet u doen als sommige leden van uw team lang verlof nemen? Het kan het project vertragen. Resourceplanning speelt bij het schatten een sleutelrol. De beschikbaarheid van middelen zal ertoe bijdragen dat de schattingen realistisch zijn. Hierbij moet je rekening houden met de bladeren voor je teamlid, doorgaans lange bladeren.
Gebruik de ervaringen uit het verleden als referentie
Ervaringen uit eerdere projecten spelen een cruciale rol bij het opstellen van de tijdsramingen. Omdat sommige projecten enige gelijkenis kunnen vertonen, kunt u de eerdere schatting hergebruiken. Als u bijvoorbeeld een project uitvoert zoals het testen van een website, kunt u van die ervaring leren en proberen alle moeilijkheden of problemen te vermijden waarmee u bij eerdere projecten te maken kreeg.
Blijf bij uw inschatting
Schatting is slechts een schatting, want het kan gaan verkeerdIn de vroege stadia van het project moet u dit regelmatig doen controleer de testschattingen opnieuw en breng wijzigingen aan indien nodig. We mogen de schatting niet verlengen nadat we deze hebben gerepareerd, tenzij er grote wijzigingen in de vereisten zijn, of u met de klant moet onderhandelen over de herschatting
Sjabloon voor schatting van softwaretests
Download de softwaretestschatting Excel (.xlsx)
Andere technieken
Breedband Delphi-techniek, gebruik - Case Point-methode, percentageverdeling, ad-hocmethode zijn andere schattingstechnieken in Software Engineering.
Video over softwaretestschattingstechnieken
Klik hier als de video niet toegankelijk is
Videotranscript
- Laten we een oefening doen - voor de Aanvraag vluchtreservering een Work Breakdown Structure van de organisatie voorbereiden
- verschillende testtaken zoals – Controleer de inlogfunctionaliteit, Controleer de functionaliteit van een nieuwe bestelling, Controleer de faxfunctionaliteit en andere soortgelijke functionaliteit en schat de inspanning die nodig is om deze functionaliteiten te testen
- Bijvoorbeeld, de login functionaliteit kan getest worden in 2 uur. Maak ook een lijst van alle taken en bijbehorende inspanning. Pauzeer de trainingstutorial en voltooi de oefening. Ik hoop dat je een weloverwogen schatting hebt gemaakt van de vereiste inspanning
- Dit is een bottom-upstrategie voor testschatting. De techniek wordt bottom-up genoemd, omdat u op basis van de taken die zich op het laagste niveau van de werkverdelingshiërarchie bevinden, de duur, afhankelijkheden en middelen schat.
- Bij een bottom-upstrategie worden schattingen niet door één persoon gemaakt, maar door alle belanghebbenden, individuele bijdragers, experts en ervaren medewerkers gezamenlijk. Het idee is om gebruik te maken van de gezamenlijke wijsheid van de teamleden om tot nauwkeurige testschattingen te komen
- Nu u aanzienlijke ervaring heeft met het vluchtreserveringssysteem. Gebruik deze ervaring om de inspanning die nodig is voor een volledige inschatting in te schatten Functioneel testen van de website. – http://newtours.demoaut.com/
- De functionaliteit van deze site is identiek aan de vluchtreserveringsapplicatie, alleen is deze webgebaseerd. Pauzeer de tutorial en doe de oefening nu
- Ik hoop dat je op basis van jouw ervaring een goede inschatting hebt gemaakt van de inspanning die nodig is om de website te testen
- Dit is de Top-Down-benadering van schatting, die gebaseerd is op ervaring.
- Een andere techniek is om projecten te classificeren op basis van hun omvang en complexiteit en vervolgens te kijken hoe lang een project van een bepaalde omvang en complexiteit in het verleden heeft geduurd.
- Een andere benadering is het bepalen van de gemiddelde inspanning per Testgeval in het verleden voor vergelijkbare projecten en vervolgens geschatte testgevallen van het huidige project gebruiken om tot de totale inspanning te komen
- Geavanceerdere schattingsmodellen omvatten complexe wiskundige modellen. In de praktijk gebruiken de meeste projecten een top-downbenadering voor schatting.
- Testschattingen kunnen door veel factoren worden beïnvloed, zoals timingdruk, menselijke factoren, geografische spreiding van het testteam, enzovoort.