software test estimation techniques
Pre úspech každého projektu je odhad testu a správne vykonanie rovnako dôležité ako vývojový cyklus. Dodržiavanie odhadu je veľmi dôležité pre vybudovanie dobrého mena klienta.
Skúsenosti zohrávajú hlavnú úlohu pri odhadovaní „úsilia pri testovaní softvéru“. Práca na rôznych projektoch pomáha pripraviť presný odhad testovacieho cyklu. Je zrejmé, že človek nemôže len tak slepo dať nejaký počet dní na akúkoľvek testovaciu úlohu. Odhad testu by mal byť realistický a presný.
V tomto článku sa snažím veľmi jednoduchým spôsobom uviesť niektoré body, ktoré sú užitočné pri príprave presného odhadu testu.
Čo sa dozviete:
- Stručný popis procesu odhadu testu
- Príklady odhadu testu
- 9 všeobecných rád, ako presne odhadnúť čas na testovanie
- Záver
- Odporúčané čítanie
Stručný popis procesu odhadu testu
„Odhad je proces hľadania odhadu alebo aproximácie, čo je hodnota, ktorá je použiteľná na nejaký účel, aj keď môžu byť vstupné údaje neúplné, neisté alebo nestabilné.“ (Odkaz: Wikipedia )
Všetci sa ako profesionáli stretávame s rôznymi úlohami a povinnosťami a termínmi počas celého života. Teraz existujú dva prístupy k hľadaniu riešenia problému.
Prvý prístup je reaktívny prístup, pri ktorom sa pokúšame nájsť riešenie problému až po jeho príchode.
V druhom prístupe, ktorý sa dá nazvať proaktívnym prístupom, sa najskôr pripravíme dlho predtým, ako problém príde s našimi minulými skúsenosťami a potom s našimi minulými skúsenosťami, pokúsime sa nájsť riešenie problému, keď príde.
Odhad je možné považovať za techniku, ktorá sa uplatňuje pri proaktívnom prístupe k problému.
Odhad je teda možné použiť na predikciu toho, koľko úsilia z hľadiska času a nákladov bude potrebné na splnenie definovanej úlohy.
Len čo je testovací tím schopný odhadnúť aktuálny problém, je pre neho jednoduchšie nájsť riešenie, ktoré by bolo optimálne pre daný problém.
Prax odhadu sa dá formálnejšie definovať ako približný výpočet pravdepodobných nákladov na dielo.
Tiež si prečítajte=> 7 faktorov ovplyvňujúcich odhad testu projektu automatizácie selénu
Základné predpoklady procesu odhadu testu
# 1) Štatistiky získané z práce s minulými skúsenosťami : Je vždy dobrým zvykom stráviť nejaký čas pripomenutím si minulých projektov, ktoré predstavovali výzvy podobné súčasnému úsiliu.
# 2) Dostupné dokumenty alebo artefakty: The prichádzajú nástroje na správu testov tieto typy scenárov sú užitočné, pretože ukladajú dokumenty s požiadavkami a objasneniami. Tieto dokumenty môže testovací tím postúpiť s cieľom jasne definovať rozsah projektu.
# 3) Predpoklady o druhu práce: Minulé pracovné skúsenosti pomáhajú pri vytváraní predpokladov o projekte. To je miesto, kde je najímanie skúsených odborníkov najdôležitejšie.
Manažéri testovania môžu vyzdvihnúť mozog týchto ľudí, aby dosiahli požadované výsledky.
# 4) Výpočet potenciálnych rizík a hrozieb: Testovací tím musí tiež vizualizovať potenciálne riziká a hrozby a úskalia, ktoré môžu pre tím v budúcnosti ležať.
# 5) Určenie, či boli dokumenty zostavené z pôvodnej úrovne: Testovací tím tiež musí zistiť, či boli požiadavky stanovené alebo nie. Ak dokumenty nie sú zostavené, je dôležité určiť frekvenciu zmien.
# 6) Všetky zodpovednosti a závislosti by mali byť jasné: Organizácia by mala jasne definovať úlohy a zodpovednosti všetkých osôb, ktoré by vykonávali proces odhadu.
# 7) Dokumentácia a sledovanie záznamov o odhadoch: Mali by sa zdokumentovať všetky príslušné informácie týkajúce sa procesu odhadu.
# 8) Činnosti, ktoré sa musia vykonať počas procesu odhadu testu
- Zorganizujte tím, ktorý bude vykonávať odhady
- Rozložte projekt na fázy projektu a následné činnosti, ktoré ho tvoria
- Vypočítajte odhad na základe predchádzajúcich projektov a profesionálnych skúseností
- Stanovte priority možných hrozieb a pripravte prístupy na ich zmiernenie
- Skontrolujte a zdokumentujte príslušnú časť práce
- Odošlite prácu príslušným zainteresovaným stranám
Najvýznamnejšie techniky odhadu testov
Niektoré z najdôležitejších techník pre odhad testu sú:
- Odhad skúšobného bodu
- Odhad založený na pracovnej fáze
- Použite odhad bodu prípadu
Ako a kde používame tieto techniky:
# 1) Odhad testovacieho bodu je jednoduchá a ľahko pochopiteľná technika odhadu, ktorá sa široko používa v celom spektre testovania softvéru. Iteračné fázy a jednoduchosť sú najdôležitejšie vlastnosti tejto konkrétnej techniky.
sql pohovor otázky na 5 rokov skúseností
# 2) Odhad založený na pracovnej fáze je technika odhadu, ktorá sa používa pri odhadovaní odhadu na konkrétnu fázu (zvyčajne najkratšia a najjednoduchšia z fáz) a potom testovací tím postupne pridáva ďalšie fázy do počiatočného odhadu a nakoniec prichádza s vhodným odhadom.
# 3) Technika odhadu bodu použitia je odhad v prípadoch použitia, keď sa na určenie odhadu testovania softvéru použijú neupravené váhy aktérov a neupravené váhy prípadov použitia.
Podrobnosti o technike odhadu skúšobného bodu
Technika odhadu testovacích bodov sa vykonáva podľa uvedených krokov: -
(Podľa tejto paradigmy je možné brať do úvahy nasledujúce váhy, ktoré sa môžu v jednotlivých projektoch líšiť. Niektoré z týchto váh sú váhou programovacieho jazyka na základe zložitosti kódu, váhou aplikácie založenou na type aplikácie a váhami testu, ktoré sú pridelené na základe rôznych fáz testovania softvéru.)
Nespracované testovacie body sa vynásobia CWF, aby sa získala veľkosť testovania vo veľkosti testovacích bodov.
Faktor produktivity označuje čas, ktorý musí skúšobný inžinier absolvovať na vykonanie testovania jedného testovacieho bodu
Úsilie o testovanie v osobných hodinách sa počíta vynásobením veľkosti testovacieho bodu faktorom produktivity.
Pri výpočte techniky odhadu testovacích bodov uvažujeme nasledujúce premenné.
- Zložitosť testovacích požiadaviek
- Rozhranie s inými požiadavkami
- Celkový počet overovacích bodov
- Údaje základnej skúšky
Potom musíme zvážiť váhové vektory pre každú z dátových premenných a usporiadať ich nasledujúcim spôsobom.
Faktor úpravy = priemer z (súčin hmotnosti komplexu a hmotnosti faktora) / 30
Nastavovací testovací bod pre návrh testovacieho prípadu = celkový testovací bod X (1 + nastavovací faktor pre dizajn testovacieho prípadu)
samostatná implementácia hash tabuľky reťazenia v c ++
Upravený testovací bod pre vykonanie testovacieho prípadu = celkový testovací bod X (1 + nastavovací faktor pre vykonanie testovacieho prípadu)
Celkový testovací bod (normalizovaný) X (1 + korekčný faktor pre návrh / prevedenie testovacieho prípadu) = upravený testovací bod pre návrh / prevedenie testovacieho prípadu
Celková námaha v osobohodinách (PH) = počet normalizovaných testovacích bodov / produktivita (v normalizovaných testovacích bodoch na hodinu osoby)
Príklady odhadu testu
Pokúsme sa použiť vyššie uvedenú formuláciu na ďalšie praktické použitie.
Predpokladajme, že skončíme s požiadavkou na test, pričom na otestovanie máme 5 testovacích scenárov.
Teraz povedzte Testovací scenár 1 má 5 očakávaných výsledkov testu, testovací scenár 2 6 očakávaných výsledkov testu, testovací scenár 3 iba 2 očakávaných výsledkov testu, testovací scenár 4 9 očakávaných výsledkov testu, testovací scenár 5 tiež 9 očakávaných výsledkov testu.
Takže testovacie scenáre klasifikujeme do troch tried, t. J. Komplexné, jednoduché a mierne na základe celkového počtu očakávaných výsledkov prítomných v týchto troch triedach.
Komplexné triedy budú mať viac ako 7 očakávaných výsledkov, zatiaľ čo jednoduché budú pozostávať z menej ako 5 očakávaných výsledkov a mierne scenáre budú pozostávať zo 4 až 7 očakávaných výsledkov.
Klasifikujeme teda testovací scenár 1 a testovací scenár 2 ako umiernené scenáre, scenár 5 a scenár 6 ako zložité a testovací scenár 3 ako jednoduchý.
Teraz použijeme testovacie body na všetky tieto scenáre. Aplikujeme 5 testovacích bodov pre zložité triedy, 3 pre mierne a 2 pre jednoduché scenáre.
Predpokladané testovacie body vynásobíme celkovým počtom očakávaných výsledkov vo všetkých týchto testovacích scenároch. Takže nakoniec skončíme s nasledujúcimi aproximáciami.
Scenár 1: 3 testovacie body * 5 očakávaných výsledkov testu = upravené testovacie body = 25
Scenár 2: 3 testovacie body * 6 očakávaných výsledkov testu = upravené testovacie body = 30
Scenár 3: 2 testovacie body * 2 očakávané výsledky testu = upravené testovacie body = 4
Scenár 4: 5 testovacích bodov * 9 očakávaných výsledkov testu = upravené testovacie body = 45
Scenár 5: 5 testovacích bodov * 9 očakávaných výsledkov testu = upravené testovacie body = 45
Takže vzhľadom na to, že pre každý upravený testovací bod musíme použiť povedzme 5 osobných hodín, nakoniec dostaneme nasledujúci približný výsledok.
Testovací scenár 1: 25 upravených testovacích bodov * 5 pracovných hodín = 125 osobných hodín
Testovací scenár 2: 30 upravených testovacích bodov * 5 osôb = 150 osôb
Testovací scenár 3: 4 upravené testovacie body * 5 pracovných hodín = 20 osobných hodín
Testovací scenár 4: 45 upravených testovacích bodov * 5 osôb = 225 osôb
Testovací scenár 5: 45 upravených testovacích bodov * 5 osôb = 225 osôb
Celková približná osobohodina je teda: 745 osobohodín
Použite metódu odhadu prípadového bodu
Metóda bodu prípadu použitia je založená na prípadoch použitia, kedy vypočítame celkové úsilie na odhad testu založené na prípadoch použitia alebo požiadavkách.
Tu je podrobný proces metódy odhadu bodu použitia prípadu:
Príklad toho istého je ten, že v konkrétnej požiadavke máme 5 prípadov použitia, prípad použitia 1, prípad použitia 2, ..., prípad použitia 5. Uvažujme teraz, že prípad použitia 1 sa skládá ze 6 aktérů, případ použití 2 se skládá z 15 aktérů, případy použití 3, 4 a 5, 3, 4 a 5 aktérov.
Akýkoľvek prípad použitia, ktorý zahŕňa celkový počet aktérov menej ako 5, považujeme za negatívny, akýkoľvek prípad použitia s celkovým počtom aktérov je rovný alebo väčší ako 5 a menší alebo rovný 10 za pozitívny a akýkoľvek prípad použitia s väčším počtom aktérov menší ako 5 ako 10 hercov ako výnimočných.
Rozhodli sme sa prideliť 2 body výnimočným prípadom použitia, 1 pozitívnym a -1 negatívnym.
Preto na základe našich vyššie uvedených predpokladov kategorizujeme prípady použitia 1 a 5 ako pozitívne, prípad použitia 2 ako výnimočný a prípad použitia 3, 4 ako negatívne.
Váhy nespracovaného herca = Prípad použitia 1 = (celkový počet aktérov) 5 * 1 (pridelený bod) = 5. Podobne
Prípad použitia 2 = 15 * 2 = 30.
aký je najlepší softvér na rozpoznávanie hlasu
Opakovaním postupu pre ostatné prípady použitia dostaneme váhy nespracovaného aktéra = 33
Hmotnosť nespracovaného prípadu použitia = celkové číslo. prípadov použitia = 5
Nespracovaný bod prípadu použitia = Neupravené váhy aktérov + Neupravená hmotnosť prípadu použitia = 33 + 5 = 38
Bod spracovaného prípadu použitia = 38 * (0,65+ (0,01 * 50) = 26,7 alebo približne 28 hodín osôb
Technika rozpadu na pracovnú fázu
Techniku rozpadu pracovnej fázy je možné opísať v nasledujúcich krokoch.
- Rozložte celkovú prácu na fázy.
- Začnite s najjednoduchšou fázou a priraďte jej približnú hodnotu odhadu.
- Potom pokračujte v identifikácii ďalšej možnej fázy, ktorá by mohla byť zahájená po dokončení tejto fázy.
- Odvodiť možnú množinu aproximačných hodnôt, ktoré je možné použiť na túto fázu, a zvoliť maximálnu hodnotu zo všetkých odvodených aproximačných hodnôt.
- Sčítajte približnú hodnotu odhadu pridaním hodnoty odhadu úsilia v súčasnej fáze k už existujúcej hodnote.
- Pokračujte v krokoch 3 až 5, kým nie sú vyčerpané všetky fázy identifikované v prvom kroku.
- Konečnú približnú odhadovanú hodnotu prijmite ako konečnú.
Predpokladajme, že v požiadavke je 5 požadovaných fáz. Takže v počiatočnej fáze 1 predpokladáme, že celkové potrebné úsilie je 35 osobohodín, a potom začneme ďalšiu fázu 2, pre ktorú máme 4 komparatívne predpoklady 35, 45, 55 a 65, v uvedenom poradí.
Takže tu považujeme 65 osôbhodinu, čo je maximálna hodnota. Vo fáze 3, 4, 5 prichádzame s odhadmi (12, 33, 43, 54), (15, 10, 7, 8), respektíve (2, 16, 5, 13). Použitím uvedeného princípu skončíme s 185 pracovnými hodinami, resp.
Uvádzam informácie - Ako odhadnúť testovacie úsilie pri akejkoľvek testovacej úlohe, ktoré som sa dozvedel zo svojej skúsenosti.
9 všeobecných rád, ako presne odhadnúť čas na testovanie
Faktory ovplyvňujúce odhad testov softvéru a všeobecné tipy na presné odhadovanie:
# 1) Popremýšľajte o nejakom časovom limite
Odhad by mal obsahovať nejaký vankúš. Ale nepridávajte vyrovnávaciu pamäť, čo nie je realistické. Mať rezervu v odhade umožňuje vyrovnať sa s prípadnými oneskoreniami, ktoré sa môžu vyskytnúť. Pufr tiež pomáha zabezpečiť maximálne pokrytie testom.
# 2) Zvážte cyklus chýb
Odhad testu zahŕňa aj cyklus chýb. Skutočný testovací cyklus môže trvať viac dní, ako sa odhaduje. Aby sa tomu zabránilo, mali by sme vziať do úvahy skutočnosť, že testovací cyklus závisí od stability zostavy. Ak zostava nie je stabilná, potom vývojári môžu potrebovať viac času na opravu a testovací cyklus sa samozrejme automaticky predĺži.
# 3) Dostupnosť všetkých zdrojov pre odhadované obdobie
Odhad testu by mal brať do úvahy všetky listy plánované členmi tímu (zvyčajne dlhé listy) v najbližších niekoľkých týždňoch alebo nasledujúcich mesiacoch. To zabezpečí realistickosť odhadov.
Odhad by mal brať do úvahy určitý fixný počet zdrojov pre testovací cyklus. Ak sa počet zdrojov zníži, odhad by sa mal znova navštíviť a zodpovedajúcim spôsobom aktualizovať.
# 4) Môžeme urobiť paralelné testovanie?
Máte nejaké predchádzajúce verzie toho istého produktu, aby ste mohli porovnať výstup? Ak áno, potom vám to môže uľahčiť testovanie. Mali by ste premýšľať nad odhadom na základe verzie vášho produktu.
# 5) Odhady sa môžu pokaziť - odhady preto často navštívte v počiatočných fázach skôr, ako ich potvrdíte.
V počiatočných fázach by sme mali opakovane navštevovať odhady testov a v prípade potreby vykonať úpravy. Po zmrazení by sme odhad nemali rozširovať, pokiaľ nedôjde k veľkým zmenám v požiadavkách.
# 6) Myslite na svoje minulé skúsenosti a robte úsudky!
Pri príprave časových odhadov majú zásadné postavenie skúsenosti z minulých projektov. Môžeme sa pokúsiť vyhnúť sa všetkým ťažkostiam alebo problémom, s ktorými sa stretli minulé projekty. Môžeme analyzovať, aké boli predchádzajúce odhady a koľko pomohli dodať produkt včas.
# 7) Zvážte rozsah projektu
Zistite, aký je konečný cieľ projektu, a zoznam všetkých konečných výstupov. Faktory, ktoré treba brať do úvahy pri malých a veľkých projektoch, sa veľmi líšia.
Veľký projekt zvyčajne zahrnuje nastavenie testovacieho lôžka, generovanie testovacích údajov, testovacích skriptov atď. Odhady by preto mali vychádzať zo všetkých týchto faktorov. Zatiaľ čo v prípade malých projektov typicky testovací cyklus zahrnuje písanie, vykonávanie a regresiu testovacích prípadov.
# 8) Chystáte sa vykonať test zaťaženia?
Ak potrebujete venovať testovaniu výkonu značný čas, odhadnite ho podľa toho. Odhady pre projekty, ktoré zahŕňajú testovanie záťaže, by sa mali posudzovať odlišne.
# 9) Poznáte svoj tím?
Ak poznáte silné a slabé stránky jednotlivcov pracujúcich vo vašom tíme, potom môžete presnejšie odhadnúť úlohy spojené s testovaním. Pri odhadovaní treba brať do úvahy skutočnosť, že všetky zdroje nemusia priniesť rovnakú úroveň produktivity. Niektorí ľudia môžu v porovnaní s ostatnými vykonávať popravy rýchlejšie. Aj keď to nie je hlavný faktor, zvyšuje sa to celkové oneskorenie dodávok.
Záver
Odhad softvérového testu je postup, ktorý si vyžaduje zapojenie skúsených odborníkov, ako aj zavedenie najlepších postupov v celom odbore, ako napríklad bod testovacieho prípadu, a využíva metódy jednotlivých prípadov.
Je tiež dôležité prijať otvorenú myseľ na prispôsobenie požadovaných procesov. Úspešná implementácia týchto procesov vedie k celkovému zlepšeniu procesu testovania.
Toto je hosťujúci článok od autora „N. Sandhya Rani “.
Odporúčané čítanie
- Najlepšie služby na testovanie softvéru QA od spoločnosti SoftwareTestingHelp
- Sprievodca outsourcingom QA: Spoločnosti outsourcingu testovania softvéru
- Alfa testovanie a beta testovanie (kompletný sprievodca)
- Sprievodca dokonalým pokračovaním v testovaní softvéru (s ukážkou pokračovania v testeri softvéru)
- Úlohy na testovanie softvéru: Kompletný sprievodca úlohami pri testovaní kvality
- Techniky agilného odhadu: Skutočný odhad v agilnom projekte
- 68 základných zdrojov potrebných na to, aby ste boli úspešným testerom (nenechajte si ujsť!)
- Typy testovania softvéru: Rôzne typy testovania s podrobnosťami