Vi kör Scrum för våra projekt på Tretti. Vi har gjort det i lite över ett år nu och har lärt oss en del om vad som fungerar och inte fungerar. Jag tänkte ta denna post att reflektera och förhoppningsvis inspirera lite om hur man kan jobba agilt inom e-handel.
För dig som inte är insatt i de agila arbetsmetoderna så innebär de kort att man sätter upp en projektmetodik som stödjer en snabbrörlig affär där kraven på vad som är viktigt kan ändras av interna eller externa faktorer. Agil betyder just lättrörlig. Det innebär inte att det är lätt att kasta in saker från sidan kors och tvärs. Tvärtom kräver det en organisation som är extremt medveten om sina prioriteringar och vad som skapar affärsnytta varje vecka.
Med Scrum jobbar man vanligtvis i iterationer om några veckor. Vi har valt två veckor. Sprinten börjar med en planeringssession där hela IT-teamet får presenterat för sig vilka projekt/problem (s.k. User story) som behöver lösas. Där uppskattar vi hur lång tid det tar att lösa detta. Hur man ska uppskatta har vi testat i omgångar. Nu är vi inne på halvdagar som minsta möjliga uppskattning. Efter den grova uppskattningen prioriterar vi projekten och ser hur många som får plats i denna två veckor långa iteration. Sen bryter vi ner varje problem i olika tasks. Detta gör vi för att det ska bli lätt att följa hur stor andel av problemet som är kvar dag för dag.
Sen startar vi med utvecklingen. Varje dag kl 9.00 börjar vi med en kort stående möte intill en vägg där vi satt upp alla user stories och tasks. Varje medlem i teamet rapporterar till resten av teamet tre frågor:
- Vad gjorde jag igår?
- Vad gör jag idag?
- Är det något som blockerar/distraherar mig från det jag ska göra?
Väggen med tasks har fyra kolumner som representerar olika statusar som en task kan ha; todo, in progress, test/merge request, done. Vi kanske kommer att ändra vilka statusar vi har, men just nu är de dessa. Varje teammedlem flyttar en lapp med en task på till den kolumn som den hör hemma. Alla utvecklare har en eller två lappar i “in progress” hela tiden. Efter varje möte visualiserar vi mängden jobb som är kvar i sprinten med en burndown chart, en graf som förhoppningsvis slutar på noll när sprinten är klar.
Under utvecklingen lanserar vi kod till staging-miljö för test och sen i produktion. Detta gör vi ett par gånger per dag med hjälp av s.k. continuous integration där hela lanseringsflödet är scriptat. Jag kan återkomma till det i en annan post, för det fungerar riktigt bra.
När sprinten är slut har vi en sprint demo där vi går igenom olika saker som vi byggt. Ibland missar vi detta, men vi ska bli bättre på det. Det är viktigt att fira sina segrar.
Lite av utmaningarna med jobba på Tretti är att väga utvecklingen av ny sajt med de vanliga småprojekt som kommer upp. Det kan vara konverteringsoptimeringar, interna verktyg som ska uppdateras eller nya payment integrationer. De projekt som tenderar att dra iväg är de där vi är beroende av en part utanför Tretti, exempelvis en integration. De projekten flaggar jag med hög risk för försening redan innan de startat.
Agilt till nästa nivå för oss
För ett par veckor sen fick vi tillskott av Marcus och Hannes som exjobbare från KTH. De fördjupar sig inom agila utvecklingsprocesser och hur man hittar en process för att hela tiden bli bättre på det vi gör. Vi skriver redan bättre user stories och har en mer disciplinerad burn down. Nästa steg är att involvera hela organisationen i samma tänk.
Igår hade vi även en kort presentation av utvecklingschefen på Qliro, Björn Wahlberg som har en bakgrund inom utveckling och som agil coach. Han gick igenom deras process för att skapa så mycket värde som möjligt i utvecklingsprojekt genom att jobba med både kravställning och hur man bryter ned utvecklingsprojekt i små delar som ändå skapar värden i sig.
Agile inom e-handel skiljer sig inte nämnvärt från något annat teknikbolag. En viktig skillnad är dock hur många system som IT på Tretti hanterar. Vi bygger inte bara en app eller en sajt utan även vidareutvecklar lageroptimering, fakturahantering m.m. Vi håller ihop hela maskinen och ser till att alla kan göra sina jobb på ett optimalt sätt.
Jag tar gärna frågor kring detta då jag vet att det är ett ämne som berör många.
###
Denna post är nummer 47 i en serie av 100 poster i utmaningen #blogg100 där jag fokuserar på hur vi skapar Trettis nya sajt. Alla åsikter är mina egna.