Definition of Done: How to Test

View Comments

0 message
Please Comment 20 nov. 2009
Först en mycket kort historisk återblick för att förstå vad Definition of Done (DoD) handlar om. I jordbrukssamhället var det ofta uppenbart när ett arbetet var slutfört. När åkern var plöjd var man klar och kunde ta itu med nästa uppgift eller med gott samvete gå hem för dagen.

Så fungerar det inte i informationssamhället. Allt kunskapsarbete lider av att det aldrig tycks ta slut, det kan alltid göras lite bättre och det är svårt att veta när det egentligen är "klart". Blir det överhuvud taget nånsin klart?

Därför är Definition of Done en helt avgörande del i Scrum och andra agila projektmetoder. För att styra projektet framåt behöver man definiera när respektive uppgift, sprint eller projekt är klart. Definition of Done är helt enkelt en checklista över vad som ska vara klart. Jag har bland annat använt den här varianten:

Definition of Done (exempel från offentlig sektor)
  • Kod testad
  • Användningstestat
  • Fel åtgärdade
  • Utvärderat så att kraven för tillgänglighet för människor med funktionsnedsättning uppnås (Verva nivå 1)
  • Koden validerad enligt W3C
  • Modul-dokumentation upprättad/uppdaterad
Men hur man upprättar en Definition of Done är inte självklart och i praktiken kommer den säkert att förändras under projektets gång. Två utmaningar jag tycker återkommer är att:
  • man måste få samsyn på vad Definition of Done innebär och förståelse för varje punkt. Det räcker inte att man förstår "sin del" eftersom de nästan alltid hänger ihop.
  • det är ofta i avgränsningen av uppgifter, funktioner, sprintar eller delmål som komplikationerna uppstår. Checklistan ovan är ganska meningslös om man inte vet ifall "Gör det möjligt att skicka nyhetsbrev" även inkluderar "Nyhetsbreven ska kunna innehålla bilder".
Bättre Definition of Done med How-to-test och förändring på scrum-väggen
I nästa projekt kommer jag att prova två åtgärder för att bättre hantera dessa svårigheter.
  • Arbeta med konceptet "How-to-Test" som alternativ eller komplement till Definition of Done. Genom att fokusera mer på hur något ska testas uppnår man flera saker: det är ett mer visuellt sätt att beskriv vad som ska åstadkommas, det är något som alla medlemmar i gruppen har lättare att ta till sig och det för arbetet mycket närmre den affärsnytta som projektet ska skapa.
  • Se till att alla steg i Definition of Done också har en motsvarighet på scrumväggen. Den traditionella indelningen av en scrumvägg är Ej påbörjat, Pågående, Avslutat. Till detta kanske man ska lägga till exempel Klart för test och utvärdering och Testat och utvärderat?
Spara / dela:
blog comments powered by Disqus
Beerware! All text
får återanvändas. Läs här.
vd-blogg.se