slim
samen
werken

Wat is velocity in Agile werken?

De letterlijke vertaling van velocity is “snelheid”. Maar velocity in Agile werken betekent vooral de hoeveelheid werk die een team in een bepaalde periode af kan ronden, bijvoorbeeld per sprint of per maand. Als je als team een goed beeld hebt van de hoeveelheid werk die je elke maand kunt verzetten, helpt dat enorm om realistisch te plannen.

Wat betekent Velocity in Agile werken

Velocity in Agile werken om realistisch te plannen

Als je Agile werken vergelijkt met een traditionele watervalaanpak, komt vaak ook de Gantt chart aan bod. Het mooie van een Gantt chart is dat stakeholders houvast hebben: ze weten precies welk onderdeel van het project wanneer af is. Het grote nadeel? Die planning wordt vaak aangepast, omdat het werk toch lastiger blijkt te zijn dan vooraf gedacht.

In Agile is de velocity gebaseerd op wat je daadwerkelijk kunt doen. In plaats van te voorspellen hoeveel werk je gaat doen, kijk je terug in de tijd om te zien hoeveel werk je hebt gedaan. Dat past perfect bij het empirisme van Scrum: alleen dat wat geweest is, weet je zeker. En wat je zeker weet, kun je gebruiken als inschatting voor de komende tijd. Daardoor kun je, zelfs met een veranderende scope, op tijd signaleren of het haalbaar is om alles wat in de Product Backlog staat op te leveren binnen de gegeven tijd en het beschikbare budget.

Hoe bepaal je de hoeveelheid werk?

Een voorwaarde om met velocity en realistische voorspellingen te werken, is dat de grootte van al het werk in de Product Backlog is ingeschat, zelfs de grote brokken die je nog moet verfijnen. Agile teams gebruiken daarvoor vaak Story Points: een relatieve manier om werk in te schatten, in plaats van absolute eenheden zoals uren. De punten zijn gebaseerd op de reeks van Fibonacci. Items die relatief klein zijn, krijgen bijvoorbeeld 2 of 3 punten. Grotere items krijgen 21, 34 of zelfs meer dan 100 story points.

Wat “klein” is en wat “groot” is, verschilt van team tot team, en dat is prima. Elk team gebruikt zijn eigen relatieve verdeling van kleinere items en grotere items, hangt daar een getal aan, en creëert op die manier een verdeling van de hoeveelheid werk. Zo’n verdeling kun je maken met behulp van bijvoorbeeld planning poker of swimlane sizing.

Hoe bereken je velocity?

Meestal wordt met de velocity van een team, de gemiddelde velocity bedoeld: de hoeveelheid werk (in story points) die een team gemiddeld genomen in een bepaald tijdsbestek kan verzetten. Bij teams die Scrummen, verschilt de velocity van sprint tot sprint. Dat is heel logisch: afhankelijk van vrije dagen, je humeur, ziekte, en de complexiteit van het werk, kun je de ene keer meer en de andere keer minder afronden in dezelfde tijd.

De gemiddelde velocity bereken je daarom over een aantal afgeronde sprints. De hoeveelheid werk die je de afgelopen paar maanden kon verzetten, is een prima indicatie voor hoeveel werk je de komende tijd kunt afronden.

Stel: een team heeft drie sprints van twee weken voltooid. In de eerste sprint hebben ze in totaal 20 story points op ‘done’ gekregen, in de tweede sprint 29 en in de derde sprint 23. Dat is gemiddeld 24 storypoints per sprint van twee weken (20 + 29 + 23 = 72 en 72 / 3 = 24). Bij de eerstvolgende sprint planning is het dus verstandig om in totaal ±24 story points in te plannen: op basis van het verleden, is dat de meest realistische inschatting voor wat het team op dit moment kan opleveren.

Velocity bepaalt burndown chart

Met de gemiddelde velocity kun je ook inschatten hoeveel sprints je nog nodig hebt om al het werk uit de Backlog op te leveren. Als de items in een Product Backlog ingeschat zijn op, in totaal, 347 story points, heb je waarschijnlijk ongeveer 15 sprints nodig om al het werk af te ronden (347 / 24 = 14,5). Hoe verder je in het project zit, hoe realistischer deze voorspelling wordt, omdat de velocity betrouwbaarder wordt het en de items in de Product Backlog steeds verder zijn uitgewerkt.

Velocity gebruiken bij Kanban

Velocity is een manier om de doorvoersnelheid (throughput) van een Kanban team uit te drukken. Waar een Scrum team sprints gebruikt als periode om de gemiddelde velocity mee te berekenen, kun je als Kanban team elke willekeurige time-box gebruiken. Maar let op: maak de time-box die je gebruikt zeker niet te groot. Uiteindelijk wil je op basis van je velocity het werk voor de komende tijd kunnen plannen. En bij Agile werken probeer je die time-box zo kort mogelijk te houden.

De gemiddelde velocity helpt een Kanban team om tijdens een Replenishment meeting te bepalen hoeveel werk ze vanuit de Backlog naar de “to do” kolom kunnen halen. Hoewel het commitment op het werk in de “to do” kolom minder strikt is dan bij een Scrum team, is het wel prettig om de omvang van de kolom behapbaar te houden. Zo houd je een bruikbaar en prettig overzicht.

Velocity als prestatiefactor in Agile werken

Quizvraag: een Scrum Master begeleidt twee teams, die in alle opzichten vergelijkbaar zijn. Evenveel Developers, vergelijkbare skills en beide teams werken in tweewekelijkse sprints aan een vergelijkbaar product. Er is echter één duidelijk verschil: team A heeft een velocity van 48 punten per sprint, terwijl team B een velocity van 27 punten per sprint heeft. Welk team presteert beter?

A ) Team A, want meer punten betekent meer waarde

B ) Team B, want minder punten betekent minder complexiteit

C) Dat kun je niet zeggen op basis van de velocity

Het juiste antwoord is natuurlijk C. Omdat velocity staat voor snelheid en een hogere snelheid vaak als “beter” voelt, ben je al snel geneigd om te denken dat een team met een hogere velocity beter presteert. Maar het aantal punten dat een team toekent aan een item, is altijd subjectief. Waar het ene team een item 8 story points geeft, zou een ander team daar misschien 5 of 13 punten aan toekennen.

Het aantal punten heeft in zichzelf dus geen enkele betekenis. Het betekent alleen dat een bepaald item met veel punten door een team als “meer werk” wordt beschouwd dan items met minder punten. De gemiddelde velocity is daarom binnen een Agile team enorm waardevol, maar zegt niets in vergelijking met andere teams.

Wil je ook de met je team of organisatie de realiteit leren omarmen? Volg dan een van onze Agile & Scrum trainingen of neem eens contact met ons op om vrijblijvend kennis te maken met een van onze ervaren Agile coaches over een Agile transformatie binnen jouw organisatie. Je kunt ons bereiken via info@agilescrumgroup.nl of 020 2614 195.

Ook interessant:

Over de auteur: Dennis Dielissen

Dennis is Agile Coach en trainer. Hij heeft een passie voor producten en diensten waar mensen écht op zitten te wachten. Vanuit zijn expertise in innovatie management en praktijkervaring als Product Owner, helpt hij teams om op een Agile manier succesvolle oplossingen te ontwikkelen. Dit doet hij voornamelijk door focus aan te brengen in de werkzaamheden en rollen, waardoor kwaliteiten beter tot hun recht komen.

[class^="wpforms-"]
[class^="wpforms-"]