Tehnici de estimare a testelor software
Ce este Estimarea testului software?
Test Estimarea este o activitate de management care aproximează pentru cat timp o sarcină ar trebui să fie finalizată. Estimarea efortului pentru test este una dintre cele major și important sarcini în managementul testelor.
De ce testați estimarea?
Două întrebări pe care le puteți aștepta de la clienții dvs. atunci când discutați despre potențialele angajamente de testare sunt
Pentru proiectele mici, aceste întrebări sunt relativ ușor de răspuns. Dar pentru marele proiect ca Testarea Site-ul web Guru99 Bank, trebuie să vă gândiți din greu să răspundeți la aceste întrebări.
Ce să estimezi?
- Resurse: Sunt necesare resurse pentru executa orice sarcini de proiect. Ele pot fi persoane, echipamente, facilități, finanțare sau orice altceva capabil de definire necesar pentru finalizarea unei activități de proiect.
- Orari: Timpul este cea mai valoroasă resursă dintr-un proiect. Fiecare proiect are un termen limită până la livrare.
- Abilități umane: Abilitățile umane înseamnă cunoştinţe si experienţă a membrilor echipei. Ele afectează estimarea dumneavoastră. De exemplu, o echipă, ai cărei membri au abilități scăzute de testare, va dura mai mult timp pentru a finaliza proiectul decât cea care are abilități ridicate de testare.
- Pretul biletului: Costul este proiectul buget. În general, înseamnă cât costă bani este nevoie pentru a finaliza proiectul.
Cum se estimează?
Lista tehnicilor de estimare a testelor software
- Structura de lucru Defalcare
- Tehnica de estimare a testării software-ului în 3 puncte
- Tehnica Delphi de bandă largă
- Analiza punctului de funcționare/punctului de testare
- Utilizare – Metoda punctului de caz
- Distribuția procentuală
- Metoda ad-hoc
Mai jos este procesul în 4 pași pentru a ajunge la o estimare
Veți învăța cum să combinați aceste tehnici pentru a găsi estimarea pentru studiul de caz Guru99 Bank.
Pasul 1) Împărțiți întreaga sarcină a proiectului în subsarcini
Sarcina este o lucrare care a fost dată cuiva. Pentru a face acest lucru, puteți utiliza Structura de lucru Defalcare tehnică.
În această tehnică, un proiect complex este împărțit în module. Modulele sunt împărțite în sub-module. Fiecare sub-modul este împărțit în continuare în funcționalități. Înseamnă împărțiți întreaga sarcină a proiectului în cel mai mic sarcini.
Utilizați structura Work Break Down pentru a împărți proiectul Guru99 Bank în 5 sarcini mai mici -
După aceea, puteți împărți fiecare sarcină către subsarcină. Scopul acestei activități este crearea sarcinii ca detaliat as posibil.
Sarcină | Subsarcină |
---|---|
Analizați specificațiile cerințelor software | Investigați specificațiile cerințelor soft |
Interviu cu dezvoltatorul și alte părți interesate pentru a afla mai multe despre site | |
Creați specificația de testare | Proiectați scenarii de testare |
Creați cazuri de testare | |
Revvizualizați și revizuiți cazurile de testare | |
Executați cazurile de testare | Construiți mediul de testare |
Executați cazurile de testare | |
Revvizualizați rezultatele execuției testului | |
Raportați defectele | |
Creați Defect Rapoarte | |
Raportați defectele |
Pasul 2) Alocați fiecare sarcină membrului echipei
În acest pas, fiecare sarcină este atribuită adecvat membru în echipa de proiect. Puteți atribui sarcina după cum urmează
Sarcină | Membri actuali |
---|---|
Analizați specificațiile cerințelor software | Toți membrii |
Creați specificația de testare | Tester/Analist de testare |
Construiți mediul de testare | Administrator de teste |
Executați cazurile de testare | Tester, Administrator de teste |
Raportați defectele | Laborant |
Pasul 3) Estimarea efortului pentru sarcini
Există 2 tehnici pe care le puteți aplica pentru a estima efortul pentru sarcini
- Metoda punctului funcțional
- Estimarea în trei puncte
Metoda 1) Metoda punctului de funcție
În această metodă, Managerul de testare estimează dimensiunea, durata și costul sarcinilor
Pasul A) Estimați dimensiunea sarcinii
In Etapa 1, ați împărțit deja întreaga sarcină a proiectului în sarcină mică folosind metoda WBS. Acum estimați dimensiunea acelor sarcini. Să exersăm cu o anumită sarcină”Creați specificația de testareMatei 22:21
Mărimea acestei sarcini depinde de dimensiunea funcțională a sistemului testat. Dimensiunea funcțională reflectă sumă de funcționalitate care este relevantă pentru utilizator. Cu atât mai mult număr de funcționalitate, cu atât mai mult complex sistemul este.
Înainte de a începe efortul efectiv de estimare a sarcinilor, punctele funcționale sunt împărțite în trei grupuri, cum ar fi Complex, Mediu Simplu ca următorul:
Pe baza complexului de funcții software, Test Manger trebuie să ofere suficient greutatea la fiecare punct funcţional. De exemplu
grup | Ponderea |
---|---|
Complex | 5 |
Mediu | 3 |
simplu | 1 |
Să luăm un exemplu simplu de exercițiu pentru a fi mai clar:
Aruncă o privire la specificațiile software ale site-ului web Guru99 Bank aici, inginerul software a descris deja modulele software în detaliu, puteți determina complexitate a caracteristicilor site-ului, oferind ponderea fiecărui module?
Mai complex este punctul funcției, cu atât mai mult este efortul de a-l testa. Site-ul este împărțit în 12 funcție puncte, puteți determina complexitate din fiecare funcție punctează după cum urmează-
Nu. | Numele modulului | Roluri aplicabile | Descriere | Ponderea |
---|---|---|---|---|
1. | Anchetă de echilibru | Manager
Client |
Client: Un client poate avea mai multe conturi bancare. El poate vedea doar soldul conturilor sale
Manager: Un manager poate vedea echilibrul tuturor clienților care intră sub supravegherea sa |
3 |
2. | Transfer de fonduri | Manager
Client |
Client: Un client poate transfera fonduri din contul său „propriu” către orice cont de destinație.
Manager: Un manager poate transfera fonduri din orice cont bancar sursă în contul de destinație |
5 |
3. | Mini Declarație | Manager
Client |
Un mini extras va afișa ultimele 5 tranzacții ale unui cont
Client: Un client poate vedea mini-extrasul doar al „propriilor” conturi Manager: Un manager poate vedea mini-extrasul oricărui cont |
3 |
4. | Declarație personalizată | Manager
Client |
Un extras personalizat vă permite să filtrați și să afișați tranzacțiile dintr-un cont în funcție de dată, valoarea tranzacției
Client: Un client poate vedea extrasul personalizat doar al „propriilor” conturi Manager: Un manager poate vedea extrasul personalizat al oricărui cont |
5 |
5. | Schimbare parolă | Manager
Client |
Client: Un client poate schimba parola doar pentru contul său.
Manager: Un manager poate schimba parola doar pentru contul său. Nu poate schimba parolele clienților săi |
1 |
6. | Noul client | Manager | Manager: Un manager poate adăuga un nou client.
Manager: Un manager poate edita detalii precum adresa, e-mailul, telefonul unui client. |
3 |
7. | Cont nou | Manager | În prezent sistemul oferă 2 tipuri de conturi
Un client poate avea mai multe conturi de economii (unul pe numele lui, altul pe un nume comun etc). El poate avea mai multe conturi curente pentru diferite companii pe care le deține. Sau poate avea mai multe conturi curente și de economisire. Manager: Un manager poate adăuga un cont nou pentru un client existent. |
5 |
8. | Editați contul | Manager | Manager: Un manager poate adăuga o modificare a detaliilor contului pentru un cont existent | 1 |
9. | Șterge cont | Manager | Manager: Un manager poate adăuga o ștergere a unui cont pentru un client. | 1 |
10. | Ștergeți clientul | Manager | Un client poate fi șters numai dacă nu are conturi curente sau de economisire active
Manager: Un manager poate șterge un client. |
1 |
11. | Depozit | Manager | Manager: Un manager poate depune bani în orice cont. Se face de obicei atunci când numerarul este depus la o sucursală bancară. | 3 |
12. | Retragere | Manager | Manager: Un manager poate retrage bani din orice cont. De obicei, se face atunci când numerarul este retras la o sucursală a băncii. | 3 |
PASUL B) Estimați durata sarcinii
După clasificarea complexitate dintre punctele funcției, trebuie să estimați durată pentru a le testa. Durata înseamnă cât costă este nevoie de timp pentru a termina sarcina.
- Efort total: Efortul de a testa complet toate funcțiile site-ului
- Total de puncte de funcție: Total module ale site-ului web
- Estimare definită pe puncte de funcție: Efortul mediu de a finaliza un punct de funcție. Această valoare depinde de productivitate a membrului care va prelua această sarcină.
Să presupunem că echipa dvs. de proiect are o valoare estimată definită pe Puncte de Funcție de 5 ore/puncte. Puteți estima efortul total de a testa toate caracteristicile site-ului web Guru99 Bank, după cum urmează:
Ponderea | # de puncte de funcție | Total | |
---|---|---|---|
Complex | 5 | 3 | 15 |
Mediu | 3 | 5 | 15 |
simplu | 1 | 4 | 4 |
Funcție Total de puncte | 34 | ||
Estimare definită pe punct | 5 | ||
Efort total estimat (pers Hours) | 170 |
Deci, efortul total de a finaliza sarcina „Creați specificația de testare” a Guru99 Bank este de aproximativ 170 de ore-om.
Odată ce înțelegeți efortul necesar, puteți aloca resurse pentru a determina cât timp va dura sarcina (durata), apoi puteți estima costurile cu forța de muncă și costurile non-forțe de muncă.
Exemplul de mai sus arată, de asemenea, importanța membrului din echipa ta. Daca ai talentat și cu experienţă membri, puteți finaliza sarcina atribuită în mic timp, iar proiectul dumneavoastră se va finaliza la termenul limită sau mai devreme.
PASUL C) Estimați costul sarcinilor
Acest pas vă ajută să răspundeți la ultima întrebare a clientului „Cât costã?"
Să presupunem că, în medie, salariul echipei tale este de 5 USD pe oră. Timpul necesar pentru sarcina „Creați specificații de testare” este de 170 de ore. În consecință, costul sarcinii este de 5*170 = 850 USD. Acum puteți calcula bugetul pentru alte activități în WBS și puteți ajunge la bugetul total pentru proiect.
În calitate de manager de proiect, trebuie să decideți cum să obțineți majoritatea revin pentru investiția companiei dvs. Cu atât mai mult precis estimarea dvs. a costului proiectului este, mai bine veți fi capabil să gestionați bugetul proiectului dvs.
Metoda 2) Estimarea în trei puncte
Estimarea în trei puncte este una dintre tehnicile care ar putea fi utilizate pentru a estima o sarcină. Simplitatea estimării în trei puncte o face un instrument foarte util pentru un manager de proiect pe care dorește să o estimeze.
În estimarea în trei puncte, trei valorile sunt produse inițial pentru fiecare sarcină pe baza experienta anterioara or cele mai bune presupuneri după cum urmează
La estimarea unei sarcini, Managerul de testare trebuie să furnizeze trei valori, așa cum este specificat mai sus. Cele trei valori identificate, estimează ce se întâmplă într-un stare optimă, ce este cel mai probabil, sau ceea ce credem că ar fi cel mai rău caz scenariu.
Să vedem cum să folosim cele trei valori de mai sus în exemplul următor
Pentru sarcina „Creați specificația de testare”, puteți estima efortul de testare? Amintește-ți că trebuie acoperă toate modulele site-ului web Guru99 Bank așa cum se face în Metoda punctului de funcție
Puteți estima după cum urmează
- cel mai bun caz a finaliza această sarcină este 120 ore de om (aproximativ 15 zile). În acest caz, ai o echipă talentată, ei pot termina sarcina în cel mai scurt timp.
- cel mai probabil cazul pentru a finaliza această sarcină este 170 ore de om (aproximativ 21 de zile). Acesta este un caz normal, aveți suficiente resurse și capacitatea de a finaliza sarcina
- cel mai rău caz a finaliza această sarcină este 200 ore de om (aproximativ 25 de zile). Trebuie să lucrați mult mai mult, deoarece membrii echipei nu au experiență.
Acum, atribuiți valoarea fiecărui parametru ca mai jos
Efortul de a finaliza sarcina poate fi calculat folosind distribuție dublu triunghiulară formula dupa cum urmeaza-
În formula de mai sus, parametrul E este cunoscut ca Medie ponderată. Este estimarea sarcinii „Creați specificația de testare”.
Dar șeful tău te poate întreba
În estimarea de mai sus, determinați doar a posibil și nu a sigur valoare, trebuie să știm despre probabilitate că estimarea este corectă. Puteți folosi cealaltă formulă:
În formula de mai sus, SD înseamnă Deviația Standard, această valoare vă poate oferi informații despre probabilitate că estimarea este corectă.
Acum puteți încheia estimarea pentru sarcina „Creați specificația de testare”
Pentru a finaliza sarcina „Creați specificația de testare” a site-ului web Guru99 Bank, aveți nevoie 166.6 13.33 ± Oră de om (153.33 - 179.99 ore de muncă)
Pasul 4) Validați estimarea
Odată ce creați o estimare agregată pentru toate sarcinile menționate în WBS, trebuie să o transmiteți către Consiliu de Administrație, cine va revizuiască și aproba aceasta.
Membrul consiliului de administrație ar putea cuprinde directorul general, managerul de proiect și alte părți interesate.
Consiliul de administrație va examina și discuta cu dvs. planul de estimare. Le puteți explica estimarea dvs logic și rezonabil astfel încât să aprobe planul dumneavoastră de estimare.
Testați cele mai bune practici de estimare
Acest subiect prezintă sfaturi generale despre cum să estimați acuratețea testării.
Adăugați o perioadă de timp tampon:
Multe lucruri imprevizibile s-ar putea întâmpla cu proiectul dvs., cum ar fi un membru al echipei talentat renunță la slujbă brusc, testarea durează mai mult decât se estimează pentru a fi finalizată... etc. De aceea trebuie să includeți un tampon în estimarea dvs. A avea un tampon în estimare permite să facă față oricăror întârzieri care pot apărea.
Cont Planificarea resurselor în estimare
Ce ar trebui să faci dacă unii membri din echipa ta iau concedii lungi? Poate întârzia proiectul. Planificarea resurselor în estimare joacă un rol cheie. Disponibilitatea resurselor va ajuta la asigurarea faptului că estimările sunt realiste. Aici trebuie să luați în considerare frunzele pentru membrul echipei dvs., în general frunze lungi.
Utilizați experiența trecută ca referință
Experiențele din proiectele anterioare joacă un rol vital în pregătirea estimărilor de timp. Deoarece un proiect poate avea o oarecare similitudine, puteți reutiliza estimarea trecută. De exemplu, dacă obișnuiți să faceți un proiect precum testarea unui site web, puteți învăța din acea experiență, puteți încerca să evitați toate dificultățile sau problemele cu care s-au confruntat în proiectele anterioare.
Rămâneți la estimarea dvs
Estimarea este doar estimare pentru că poate merge greşit.În etapele incipiente ale proiectului, ar trebui să fie frecvent verificați din nou estimările testului și efectuați modificări daca este nevoie. Nu ar trebui să extindem estimarea după ce o reparăm, cu excepția cazului în care există modificări majore în cerință sau trebuie să negociați cu clientul despre reevaluare
Șablon de estimare a testului software
Descărcați Software Test Estimation Excel(.xlsx)
Alte tehnici
Tehnica Delphi de bandă largă, Metoda de utilizare – Punct de caz, Distribuția procentuală, Metoda ad-hoc sunt alte tehnici de estimare din Ingineria software.
Tehnici de estimare a testelor software Video
Clic aici dacă videoclipul nu este accesibil
Transcriere video
- Să facem un exercițiu -pentru Aplicație de rezervare a zborului pregăti o structură de defalcare a muncii a
- diverse sarcini de testare, cum ar fi – Verificați funcționalitatea de conectare, Verificarea funcționalității comenzii noi, Verificarea funcționalității faxului și alte funcționalități similare și Estimați efortul necesar pentru a testa aceste funcționalități
- De exemplu, funcționalitatea de conectare poate fi testată în 2 ore. De asemenea, pregătiți o listă cu toate sarcinile și efortul corespunzător. Întrerupeți tutorialul de antrenament și finalizați exercițiul. Sper că ați făcut o presupunere educată a efortului necesar
- Aceasta este o strategie de jos în sus pentru estimarea testului. Tehnica se numește de jos în sus, deoarece pe baza sarcinilor care se află la cel mai de jos nivel al ierarhiei de defalcare a muncii, estimați durata, dependențele și resursele.
- În strategia de jos în sus, estimările nu sunt luate de o singură persoană, ci de toți părțile interesate, contributorii individuali, experții și membrii personalului cu experiență în mod colectiv. Ideea este să se bazeze pe înțelepciunea colaborativă a membrilor echipei pentru a ajunge la estimări exacte ale testelor
- Acum, deoarece aveți o experiență considerabilă în sistemul de rezervare a zborurilor. Folosiți această experiență pentru a estima efortul necesar pentru completare Functional Testing a site-ului web. – http://newtours.demoaut.com/
- Funcțional, acest site este identic cu aplicația de rezervare a zborului, doar că este bazat pe web. Întrerupeți tutorialul și faceți exercițiul acum
- Sper că, pe baza experienței dvs., ați făcut o estimare bună a efortului necesar pentru a testa site-ul
- Aceasta este abordarea de sus – în jos a estimării care se bazează pe experiență.
- O altă tehnică este de a clasifica proiectele în funcție de dimensiunea și complexitatea lor și apoi de a vedea cât de mult a durat un proiect de o anumită dimensiune și complexitate în trecut.
- O altă abordare este determinarea efortului mediu per Caz de testare în trecut pentru proiecte similare și apoi folosind cazuri de testare estimate ale proiectului actual și ajungând la efort total
- Modelele de estimare mai sofisticate implică modele matematice complexe. În practică, majoritatea proiectelor utilizează abordarea de sus în jos pentru estimare.
- Estimările testului pot fi afectate de mulți factori, cum ar fi presiunile de sincronizare, factorii de oameni, distribuția geografică a echipei de testare și așa mai departe