Tehnici de estimare a testelor în testarea software
⚡ Rezumat inteligent
Tehnicile de estimare a testelor software estimează durata și costul testării. Un proces în patru etape - defalcarea sarcinilor, atribuirea proprietarilor, estimarea efortului și validarea cu părțile interesate - transformă termenele vagi într-un plan justificabil pe care managementul îl poate aproba.
Ce este Estimarea testului software?
Estimarea testelor software este o activitate de management care estimează durata și costul unei sarcini de testare. Producerea unei estimări credibile a testului este una dintre cele mai importante responsabilități din managementul testelor deoarece influențează deciziile privind programul, bugetul și resursele.
De ce este importantă estimarea testelor
Clienții pun întotdeauna două întrebări înainte de a semna o misiune de testare:
Pentru proiectele mici, aceste întrebări sunt ușor de răspuns. Pentru un proiect mai mare — să zicem, testarea GuruSite-ul 99 Bank — aveți nevoie de o tehnică structurată pentru a vă apăra răspunsul.
Ce să estimezi?
- Resurse: personal, echipamente, facilități, finanțare și orice altceva necesar pentru realizarea lucrării.
- Durata evenimentului: cea mai valoroasă resursă din orice proiect — fiecare lansare are un termen limită.
- Abilități umane: cunoștințele și experiența echipei. Testerii mai buni termină mai repede decât o echipă mai puțin experimentată.
- Pretul biletului: bugetul proiectului — câți bani sunt necesari pentru a realiza testarea planificată.
Cum să estimezi
Tehnicile comune de estimare a testelor software sunt:
- Structura de defalcare a lucrărilor (WBS).
- Estimare în trei puncte.
- Delphi cu bandă largă.
- Analiza punctului funcțional sau a punctului de testare.
- Metoda Punctului de Caz de Utilizare.
- Distribuția procentuală.
- Metodă ad-hoc.
Procesul în patru etape de mai jos combină mai multe tehnici pentru a ajunge la o estimare justificabilă. Exemplul folosește GuruStudiu de caz 99 Bank.
Pasul 1) Împărțiți întregul proiect în sub-sarcini
Folosește Structura de lucru Defalcare Tehnică de împărțire a unui proiect complex în module, submodule și, în cele din urmă, cele mai mici sarcini semnificative. Estimările sunt mult mai fiabile la nivel de frunză decât în cazul proiectelor principale vagi.
Aplică tehnica pentru a rupe GuruProiectul 99 Bank în cinci sarcini mai mici:
Fiecare sarcină este apoi împărțită în sub-sarcini până când fiecare linie este suficient de detaliată pentru a fi estimată.
| Sarcină | Subsarcină |
|---|---|
| Analizați specificațiile cerințelor software | Investigați specificațiile cerințelor. |
| Intervievați dezvoltatori și alte părți interesate pentru a afla mai multe despre site-ul web. | |
| Creați specificația de testare | Proiectați scenarii de testare. |
| Creați cazuri de testare. | |
| Revvizualiza și revizui cazurile de testare. | |
| Executați cazurile de testare | Construiți mediul de testare. |
| Executați cazurile de testare. | |
| RevVizualizați rezultatele execuției testelor. | |
| Raportați defectele | Creați defect rapoarte. |
| Raportați defectele. |
Pasul 2) Alocați fiecare sarcină unui membru al echipei
Atribuiți fiecare sub-sarcină celui mai potrivit proprietar.
| Sarcină | Proprietar |
|---|---|
| Analizați specificațiile cerințelor software | Toți membrii echipei |
| Creați specificația de testare | Tester / Analist de teste |
| Construiți mediul de testare | Administrator de testare |
| Executați cazurile de testare | Tester, administrator de teste |
| Raportați defectele | Laborant |
Pasul 3) Estimarea efortului pentru fiecare sarcină
Două tehnici complementare funcționează bine în această etapă:
- Metoda Punctului Funcțional.
- Estimare în trei puncte.
Metoda 1) Metoda punctului de funcție
Managerul de teste estimează dimensiunea, durata și costul pentru fiecare sarcină.
Pasul A) Estimați dimensiunea sarcinii
Abordați sarcina „Creați specificația testului”. Dimensiunea acesteia depinde de dimensiunea funcțională a sistemului testat — cu cât sunt mai multe funcții, cu atât sistemul este mai complex. Punctele funcționale sunt de obicei clasificate în trei grupuri: Complexe, Medii și Simple.
Pe baza complexității, Managerul de Teste atribuie o pondere fiecărui punct funcțional:
| grup | Pondere |
|---|---|
| Complex | 5 |
| Mediu | 3 |
| simplu | 1 |
GuruSite-ul web al 99 Bank este împărțit în 12 puncte funcționale. Complexitatea acestora este rezumată mai jos.
| # | Module | Roluri aplicabile | Descriere | Pondere |
|---|---|---|---|---|
| 1 | Anchetă de echilibru | Manager, Client | Client: vizualizați doar soldul conturilor proprii. Manager: vizualiza soldul fiecărui client aflat sub supraveghere. |
3 |
| 2 | Transfer de fonduri | Manager, Client | Client: transferă fonduri din contul propriu către orice destinație. Manager: transfera fonduri din orice sursă către orice destinație. |
5 |
| 3 | Mini Declarație | Manager, Client | Ultimele cinci tranzacții ale unui cont. Client: vizualizați doar propriile conturi. Manager: vizualiza orice cont. |
3 |
| 4 | Declarație personalizată | Manager, Client | Tranzacții filtrate după dată sau valoare. Client: doar conturi proprii. Manager: orice cont. |
5 |
| 5 | Schimbare parolă | Manager, Client | Client: schimbă propria parolă. Manager: schimbă propria parolă (nu a clientului). |
1 |
| 6 | Noul client | Manager | Adăugați și editați detaliile clientului (adresă, e-mail, telefon). | 3 |
| 7 | Cont nou | Manager | Conturi de economii și conturi curente; un client poate deține mai multe conturi din fiecare. Managerul adaugă conturi noi pentru clienții existenți. | 5 |
| 8 | Editați contul | Manager | Editați detaliile unui cont existent. | 1 |
| 9 | Șterge cont | Manager | Ștergeți un cont existent pentru un client. | 1 |
| 10 | Ștergeți clientul | Manager | Ștergeți un client numai atunci când nu există conturi active. | 1 |
| 11 | Depozit | Manager | Depuneți numerar în orice cont de la sucursală. | 3 |
| 12 | Retragere | Manager | Retrageți numerar din orice cont de la sucursală. | 3 |
Pasul B) Estimarea duratei sarcinii
Odată ce complexitatea este stabilită, estimați durata necesară pentru testarea fiecărui grup.
- Efort total: efort total pentru a testa fiecare funcție a site-ului web.
- Total puncte funcționale: totalul modulelor site-ului web.
- Estimare per punct funcțional: efort mediu per punct; depinde de productivitatea echipei.
Presupunem că estimarea echipei pe punct funcțional este 5 ore/punctEfortul total pentru GuruExemplul 99 Bank este:
| grup | Pondere | Puncte funcționale | Total |
|---|---|---|---|
| Complex | 5 | 3 | 15 |
| Mediu | 3 | 5 | 15 |
| simplu | 1 | 4 | 4 |
| Funcție Total de puncte | 34 | ||
| Estimare per punct | 5 | ||
| Efort total estimat (persoană-ore) | 170 | ||
Efortul total pentru finalizarea „Creării specificației de testare” este de aproximativ 170 de ore persoanăOdată ce efortul este cunoscut, puteți aloca resurse pentru a determina durata și costul.
Pasul C) Estimarea costului sarcinilor
Acest pas răspunde la a doua întrebare a clientului — „Cât costă?”. Presupunem o rată medie a echipei de $ 5 / orăSarcina de mai sus durează 170 de ore, deci costul este 170 × $5 = $850Aplicați același calcul pentru fiecare sarcină WBS pentru a ajunge la bugetul proiectului.
Cu cât estimarea este mai precisă, cu atât mai bine puteți gestiona bugetul proiectului și vă puteți asigura că fiecare dolar aduce un profit.
Metoda 2) Estimare în trei puncte
Estimarea în trei puncte este o tehnică structurată în care Managerul de teste oferă trei valori pentru fiecare sarcină — optimist, cel mai probabil și pesimist efort — bazat pe experiența anterioară sau pe cele mai bune estimări.
Pentru „Creați specificația testului”, cele trei valori ar putea fi:
- Cel mai bun caz: 120 de ore-om (~15 zile) cu o echipă puternică și experimentată.
- Cel mai probabil: 170 de ore-om (~21 de zile) cu o echipă și resurse tipice.
- Cel mai rău caz: 200 de ore-om (~25 de zile) cu o echipă mai puțin experimentată și lucrări suplimentare de reluare.
Calculați media ponderată folosind formula PERT:
Valoarea E este medie ponderată — estimarea principală pentru „Crearea specificației de testare”.
Pentru a exprima încrederea din jur E, calculați abaterea standard:
Pentru GuruExemplu bancar 99, estimarea rezultă astfel 166.6 ± 13.33 ore-persoană — un interval de 153.33 până la 179.99 ore-persoană.
Pasul 4) Validați estimarea
Agregarea fiecărei estimări de sarcină din WBS și prezentarea planului consiliului de administrație (CEO, manager de proiect, părți interesate cheie) pentru revizuire și aprobare.
Parcurgeți tabla estimarea în mod logic, astfel încât să înțeleagă ipotezele, tehnicile alese și contingența pe care ați inclus-o.
Cele mai bune practici pentru estimarea testelor
Adăugați timp tampon
Planurile rareori rezistă contactului cu realitatea - membrii echipei pleacă, testele durează mai mult decât se aștepta, dependențele se rătăcesc. Includeți o rezervă rezonabilă în fiecare estimare, astfel încât programul să absoarbă surprizele minore.
Planificați disponibilitatea resurselor
Luați în considerare concediile planificate, instruirea și rotațiile de gardă. Estimările care ignoră disponibilitatea arată excelent pe hârtie, dar se eșuează la livrare.
Folosește experiența trecută ca referință
Datele istorice din proiecte similare sunt neprețuite. Dacă ați testat un site web comparabil anul trecut, învățați din datele sale reale, din problemele întâmpinate și din timpul de așteptare care v-a salvat situația.
Respectați estimarea — dar revizuiți-o
Estimările nu sunt convenționaletracts; acestea sunt cele mai bune presupuneri. RevVizitați-le la etape cunoscute și ajustați-le doar atunci când cerințele se schimbă semnificativ sau informații noi schimbă situația. Negociați orice modificare cu clientul în mod transparent.
Șablon de estimare a testului software
Descărcați fișierul Excel pentru estimarea testelor software (.xlsx)
Alte tehnici de estimare
Pe lângă WBS, estimarea punctuală funcțională și estimarea în trei puncte, sunt utilizate pe scară largă și alte tehnici:
- Delphi cu bandă largă: estimare iterativă a consensului de către un grup de experți.
- Metoda Punctelor de Caz de Utilizare: derivă efort din numărul și complexitatea cazurilor de utilizare.
- Distribuție procentuală: alocă un procent fix din efortul total al proiectului pentru testare.
- Metodă ad-hoc: judecata experților atunci când lipsesc date istorice.
Estimare de jos în sus vs. estimare de sus în jos
O perspectivă practică asupra estimării se împarte, de asemenea, în două strategii complementare:
- Estimare de jos în sus: bazat pe sarcini la cel mai scăzut nivel al WBS. Mai multe părți interesate, personal experimentat și contribuitori își combină numerele pentru a ajunge la un total precis. Ideal atunci când munca este bine înțeleasă.
- Estimare de sus în jos: clasifică proiectul după dimensiune și complexitate și îl compară cu proiecte finalizate de formă similară. De asemenea, utilizează efortul mediu pe caz de testare și se scalează în funcție de numărul de cazuri proiectat. Util la începutul unui proiect, când detaliile sunt puține.
Majoritatea echipelor combină cele două - de sus în jos pentru cifra principală, de jos în sus pentru încredere - și suprapun rezultatul cu modele sofisticate atunci când bugetele justifică efortul.















