onsdag 25 juli 2012

JAM & ACT

Den här blogposten handlar om min JAM/ACT-metod  för systemtester i agila utvecklingsteam. MÃ¥let med JAM/ACT är att kunna utföra old-school systemtester men samtidig stödja proaktiv agilt testning. Denna dualitet representeras av tvÃ¥ kompletterande testnivÃ¥er, ”Joint Agile Mode” (JAM) och ”Agile Contol Test” (ACT), som utförs i varje utvecklingscykel. Resultatet är en agil testmetod men med kontrollen hos traditionella systemtester.
Det här är hur JAM och ACT kopplas till utvecklingscykeln. Enskilda utvecklingsaktiviteter verifieras i frekventa releaser under JAM. ACT sker under en kort kodfrys i slutet. Det är viktigt med återkoppling mellan utvecklare och testare under hela processen.
Joint Agile Mode genomförs parallellt med utveckling. JAM startar så snart som det finns färdiga utvecklingsaktiviteter att verifiera (i den agila världen är något ofta klart redan under den första utvecklingsdagen). JAM slutar när alla planerade utvecklingsaktiviteter är klara, har testats och en potentiell releasekandidat är färdig.

Det övergripande målet med JAM är att starta testandet tidigt och att arbeta tillsammans med utvecklarna med att öka systemkvalité redan tidigt under utveckling. En sidoeffekt är att testarna får gott om tid att bekanta sig med systemlösningen, testmiljöerna, -data, -verktyg. Fokus är att testa isolerade utvecklingsaktiviteter så snart som de har färdigställt av utvecklarna. Ofta tar det tid innan tillräckligt med funktionalitet har levererats för att uppfylla ett komplett testfall. Men när testfallet väl kan köras finns det stora chanser att det går vägen om alla ingående utvecklingsaktivteter har testats tidigare.


Tester under JAM är typiskt utforskande med lite dokumentation. Felaktigheter kommuniceras direkt till utvecklarna istället för via komplicerade ärendehanteringssystem. Systemlösningen är ju under utveckling och därför kan man tillåta sig att vara informell.


En annan egenskap hos JAM är hur testerna kan experimentera med systemlösningen. Det finns tid för kreativitet och att lära sig om systemet. Låt testare och utvecklare diskutera implementation tillsammans. Det ger värdefulla insikter om varandras arbeten, potentiella svagheter och enar teamet.


När det inte finns utvecklingsaktiviteter att testa så kan testarna arbeta med testfall, testautomatisering, förbättringar i testmiljöerna, -data, -verktyg inför ACT-nivån.


Agile Contol Test är ett kondenserat och mycket effektivt systemtest. Det övergripande målet är genomgående test av en potentiell releasekandidat och informera om systemlösningens kvalité. ACT påminner mycket om ett vanligt systemtest men det skiljer i den korta genomförandetiden. ACT görs i slutet av utveckingscykeln alldeles innan leverans. Utvecklingsteamet behöver så många dagar som möjligt för att implementera funktioner. Därför är det inte mycket tid kvar för ostörda systemtester. ACT påbörjas när det finns en potentiell releasekandidat. Teamet signalerar kodfrys då alla funktioner är utvecklade och inga förändringar, förutom buggrättningar, får förekomma. Eftersom alla utvecklingsaktiviteter har testats under JAM så kan vi förvänta oss att systemet är i hyfsat bra skick.


ACT är mer formellt än JAM. Tester görs utifrÃ¥n förberedda testfall och krav. Testfallen kan vara väldigt enkla och i formen av checklistor för testtäckning. Fel rapporteras mer formellt än under JAM och pÃ¥ en form som underlättare för utvecklare att fokusera pÃ¥ rättningar och för testarna pÃ¥ uppföljning och rapportering. Testrapportering görs i en enkel rapport eller muntligen pÃ¥ sprintdemo eller ”go/no go”-möte. 


Med den korta tiden tillänglig för ACT är det viktigt att ha gjort alla förberedelser. Testmiljö, -data, -verktyg ska finnas redo. Testarna ska veta hur alla funktioner ska testas. Processer för fel- och releasehantering ska finnas på plats. Under ACT är testerna mycket tajtare och prestigefulla än under JAM. Från testarnas synvinkel är det här man ska arbeta på toppen av sin förmåga. Alla vet att det snart är uppenbart om det blir succé eller fiasko. Eftersom ACT är ganska kort så kan alla (testare, utvecklare, kravställare och projektledare) fokusera på systemkvalité.
 
Jam, JAM, jam, Jam, JAM, JAM, jam, jam, jam, jAm, JAM, jaM, jam, jam, jam…
ACT!!!
  • Start testing early and get experienced about the system
  • Testing of isolated development activities
  • Exploratory testing
  • Write test stories and work on test automation, test environments/-tools/-data
  • Experimental, teaching, informal, improves quality, forgiving, unites the team, funny
  • Goals is to test the software thoroughly to evaluate quality
  • Run prepared tests stories and report errors
  • Competitive, prestigious, perfection, tight, “on top of our feet – eyes are on you”

Inga kommentarer:

Skicka en kommentar