Spikes
För varje iteration har varje utvecklare fyra timmars hemarbete. Denna tid kan användas för olika typer av aktiviteter som behöver göras utanför långlabbar och planeringsmötena. Exempel är:
- Repetera litteraturen för veckans focus practices
- Läs igenom nya stories inför planeringsmötet
- Spikes (experimentlösningar) inom olika områden, t.ex. hur man använder ett visst Java-bibliotek, hur man kan göra en release, hur man gör merge i versionshanteraren, etc.
- Förbereda redovisning
- Review av dokumentation, färdig produkt, kod, arkitektur
- Studier av relevant information
Av historiska skäl kallar vi ofta hemarbetstiden för "spike-tid", eftersom den först infördes för att utföra spikes av olika slag.
På hemarbetstiden får man göra i stort sett allt som är av gagn för teamet och produktutvecklingen. Undantaget är implementation av stories som inte får göras på hemarbetstid, utan skall göras på långlabbarna när alla i teamet är närvarande. Huvuddelen av refaktoriseringar och implementation av testfall skall också göras på långlabbarna, men det är ok att göra en del av detta som hemarbete. Speciellt om man behöver göra en genomgripande refaktorisering, så kan det vara bra att göra den på hemarbetstiden för att undvika svåra mergekonflikter.
Teamet bestämmer tillsammans (under coachens ledning) vad man skall använda hemarbetstiden till och vem som skall göra vad för att på bästa sätt gagna teamet och produktutvecklingen. Dock ingår alltid de två punkterna med att repetera focus practices och läsa igenom nya stories. Tiden skall alltid utnyttjas helt: har man "ingenting att göra" kan man alltid göra någon form av review av produkten/koden.
Teamet skall också komma överens om ett organiserat sätt att dokumentera sitt hemarbete, så att resultaten lätt kommer alla i teamet tillgodo, och så att det är lätt att verifiera att alla gjort sin andel.