Storypoints versus #NoEstimates: ons oordeel
Geen van beide kampen wint zonder meer. Maak schattingen om tot een gezamenlijk begrip te komen en meningsverschillen te signaleren; maak geen schattingen om een datum te voorspellen, maar maak in plaats daarvan prognoses op basis van de doorvoer. We bekijken de argumenten van de voorstanders van story points, #NoEstimates en de bedenker die zich van story points heeft afgekeerd, en komen vervolgens tot een besluit.
Geen van beide partijen wint onomstotelijk. Maak een schatting om tot een gezamenlijk begrip te komen en meningsverschillen aan het licht te brengen; maak geen schatting om een datum te voorspellen, maar maak op basis van de doorvoer een prognose. Het cijfer zelf is vrijwel waardeloos. Het gesprek dat ertoe heeft geleid, is de echte meerwaarde.
Het debat wordt voorgesteld als een zwart-witkwestie – punten of geen punten – terwijl dat niet het geval is. Beide kampen hebben op een bepaald punt gelijk, en beide worden gesteund door een gezaghebbende autoriteit. Het nuttigste standpunt is datgene waarin de sterkste argumenten van beide partijen worden bekeken en waarin alleen die onderdelen worden behouden die de toets van de sprint doorstaan.
De voordelen van story points
Het betoog van Mike Cohn, het toonaangevende standpunt van de voorstanders, ging nooit echt over het getal zelf. Het gaat erom dat het proces van het maken van relatieve schattingen een team dwingt om de complexiteit te bespreken, verborgen aannames aan het licht te brengen en overeenstemming te bereiken over wat een story daadwerkelijk inhoudt, voordat iemand code gaat schrijven. Punten omzeilen bovendien een specifiek probleem: als u in dagen inschat, wordt er over elk getal onderhandeld; als u in een abstracte eenheid inschat, heeft het gekibbel geen houvast. Het addertje onder het gras is dat iedereen de knipoog opvangt („we schatten geen tijd in, alleen complexiteit, zodat we de sprint kunnen plannen, die twee weken duurt“), en de abstractie beschermt het team slechts zolang niemand deze direct weer omzet in een datum.
Steve McConnell vormt het rigoureuze tegenwicht voor de tegenstanders van het maken van schattingen. Zijn stelling is dat de hoofdoorzaak van slechte schattingen doorgaans een gebrek aan vaardigheid op het gebied van schatten is, en niet het schatten zelf, en dat serieuze schatters drie zaken onderscheiden die in het debat steeds door elkaar worden gehaald: de schatting (wat waarschijnlijk is), de doelstelling (wat het bedrijf wil) en de toezegging (wat het team belooft). Als u deze zaken door elkaar haalt, lijkt het schatten natuurlijk niet te werken. Houdt u ze echter apart, dan levert het daadwerkelijk resultaat op.
De argumenten voor #NoEstimates
Nu de andere kant, in volle kracht. Het bezwaar van Allen Holub is dat schattingen altijd onnauwkeurig zijn, meestal zelfs enorm, en dat story points bedoeld waren om de duur te verdoezelen, zodat managers zouden stoppen met druk uit te oefenen op de tijd; toch rekenen teams ze direct weer om naar uren, waardoor ze precies die disfunctionele situaties opnieuw creëren die met de invoering van story points juist moesten worden voorkomen. De Fibonacci-schaal biedt geen uitkomst als iedereen stiekem een omrekeningstabel van punten naar uren bij de hand heeft.
De meest treffende opmerking met betrekking tot gegevens is afkomstig van Vasco Duarte: bij echte projecten levert het simpelweg tellen van stories ongeveer even goede voorspellingen op als het optellen van hun storypunten. Als dat ook voor uw werk geldt, zijn de punten louter een formaliteit. U hebt rekenwerk verricht om tot hetzelfde antwoord te komen dat het tellen u al had gegeven. Meet in plaats daarvan de doorvoer en de cyclustijd; een groeiende wachtrij is een voorlopende indicator die u van tevoren kunt zien aankomen, terwijl de velocity een achterblijvende indicator is.
En toen kwam de scherpste opmerking van het hele debat. Ron Jeffries, die algemeen wordt gezien als de uitvinder van story points, nam daar in 2019 afstand van: „Ik heb story points misschien wel uitgevonden, en als dat zo is, spijt het me nu.” Zijn bezwaar betreft met name het gebruik ervan om te voorspellen wanneer het werk voltooid zal zijn en om teams met elkaar te vergelijken. Zijn alternatief is niet „stop met plannen”. Het is het opdelen van stories in stukken die zo klein zijn dat er slechts één acceptatietest voor nodig is, idealiter minder dan een dag per stuk, zodat er nauwelijks nog iets overblijft om in te schatten.
In welke gevallen wij van gedachten zouden veranderen
Wij zouden volledig voor #NoEstimates kiezen voor een team waarvan het werk al in kleine, uniforme delen is opgedeeld. Zodra elk verhaal ongeveer een dag in beslag neemt, het tellen van verhalen zowel de prognoses als de puntentotalen omvat, en de schattingsvergadering een overbodige last is, kunt u deze schrappen. McConnell geeft dit toe en noemt werk met snelle cycli, waarbij de missie simpelweg „het volgende meest nuttige doen“ is, als een context waarin schattingen weinig toevoegen.
In het tegenovergestelde geval zouden wij onze waakzaamheid ten aanzien van punten wat verlagen: een organisatie waar schattingen werkelijk nooit uitgroeien tot vaste toezeggingen en waar niemand teams met elkaar vergelijkt. Daar bestaat het gevaar waarvoor het anti-schattingskamp waarschuwt niet, en zijn punten slechts een onschadelijke aanleiding voor een gesprek. Het probleem is dat een dergelijke organisatie zeldzaam is. Het misbruik ervan is de norm, en dat is de reden waarom ons oordeel in deze richting neigt.
De praktische kant
- Beschouw planning poker als een middel om meningsverschillen aan het licht te brengen, niet als een voorspellingsinstrument. Een 2 en een 13 voor hetzelfde verhaal vormen het signaal. Dit betekent dat het team geen gemeenschappelijk begrip heeft van het werk. Blijf overleggen totdat het verschil in scores verdwijnt; overeenstemming is het eindresultaat, niet het uiteindelijke getal.
- Maak prognoses op basis van doorvoer en cyclustijd, niet op basis van het totaal aantal punten. Velocity dient als input voor de planning van het team, maar vormt nooit een toezegging naar buiten toe.
- Maak een onderscheid tussen een schatting en een toezegging, zoals Cohn zegt. Een schatting is een gok; op het moment dat het een belofte wordt, heeft iemand de betekenis ervan gewijzigd zonder het team hiervan op de hoogte te stellen.
- Als u punten gebruikt, houd ze dan relatief. Zodra u ze aan uren koppelt, bent u in feite de duur aan het schatten, met alle druk die bij urenschattingen hoort, plus een extra laag van onduidelijkheid.
- Verdeel het verhaal in stukken in plaats van het te kwantificeren. Jeffries heeft gelijk dat het grootste deel van de waarde waarover in het debat wordt gestreden, verdwijnt wanneer verhalen zo klein zijn dat de schatting nauwelijks nog van belang is.
Het getal is waardeloos; het gaat om het gesprek dat eraan ten grondslag ligt. Die ene zin lost het grootste deel van het geschil op en zorgt ervoor dat een planning poker-sessie daadwerkelijk nuttig blijft, zonder te doen alsof men de toekomst kan voorspellen.
Veelgestelde vragen
Moeten wij story points gebruiken of #NoEstimates?
Gebruik de methode die ervoor zorgt dat er een gesprek over de schatting op gang komt, en beschouw het getal niet langer als een voorspelling. Storypoints zijn nuttig om meningsverschillen aan het licht te brengen: een grote spreiding bij één verhaal betekent dat het team geen gemeenschappelijk begrip ervan heeft. #NoEstimates is de juiste keuze wanneer uw stories al in kleine, uniforme delen zijn opgedeeld, omdat het tellen ervan dan zowel een prognose vormt als een optelling van punten. Hoe dan ook: maak een prognose voor de oplevering op basis van de doorvoer, en maak een onderscheid tussen het maken van schattingen en het aangaan van toezeggingen.
Heeft de uitvinder van story points zich er werkelijk van gedistantieerd?
Ron Jeffries, die algemeen wordt gezien als de bedenker van story points, schreef in 2019: „Ik heb story points misschien wel uitgevonden, en als dat zo is, spijt het mij nu.” Zijn bezwaar betreft het gebruik ervan om opleveringsdata te voorspellen en om teams te vergelijken of te beoordelen. Het door hem aanbevolen alternatief is niet „geen planning”. Het is het opsplitsen van stories in stukken die zo klein zijn dat er slechts één acceptatietest voor nodig is.
Hoe kunt u een release plannen zonder elke story in te schatten?
Meet de doorvoer, dat wil zeggen het aantal stories dat het team daadwerkelijk per week voltooit, en maak op basis van dat tempo een prognose voor de resterende backlog. Vasco Duarte heeft vastgesteld dat het tellen van stories ongeveer even goed werkt als het optellen van storypunten; zodra de stories dus in stukken van vergelijkbare omvang zijn verdeeld, voegen de punten weinig toe aan wat het tellen u niet al biedt.
Aanbevolen lectuur
- Wat zijn story points?: wat story points meten, en wat ze niet meten.
- Story points versus uren: waarom de omrekening van punten naar uren de kern van het geschil vormt waar beide kampen het in feite over hebben.
- Is snelheid een bruikbare maatstaf?: de andere kant van dit verhaal: wat gebeurt er wanneer de voorspelling een doelstelling wordt?
- Agile Theatre: de vorm van mislukking bij uitvoering: schatting als cargo-cult-ritueel, en hoe men een echte schatting kan onderscheiden van theater.
- Gratis Planning Poker: een hulpmiddel voor overleg, geen voorspellingsinstrument.