Tesztelési erőforrások becslése
A tesztelési folyamatban több szinten is becsülhetünk, de mindegyiknél vannak betartandó szabályok, ajánlások. A számomra legfontosabbakat összegyűjtöttem, hogy a becslésünk ne csak hasra ütés szerűen történjen, hanem legyen benne valamilyen összefogottság. Ezek alapján mindenki összeállíthatja a saját „becsléselőkészítő“ listáját.
Egy nagyon pontos becslés sokat segíthet a tesztelői csapatnak. Először is a becslés miatt elejétől a végéig át kell gondolnunk a projektet, így kevés olyan rész maradhat ki, ami a későbbiekben plusz munkát eredményezne. (Legalábbis a saját hibánkból nem kerülünk kutyaszorítóba.) Másodszor a vezetőség szempontjából jó megítélés alá kerül a csapat, mivel jól átgondolva, megbízhatóan, pontosan végzi a munkáját. A vezetőség a becsült értékekkel hatékonyan tud számolni, könnyebben tudja a projekteket összeszervezni, és gördülékenyebbé tudja tenni a projektek közti váltásokat.
Ha körültekintően becsültünk, akkor ritkán fogy el az erőforrás, így kevésbé kerül a tesztelés olyan szorult helyzetbe, ahol az erőforrásokért folytatott küzdelem időt vesz el a tényleges munkavégzéstől. Mint mindenki mással, természetesen velem is előfordult, hogy rosszul becsültem meg egy feladatot.
De az évek során tapasztaltam pár dolgot, másrészt egy-egy melléfogás után mindig fejleszteni próbálom ezt a képességem.
A tesztelési idő, erőforrás becslése több szinten is problémás lehet. Akár a projektmenedzseri, akár a tesztmenedzseri, akár a tesztelői szinteket nézzük, elég sok fejfájást okozhat az embernek, ha becsülnie kell.
A több órás gondolkodás után hirtelen elfogy az ember türelme és sokszor vagy az addig kalkulált számot, vagy annak a dupláját veszi, és részéről le van tudva a feladat.
Hogy a lehető legszilárdabb alapokon nyugodjon a becslésünk, nézzük meg, milyen praktikákat alkalmazhatunk.
- Gondoljunk vissza a lezárt projektekre!
- Gondoljuk át, hogyan működik a szervezetünk. A sajátosságokat mindenképpen tartsuk szem előtt.
- Írjuk össze a feladatokat és becsüljük meg egyesével őket.
- Használjuk a csapatot! Becsültessük meg az emberekkel a kisebb részeket és összegezzük ezeket.
- Figyeljünk a projekt nagyságára, határaira! Mekkora a rendszer mérete?
- Milyen teszttípusokat fogunk futtatni? Mit vár a Megrendelő/Ügyfél/Főnök tőlünk?
- Minden információnk megvan a teszteléshez? A hiányos információk plusz erőforrást igényelhetnek! (Ellenőrizzük a dokumentáció minőségét.)
- Meg kell terveznünk a teszteseteket, vagy csak futtatnunk kell? A tesztkörnyezetek és tesztadatok a rendelkezésünkre állnak? Milyen feladataink lesznek velük? (Tesztkörnyezet menedzsment, tesztadatok előállítása, stb.)
- Megvan minden informatikai tudásunk a feladat elvégzéséhez? Technikailag a csapat el tudja látni a feladatot?
- Az üzleti tudás nálunk van, vagy segítségre szorulunk? Mennyi időt vesz el a betanítás? Mennyire leszünk hatékonyak az első időkben?
- Mennyi tesztesettel kell dolgoznunk? Mennyit kell elkészítenünk, átnéznünk, ellenőriznünk, lefuttatnunk?
- Gondoljunk a plusz tesztkörökre!
- Tudunk valamit párhuzamosan tesztelni?
- Milyen teszteszközökkel fogunk dolgozni? Mennyire fogja segíteni munkánkat?
- Milyen új dolgokkal kell együtt élni a feladatvégzés alatt? (új tesztrendszer, új csapattagok, új adatbázis, új szoftverek, …) Ezek mennyire fognak minket hátráltatni?
- Az egyéb aktivitásnak is erőforrás igénye van! (riport generálás, logok generálása, menedzsment felé jelentés, teszteszköz beállítása, megbeszélések, egyéb elfoglaltságok)
- Mi van, ha valaki nem fogható harcra a tesztelési idő alatt, mert más feladatot kell végeznie?
- Mi van, ha rossz felé megyünk? Állítsunk fel mérföldköveket, és becsüljük újra a tesztelési időt minden egyes pontnál.
- Adjunk magunknak egy kis puffer időt.
Ha mindezeket szem előtt tartjuk, nagy esélyünk van a lehető legjobb becslés elkészítésére. A becslés valószínűleg nem lesz 100%-ban pontos, de ez nem is baj.
Azt vallom, hogy a tényleges erőforrástól egy maximum 10%-os eltérés nagyon jó becslésnek számít. A 10-20%-os eltérést vehetjük tartható és elfogadható számításnak, míg ettől nagyobb differenciánál javaslom, kicsit fejlesszük ezt a képességünket.
Egy kisebb projektnél (1-2 hónap, átlagos tesztelési feladatok) ilyen alaposan átgondolva az erőforrás-igényeket, gyakorlatilag tökéletes becslést tudunk végezni. Minél nagyobb projektről beszélünk akár időben, akár feladatban, egyre nehezebb lesz megbecsülni vagy a közelébe kerülni a tényleges számoknak.
Ha nagyobb tesztcsapattal dolgozunk, akkor mindig vegyük figyelembe, hogy nem csak egy projektből áll az életünk. Sokszor kell a projektek között tesztelőket mozgatni. Próbáljuk meg úgy elvégezni a becslést, hogy előre meghatározzuk a tesztelői csapat keretét, mégpedig úgy, hogy később a többi projekt indulásánál ne legyünk gondban.
Ne csak egy projektre koncentráljunk, hanem előre tekintve az időben a feladatok egészét nézzük.
Természetesen minden cégnek, projektnek, csapatnak vannak sajátosságai, amiket szem előtt kell tartani. Az ezektől eltérő dolgokra nem lehet mindig tökéletesen felkészülni. A váratlan események is zavart okozhatnak, amikor egy-egy tesztelő kidől a sorból egy influenzajárvány vagy egy laza bokaficam miatt.
Ezekre az előre nem tervezhető nehézségekre nem fogunk tudni teljes körűen felkészülni. Csökkenteni tudjuk a felmerült problémák hatását, de ezekre bebiztosítani magunkat gyakorlatilag lehetetlenség. Az, hogy hogyan kezeljük a kialakult problémás helyzeteket, pedig már egy másik cikk része.
Szerző: Pongrácz János
A szerző
- 1999–ben szereztem diplomát, 2003-ig programozóként dolgoz- tam a BME Informatikai Központjában. Később az Avon Cosmetics Hungary tesztelési csapatában végeztem funkcio- nális és integrációs teszteket. 2006-tól tesztvezető- ként, tesztkoordinátorként dolgozom számos nagyvállalati projekten. Főbb feladataim elsősorban az eszközkiválasztás, módszertan kidolgozás és tesztcsapat kialakítása. A Passed Informatikai Kft-ben szakmai tanácsadóként, szoftvertesztelési vezetőként segítem az Ügyfeleinknél dolgozó munkatársainkat.