Behövs testledare i en agil värld?

2012-04-16 Artikelbanken Test Läst 15433 gånger

I dagens läge när de agila metoderna inte längre är något nytt och obskyrt utan är en självklarhet för fler och fler företag är vi många testare som har börjat undra vad som händer med de traditionella karriärstegen.
De flesta av oss har sett Testledning som ett mål i vår karriär, men med de agila metodernas intåg har begreppen suddats ut. Enligt ex Scrum har vi alla ett gemensamt ansvar för kvaliteten, och rollen som de flesta av oss ska bemanna är teammedlemmens. Behövs verkligen vi testledare i den agila världen? Och om vi gör det – vad innebär det att vara testledare i ett agilt sammanhang?
I den här artikeln ska vi försöka ge vår syn på varför testledaren är minst lika viktig i agila arbetsgrupper som han eller hon var tidigare eftersom arbetsuppgifterna finns där oavsett vad vi kallar rollen.

I ett team är det ingen som leder testarbetet! Eller?

På vårt tänkta företag har vi bara ett scrum-team. Vi ska utveckla en produkt över flera sprintar och vårt team har en Produktägare, en Scrum Master och sen är det vi teammedlemmar. Vår Produktägare berättar vad produkten ska göra och vår Scrum Master ser till att vi i teamet följer det fastställda arbetssättet. I teamet väljer vi våra lappar från tavlan och gör det som vi har beslutat ska göras i sprinten. Redan här börjar vi tolka begreppet teammedlemmar och vår uppgift lite lösare än vad Scrum föreskriver. Några gör utvecklingsarbetet och någon gör testarbetet – vi är helt enkelt bättre på det ena eller det andra. Som testare läser vi vad det står på vår lapp och vi börjar verifiera att den tillagda funktionaliteten fungerar som det är tänkt. När det är klart flyttar vi lappen till nästa kolumn på tavlan. Och det har gått alldeles galant trots att vi inte hade någon testledare. Eller hade vi det utan att tänka på det?
Vad är det vi som testare har gjort? Har vi tagit en lapp slumpmässigt och testat det som står på den helt utan eftertanke? Sannolikt inte! Redan när vi beslutar om innehållet i sprinten har vi funderat över hur lång tid det kommer att ta att testa i den gällande sprinten, hur mycket tid våra regressionstester kommer att ta, hur testerna ska genomföras på det smartaste och mest effektiva sätt. Vi har gemensamt funderat ut i vilken ordning vi bör ta oss an lapparna på tavlan för att möta både utvecklarens och testarens behov. Vi som testare har kommit fram till vilken strategi vi kommer att använda för våra tester. Vi har rapporterat resultatet vid de dagliga scrum-mötena genom att flytta lapparna på vår tavla. Oavsett hur vi ser på saken så har vi testare tagit på oss arbetsuppgifterna som normalt tillfaller en testledare. Allra minst leder och planerar vi vårt eget arbete som testare.
Om vårt team arbetar över många på varandra sprintar kommer vi som testare förväntas skapa en teststrategi som hanterar den mängd regressionstest som uppstår och den framväxande produkten på ett effektivt sätt. Vi gör alltså alla de arbetsuppgifter som en testledare normalt sett gör när vi sitter i ett team.

Med ökad produktstorlek och komplexitet kommer parallella team

Om vi i vårt företag har flera parallella team som arbetar med samma produkt – hur ser det ut då? Vi klarar väl oss fortsatt bra utan en mer formell testledare så som vi gjorde när vi bara var ett scrum-team? Varje team har sina lappar och sin uppgift och har fullt ansvar för det! Men vem ansvarar då för hur allt sätts samman? Hur testar vi det? Vad testar varje team själv och vad testar vi gemensamt? Hur säkerställer vi att vi alla testar upp till samma nivå om vi inte har någon gemensam testledare?
En av testledarens viktigaste uppgifter i ett traditionellt utvecklingsprojekt är att planera testarbetet och sätta vilken teststrategi som kommer att gälla för allt testarbete. Om vi inte sätter teststrategin för vårt gemensamma arbete är det en hög sannolikhet att vi alla kommer att lägga tid på att skapa strategier för våra delar, och dessa strategier kan endera överlappa varandra så att flera gör samma sak eller förutsätta att ”någon annan” gör och därmed lämna testområden och testtyper otestade. Det blir helt enkelt ineffektivt att planeringsarbetet fördelas över alla teamen för det gemensamma arbetet, men det ökar dessutom risken för att vår produkt inte blir tillräckligt testad. Så vårt arbete tjänar på att någon har ett utpekat ansvar för att planera det gemensamma testarbetet och sätta den gemensamma teststrategin. Att ha en testledare hjälper oss därför att säkerställa produktens kvalitet genom att vi har ett strategiskt och välplanerat synsätt på testarbetet även när vi jobbar agilt! Denna testledare är inte placerad i ett enskilt team utan sitter utanför teamen för att kunna fokusera på det övergripande arbetet. 

Stöd i test-kommunikationen inom och utanför teamen

Som testledare är vi självklart en resurs för testarna i de enskilda teamen. Vi hjälper dem med att fundera på hur de ska testa sitt teams lappar, vi hjälper dem när motivationen tryter och det som normalt ligger inom testledarens roll. Testarna kan fortsatt behöva stöd av någon som förstår och tänker test precis som de själva. Men som testledare hjälper vi också till att driva det kontinuerliga förbättringsarbetet från ett testperspektiv som en helhet.
Vi behöver någon som kan bedöma vilka arbetssätt som har fungerat bättre inom ett team, från ett testperspektiv, än inom ett annat och som kan lyfta det till att bli en norm för alla team. Den som själv tillhör ett team har svårt att lyfta blicken och se varför någon annans arbetssätt är bättre än ens eget. Hur får vi då med oss något som funkade utmärkt i ett team till ett annat? Hur lär vi oss och hittar nya angreppssätt som kan ge oss än mer effektiva testtekniker? Jo, genom något retrospektiv-liknande med testarna från alla våra team och genom ”scrum-av-scrums” från ett testperspektiv, dvs ”test av tests”. Som testledare i en agil värld är det vårt ansvar att säkerställa att det sker. Scrum mastern skulle kunna göra det, men har ofta inte fack-kunskapen som krävs för att ta det här förbättringsarbetet till sitt ”nästa steg”.

Det finns även andra intressenter än testarna som vi som testledaren möter, ex beställaren, IT-chefen eller vem som sitter på pengarna i er organisation och som är beredd att ta investeringen för att påbörja automatisering av regressionstester, av det kontinuerliga byggandet etc. Inget enskilt team ansvarar sannolikt för detta, utan det är ett gemensamt initiativ och behöver hanteras som ett sådant. Men det kan också vara med slutanvändare för att planera och leda demos och användartester. Varje teams testare kan inte springa till samma personer och be om hjälp utan självklart behöver vi samordna det för att det ska vara effektivt. Återigen vill vi påstå att scrum mastern vanligen inte har den fack-kunskapen som behövs för att förklara behovet eller kunna analysera resultatet. I alla projekt är det alltid någon som behöver ta på sig denna roll, och varför skulle inte det vara en testledare?

Agila testledare? Självklart!

Redan idag så är det så att någon alltid tar på sig rollen som testledare även i agila sammanhang. Någon fördelar arbetet mellan vad som är teaminternt arbete och vad som är gemensamt testarbete. Någon rapporterar resultatet av testning. Någon lägger upp strategin för testarbetet och planerar i vilken ordning arbetet bör genomföras. Om vi då också kallar oss för det vi faktiskt är, det vill säga testledare, så blir det tydligare för alla. Vi har en självklar funktion att fylla oavsett vilken utvecklingsmetodik som används. Testledare, vi behövs!

Nästa steg

För att lära dig mer om agilt testarbete rekommenderar vi vår utbildning Agil test och för att lära dig mer om hur du agerar som testledare rekommenderar vi vår utbildning Testledning – testledarens fyra hörnpelare som naturliga nästa steg för dig.


Det finns även ett antal andra artiklar i Faktabanken runt agilt arbete som hjälper dig att hitta rätt, exempelvis:

KONTAKTA OSS

Har du frågor? Vill du ha hjälp med områden inom kravhantering och test?
Hör av dig till oss! Vi hjälper dig gärna. 

Kontakt 

Dela artikeln