Det finns flera aspekter på testning som gör att det kan vara intressant att någon annan än de som utvecklar programvaran skall testa densamma.
Framförallt så är de som deltar i arbetet med produkten, både utvecklare och testare, hemmablinda om de har deltagit i projektet länge. Att då köpa in tjänsten att kvalitetskontrollera produkten i slutskedet av projektet kan göra att det kommer in nya ögon som tittar på produkten på annat sätt.
Hur skall dessa tester köras? Oftast finns det testspecifikationer som i detalj preciserar hur det skall testas och dessa utgår från
kravspecifikationen. Här kan ni välja mellan att låta projektet skriva testfallen själv eller att låta dem ni outsourcar till även skriva
testspecifikationen med er som granskare. Oavsett så behövs det någon som har möjlighet att föra över kompetensen om hur programvaran förväntas fungera. Räkna inte med att ni bara kan ge dem antingen testspecifikationen alternativt kravspecifikationen beroende på vilken approach ni väljer ovan.
En viktig aspekt är hur ni väljer att betala dem. Här känns det som om det finns flera fallgropar. Ett företag och personerna som jobbar där har sina egna mål helt skilda från dina mål och ditt företag. Företaget vill tjäna pengar och den enskilde vill både tjäna pengar och jobba med sin karriär och detta variera förstås kraftigt från företag till företag och från person till person. Vi kan välja många sätt att kompensera dem för det arbete de gör. Dels kan vi betala ett fast pris per timme, alternativt ett fast pris per testomgång eller beroende på hur bra fel de hittar eller hur många de hittar. Återkom gärna med olika sätt, bra eller dåliga, som ni använt.
Jag har varit med om att man betalt per fel man hittat. Ledningen var väldigt nöjd med hur många fel dessa testare hade hittat till ett relativt bra pris. När vi analyserade dessa fel kom vi fram till att dels så visste vi redan om de flesta själv, de var duplikat på redan rapporterade fel, och dels skrev de flera felrapporter på ”samma” fel genom att på olika vägar i programmet trigga samma fel, t ex kan man starta en funktion både genom ett meny val eller ett kortkommando på tangentbordet, så förstår ni vad jag menar.
Så oavsett hur vi mäter deras resultat kommer de att anpassa sig och jobba effektivt hur deras synpunkt. Det gäller alltså att få dem att leverera bra buggar, sådana som ni inte redan hittat, till ett bra pris. I slutänden skulle ni vilja koppla det till hur ert resultat och er karriär påverkas av deras arbete vilket förstås inte är så lätt. Samtidigt vill ni inte att det skall ta kraft från er organisation. Då blir det svårt att mäta vinsten med att göra outsourcing när företagets egna resurser måste göra mer arbete. Fast å andra sidan så är det svårt att jämföra resultat och kostnader med ett scenario som inte finns, alltså scenariot att ni själva sköter testningen. Ni har varken kostnaderna eller kvalitetsdata att jämföra med. Det blir i slutändan endast magkäsnlan som avgör. Då är frågan hur man hittar en metod att betala dem på så att de arbetar på samma sätt som du själv hade gjort.
Mitt förslag är att man betalar per hittad bugg som av er inte bedöms som duplikat samt efter hur ni värderar vikten av en att viss bugg hittats. Dessutom skall de ha en testprojektledare som sköter testningen och ser till att kvaliteten på buggarna följer era uppsatta kriterier. Det som blir viktigt för er är förstås att ge dem bra betalat för de buggar som ni har nytta av och lite mindre för de som är korrekta men bedöms av er som mindre relevanta. De senare behöver ni inte åtgärda utan kan ligga kvar som hittade buggar i kommande sessioner för att undvika att de rapporteras igen.