neljapäev, 19. juuni 2014

5 asja, mida hea testijuht teeb

Eelmisel nädalal kirjutasin, mis juhtub siis, kui testijuhi ülesandeid mitte keegi ei täida ja kuidas testimine siis "korrast ära läheb". Kokkuvõtlikult tagab testijuht testimisteemalise informatsiooni liikumise ja kättesaadavuse – informatsioon tööde kohta testimeeskonnale (kommunikatsioon sissepoole), informatsioon testitulemuste kohta ülejäänud projektimeeskonnale (kommunikatsioon väljapoole). Mida kasutajasõbralikumal viisil (näiteks koos maasikatega hõbekandikul), seda parem.

Mida tähendab antud juhul "kasutajasõbralik," on juba eraldi küsimus, kuid vihjeks nii palju, et programmeerija ootab testimisest eelkõige vigade taastekitamist võimaldavaid vigade raporteid, projektijuht testimise tähtaegset lõpetamist ja tellija kindlustunnet, et kõik vajalik on testitud ja töötab, või siis maandamata riskide loetelu.

Vaatame üle mõned tegevused, mida hea testijuht teeb.
  1. Testijuht vaatab üle projektiplaani, ajakava ja ulatuse ning vastavalt sellele planeerib testija(te) tööd, et testimiste plaan oleks realistlik ja piisavas mahus testijaid oleks töödesse kaasatud, ning olukorra muutudes (nt mõni arendus valmib hiljem) tõstatab vajaduse plaanide muutmiseks. Nii on võimalik õigel ajal kaasata lisatestijaid või muuta testimise lõpetamise tähtaega.
  2. Testijuht loob vigade halduses korra. Ta kommunikeerib ja rõhutab vigu ja probleeme, mis takistavad testimist ja seetõttu tuleks lahendada esmajärjekorras. Samuti aitab eristada väheolulisi probleeme ja välja selgitada workarounde, kui viga ei saa parandada. Sellega aitab testijuht fokuseerida nii testijate kui ka arendusmeeskonna tööd, hoides tähelepanu olulisel.
  3. Testijuht planeerib kordustestid. Üldteada on asjaolu, et pärast vigade parandamist tuleb teste korrata. „Väikeseks“ probleemiks selle juures on, et vigu ei tea me kunagi enne testimist ette, mistõttu ei saa me ka kordustesti plaani väga täpselt proaktiivselt koostada. Vigade ilmnemisel planeerib testijuht kordustestid ja regressioonitestid ning nende ulatuse, kuid pahatihti ka testimise katkestamise. See osutub vajalikuks juhul, kui ilmnevad vead või testkeskkonna puudujäägid, mille parandamise järgselt eelmised testitulemused enam väärtust ei oma (ehk testimise jätkamine on ajaraisk).
  4. Testijuht on alati valmis kommunikeerima (ja teeb seda ka perioodiliselt), kuidas testimise progress on, kui palju aega planeeritud testimisele veel kulub, kas plaane tuleb muuta, kui „hea“ on testitav tarkvara, missugused on suuremad vead ning mis hakkab juhtuma (äriliselt, kasutajate jaoks), kui üht või teist viga ei parandata. Kuna üldjuhul tunnevad testijad süsteemi kõige paremini (sest nad on testimise käigus saanud väga põhjaliku kasutajakogemuse), siis on testijuhile see informatsioon tihti kõige lähemal. 
  5. Hea testijuht on lõppkasutajast testija kõige suurem sõber, kes vajadusel õpetab, kuidas testijad mõtlevad ja vigu raporteerivad, nii et olulised kontrollid saaksid tehtud ja paadunud IT inimesed saaksid ka aru, miks kasutaja ütleb: „See ei tööta.“ Kuna kasutajatestijad leiavad tihti olulisi ärilisi vigu, siis on nende tagasiside liiga väärtuslik, et see tõlkes kaduma läheks. Oma võimaluste piires on testijuht ka lõppkasutajast testijate motiveerija, kuna need on mingis mõttes tema tiimi liikmed.
Nüüd mõtleb hea lugeja kindlasti, et alati ei ole ju otstarbekas ja võimalik eraldi testijuhti (või isegi mitut) palgata?! Lohutuseks võin öelda, et testijuhi rolli võib täita ükskõik kes projektimeeskonnast, aga..!! Pea-asi, et selle rolli täitjal oleks nende ülesannete jaoks piisavalt aega ja teadmisi! Väikestes projektimeeskondades on täiesti tavaline, et testijuhi ülesandeid täidab projektijuht, testija või analüütik. Suurema projekti juhul ei mängi see välja, kuna teiste rollide esindajatel ei ole nii palju aega, tahtmist ega ka testimisalaseid kogemusi, et testimine „korras hoida“. 

Spetsiaalse (dedicated) testijuhi puhul tuleb kasuks nn teine vaatepunkt, kuna testijuht kõrvalseisjana märkab tihti riske ja küsib küsimusi, mida teised rollid ei märka või peavad ekslikult enesestmõistetavaks. Nii on testijuht ka hea nõuandja projektijuhile (nt projektiplaanist ununes välja testkeskkondade ettevalmistamine) või analüütikule ("kasutajad kurtsid testimise ajal, et tegelikult nad sisestavad andmeid teises järjekorras märkmepaberi pealt, kuna kliendilt saadud andmed on ebatäpsed").

Häid ja paremaid nõuandeid kuuled ka augusti alguses toimuvas Lloyd Rodeni testijuhtimise meistriklassis.

Kutse koolitusele
Koolitus: ISTQB Certified Tester Advanced Level Test Manager (ISTQB CTAL TM) (inglise keeles)
Aeg ja koht: 14. -16. aprillil Tallinnas, Ehitajate tee 108 
NB! Koolitus on tavapäraselt 5 päeva, kuid me teame, kui raske on end töökohustustest nii pikaks ajaks vabaks võidelda. Seetõttu toimub auditoorne õppetöö ainult 3 päeva, sellele eelneb ja järgneb väike iseseisev e-õpe. Materjalid selleks saadame vähemalt nädala ette.
Hind: 1500€+KM, alates kahest osalejast ühest ettevõttest -10%

Registeerumine ja lisainfo: Maili Markvardt, maili [at] asaquality.ee
Koolitus toimub inglise keeles. Hinnas sisalduvad toitlustus ja vajalikud materjalid eksamiks valmistumiseks, kuid ei sisaldu sertifikaadieksami tasu. Kohtade arv on piiratud (10 osalejat), kuna tegemist on intensiivse ja personaalse koolitusega.

Koolituse eesmärk ja sihtrühm: koolitus aitab süvendada teadmisi testijuhtimisest, mistõttu on vajalik praktiline kokkupuude testimise ja/või testijuhtimisega. Koolitus annab vajalikud teadmised ja oskused ISTQB CTAL TM sertifikaadieksami sooritamiseks. Koolitus toimub ISTQB õppeprogrammi järgi, mida on võimalik vaadata siit: http://www.istqb.org/downloads/finish/46/96.html . Sertifikaadieksami sooritamine eeldab ISTQB CTFL (või samaväärse) sertifikaadi olemasolu, kuid koolitusel pole keelatud osaleda ilma seda omamata.

Koolitaja: Lloyd Roden (Inglismaa, http://lloydrodenconsultancy.com/)

Sertifikaadieksami sooritamise võimalus: Eksameid korraldab Eesti Testijate Liit (www.testijateliit.ee), eksami maksumus 250€ (KM ei sisaldu ega lisandu)

ISTQB Advanced Level Test Manageri koolitusele järgneb esmakordselt Eestis 2019. aastal ka ISTQB Advanced Level Test Automation Engineer koolitus (3 päeva).

Maili Markvardt
ASA Kvaliteediakadeemia

neljapäev, 12. juuni 2014

Miks käib testijuht ringi hõbedase kandikuga?

Testijuht hõbedase kandikuga
Iga edukas tegevus vajab teatavat juhtimist ja suunamist, ka tarkvara testimine pole siin mingiks erandiks.

Võin avaldada saladuse, et  isegi juhul, kui arendusprojektis keegi rinnasilti „Testijuht“ ei kanna, siis oma muude ülesannete kõrval keegi (alateadlikult) testijuhi ülesandeid täidab. Lühidalt öelduna on ju testijuht see, kes „hoiab testimise korras“.

Oletame, et meil on täiesti tavaline arendusprojekt:  selles osaleb analüütik ja kolm (või mitu) arendajat, ning kõike seda juhib projektijuht – nagu IT projektid ikka on. Kusagil „eemal“ on ka tellija esindaja – tegus ja tõsine töötegija, kes IT-st väga palju ei tea, aga on väga hea oma töö tegemises (ja tal on seda väga palju). Projektis on ka testija. Testijale annavad ülesandeid arendajad, suunates tema nimele töödehaldussüsteemis kirjeldatud ülesanded. Testija testib ning märgib ülesandeid ühekaupa „testitud, töötab“, või raporteerib vigu.

Pealtnäha tundub, et kõik on korras, aga mis juhtub, kui ...
  • Projekt algab -> kes ütleb, mida tuleb testida ja kui palju aega selleks kulub? Funktsionaalsus küll, aga jõudlus? Turvalisus?
  • Kõigi arendajate tööd saavad valmis üheaegselt -> testija muutub pudelikaelaks?
  • Vigu ilmneb palju -> kaob ülevaade, missugused tuleb parandada enne ja millistega on aega? 
  • Vigu parandatakse -> missuguseid teste tuleb korrata (regressiooniteste, kordusteste)?
  • Keset testimist küsib tellija esindaja (või projektijuht või mistahes juht): „Mis seis on?“
    • -> keegi ei oska hästi vastata, kas testimine (ja vigadeparanduste testimine) lõpeb tähtaegselt;
    • -> keegi ei oma üldpilti, kui palju on vigu ja missugused riskid on maandamata (mis juhtub, kui „kohe praegu live’i läheme“).
  • Lõppkasutajad osalevad testimises -> osutub, et see on vähese kasuteguriga – testide katvus on väike ja kontrollimatu (igaüks testib, mis meelde tuleb; kui tuleb), vigade raportid ei ole piisavad, et viga taastekitada (a’la „See ei tööta“)
Mida suurem ja keerukam projekt, seda tõenäolisem, et nimetatud probleemid tekivad. Kuidas testijuht neid probleeme lahendab, saad aimu juba järgmisel nädalal ilmuvast blogipostitusest. Täpsemalt võid kõike ise läbi harjutada aga augustikuus toimuvas Lloyd Rodeni testijuhtimise meistriklassis. 

Kutse koolitusele
Koolitus: ISTQB Certified Tester Advanced Level Test Manager (ISTQB CTAL TM)
Aeg ja koht: 4.- 8. august 2014 Tallinnas, Lõõtsa 8 II korrus.
Hind: 2500€+KM, alates kahest osalejast ühest ettevõttest -10%

Registeerumine ja lisainfo: Maili Markvardt, maili [at] asaquality.ee
Koolitus toimub inglise keeles. Hinnas sisaldub toitlustus ja vajalikud materjalid eksamiks valmistumiseks, kuid ei sisaldu sertifikaadieksami tasu. Kohtade arv on piiratud (10 osalejat), kuna tegemist on intensiivse ja personaalse koolitusega.

Koolituse eesmärk ja sihtrühm: koolitus aitab süvendada teadmisi testijuhtimisest, mistõttu on vajalik praktiline kokkupuude testimise ja/või testijuhtimisega. Koolitus annab vajalikud teadmised ja oskused ISTQB CTAL TM sertifikaadieksami sooritamiseks. Koolitus toimub ISTQB õppeprogrammi järgi, mida on võimalik vaadata siit: http://www.istqb.org/downloads/finish/46/96.html . Sertifikaadieksami sooritamine eeldab ISTQB CTFL (või samaväärse) sertifikaadi olemasolu, kuid koolitusel pole keelatud osaleda ilma seda omamata.

Koolitaja: Lloyd Roden (Inglismaa, http://lloydrodenconsultancy.com/)

Sertifikaadieksami sooritamise võimalus: 11. augustil, hind 250€+KM. Edaspidi korraldab eksameid Eesti Testijate Liit (www.testijateliit.ee).

ISTQB Advanced Level Test Manageri koolitusele järgnevad 2015. aastal ka ISTQB Advanced Level Test Analyst (4 päeva) ja Technical Test Analyst (3 päeva) koolitused, samuti ISTQB Foundation  Level Certified Tester Agile Tester Add-on koolitus. 

Maili Markvardt
ASA Kvaliteediakadeemia