Hoeveel punten kan mijn scrumteam opnemen?
Op een andere afdeling binnen ons bedrijf werden nieuwe scrumteams gestart. Aan mij en andere Scrum Masters werd gevraagd: “Hebben jullie een Excelletje voor mij waarin in kan uitrekenen hoeveel story points er maximaal uitgegeven mogen worden?”. Euh, zo eenvoudig werkt dat natuurlijk niet… Toch valt er wel iets te zeggen over hoe je kunt bepalen (berekenen) hoeveel story points een scrumteam ongeveer aankan. In deze blogpost lees je hoe wij dit met ons scrumteam doen.
Stabiliteit scrumteam en andere factoren
Er is geen rekenmodel of één antwoord dat altijd en voor ieder scrumteam klopt. Dat heeft te maken met verschillende factoren:
- Waarde story points: ieder scrumteam hanteert een eigen schaal! Bij de allereerste sprint bepalen zij zélf wat 1 story point waard is. De overige user stories worden daarvan afgeleid en zo ontstaat de schaalverdeling voor alle story points. Deze punten tussen teams vergelijken is dan ook als appels met peren.
- Samenstelling: niet ieder scrumteam bestaat uit evenveel personen.
- Bezetting: onder meer parttimers, vakanties, vrije dagen en werkzaamheden buiten het scrumteam hebben invloed op de bezetting.
- Volwassenheid: bij de eerste sprint is het lastiger inschatten wat een scrumteam aankan dan voor een ervaren scrumteam dat al tien sprints onderweg is.
- Stabiliteit: dezelfde samenstelling, bezetting en gelijkblijvende omstandigheden dragen bij aan de voorspelbaarheid van het team.
De teamsamenstelling verandert hopelijk niet al te vaak, de bezetting kan wel per sprint verschillen. Volwassenheid volgt na verloop van tijd vanzelf en de stabiliteit heeft met alle voorgaande onderdelen te maken.
Nieuwe scrumteams gaan experimenteren
Bij een nieuw scrumteam: wees gerust, bij de eerste sprint heb je geen idee van de waarde van story points. Dit komt vanzelf na een aantal sprints. Ga experimenteren: ga pokeren en plan gewoon in waarvan je denkt dat het team dit aankan. Na afloop van de sprint leer je of dit klopte of dat het team meer of minder story points kan opnemen. In sprint 2 neem je vervolgens meer of minder punten op en na afloop daarvan krijg je weer nieuwe inzichten. Het is niet erg dat dit in het begin niet exact klopt. Als het goed is, leert het team dit na verloop van tijd vanzelf en wordt het team steeds volwassener.
Story points niet uitdrukken in tijd
Let op: story points kan je niet uitdrukken in tijd! Een user story van 8 story points is niet automatisch vier keer zo veel werk als een user story van 2 punten. Bij het bepalen van de punten worden namelijk méér factoren meegewogen dan alleen de hoeveelheid werk. Lees meer daarover in mijn blog over Scrum Poker.
Bezetting in sprintdagen
Onze sprintplanningen beginnen we altijd met het bepalen van de bezetting. Er zijn namelijk altijd parttimers, vakanties, vrije dagen en (idealiter niet maar helaas onvermijdelijke) verplichtingen buiten het scrumteam. We kijken dus eerst naar de bezetting en die rekenen we in sprintdagen. Eén sprintdag staat gelijk aan één volledige werkdag dat één teamlid beschikbaar is voor de sprint. Het aantal sprintdagen van alle teamleden bij elkaar opgeteld is de totale bezetting voor de komende sprint.
1 sprintdag = 1 volledige werkdag dat 1 scrumteamlid aan de sprint kan besteden
Gemiddeld aantal punten per sprintdag
Die sprintdagen gebruiken we om te bepalen hoeveel story points we in de komende sprint opnemen. Als uit de vorige sprints blijkt, dat we bij 50 sprintdagen ongeveer 100 story points verbranden, is het niet logisch om met 40 sprintdagen ineens 120 story points op te nemen. We gaan daar als volgt mee om.
Na afloop van een sprint weet je hoeveel punten er zijn verbrand én hoeveel sprintdagen daar voor nodig waren. Hiermee kan je een gemiddeld aantal story points per sprintdag berekenen. Omdat alleen de laatste sprint toevallig net een hele goede of mindere sprint kan zijn, kan je beter het gemiddelde van de afgelopen drie of vijf sprints nemen. Als je dát gemiddelde vervolgens aanhoudt en het aantal sprintdagen voor de komende sprint hebt berekend, kan je uitrekenen hoeveel story points je ongeveer kunt opnemen.
Story points / Sprintdagen = gemiddeld aantal story points per sprintdag
Een rekenvoorbeeld met story points
Sprint | Aantal verbrande story points |
Aantal sprintdagen |
Gemiddeld aantal verbrande story points per sprintdag |
10 | 100 | 50 | 2,00 |
11 | 99 | 48 | 2,06 |
12 | 101 | 52 | 1,94 |
Na inventarisatie bij de sprintplanning blijkt dat in de nieuwe sprint de teambezetting 45 sprintdagen is. In de afgelopen drie sprint zijn er gemiddeld (2,00+2,06+1,94) / 3 = 2 story point per sprintdag verbrand. Voor sprint 13 kan het team daardoor ongeveer 45 x 2 = 90 story points opnemen.
Stabiliteit vergroot voorspelbaarheid
Hoe stabieler een scrumteam is, des te eenvoudiger het wordt om in te schatten wat de output van een team wordt. Het team heeft er baat bij om zoveel mogelijk in dezelfde samenstelling te zijn en onder gelijkblijvende omstandigheden te werken. Dit draagt bij aan de voorspelbaarheid van het scrumteam: over de daadwerkelijke output en vooraf (bij de sprintplanning) over wat er in de sprint kan worden opgenomen. Die stabiliteit en voorspelbaarheid zorgen voor een geoliede scrummachine.