De verborgen metrics die agile teams missen (en waarom velocity alleen niet genoeg is)

Published on 4 June 2026 by Zoia Baletska

Uw sprint-dashboard toont 85% van de story points afgerond. De burndown chart ziet er gezond uit. Maar features missen nog steeds deadlines. Technische schuld groeit. Uw team is uitgeput. Wat gaat er mis?
U heeft overal data — Jira staat er vol mee, dashboards meten alles, retros staan altijd ingepland. Toch verdrinkt u in zichtbaarheid en snakt u naar inzicht.
De ongemakkelijke waarheid: de meeste agile-teams meten de verkeerde dingen. En de metrics waar ze het meest op vertrouwen, misleiden hen.
Het probleem: u optimaliseert voor schijncijfers
Agile-methodiek vertelt u hoe u werkt — sprints, stand-ups, retros, iteraties. Maar niet wat u moet meten om te verbeteren. Dus teams vallen terug op de makkelijkste metric: velocity.
Velocity voelt wetenschappelijk. Objectief. Mooie trendlijnen in grafieken. Iedereen begrijpt "story points per sprint".
Maar velocity lost het verkeerde probleem op. Het meet activiteit, geen vooruitgang. Het kan onhoudbare werkwijzen maskeren. Het loopt stuk op onderbrekingen, afhankelijkheden en herwerk. En het ergste: het verbergt de echte knelpunten die u vertragen.
Wij hebben met tientallen agile-teams gewerkt. Het patroon is steeds hetzelfde: velocity oogt goed terwijl de rest uiteenvalt.
De oplossing? Stop met jagen op velocity. Ga meten wat succes echt voorspelt.
Blinde vlek #1: de velocity-valkuil
Ik neem u mee in een scenario. De velocity van uw team is 40 story points per sprint. Ziet er consistent uit, toch? Maar wat betekent die 40 echt?
Scenario A: Uw team schat behoudend. 10 kleine, goed afgebakende features. Vier dagen gefocuste ontwikkeling. Echte output: 10 gedeployde features, 200 regels geteste code, nul bugs in productie.
Scenario B: Uw team schat agressief. Dezelfde velocity van 40 sp, maar die komt uit: 15 sp aan snelle fixes, 20 sp aan shortcuts (beperkt testen), 5 sp half af maar toch live gezet. Echte output: 8 features, hoge technische schuld, 3 bugs in productie in de volgende sprint.
Dezelfde velocity. Een totaal andere realiteit.
En het kan erger: velocity kan stijgen terwijl productiviteit daalt.
Als uw team haast maakt, hoeken afsnijdt en testen overslaat, gaat velocity omhoog. Op korte termijn lijkt het geweldig. Na een paar sprints duiken defects en herwerk op en klapt velocity in. U heeft zichzelf in een hoek geoptimaliseerd.
Wat u daadwerkelijk mist
De metrics die ertoe doen:
-
Feitelijke doorvoer — Hoeveel features zijn echt bij gebruikers terechtgekomen? (Niet story points, maar echte businesswaarde)
-
Cycle time — Hoe lang duurde het van "we spraken af dit te bouwen" tot "gebruikers gebruiken het"?
-
Flow efficiency — Welk percentage van die cycle time was echt werk versus wachten?
-
Kwaliteitsindicatoren — Houdt codekwaliteit gelijke tred, of ruilt u kwaliteit in voor velocity?
Zonder dit vliegt u blind. U meet hoeveel story points uw team dacht te zullen afronden, niet wat er daadwerkelijk is geleverd.
De quick win
Begin deze week: track throughput (features, commits, deployments per sprint) naast velocity. Gaat velocity omhoog maar blijft throughput vlak — gefeliciteerd, u heeft zojuist schattingsinflatie ontdekt. Uw team werkt niet slimmer; het schat hoger.

Sprint Insights in Agile Analytics
Gaat throughput omhoog maar oogt uw team uitgeput — dan heeft u een onhoudbare velocity gevonden.
Blinde vlek #2: de zichtbaarheidskloof
Uw Jira-board oogt compleet. Elk ticket is gevolgd, elke status gedocumenteerd, elke sprint gepland. Maar Jira volgt geen context. Het volgt taken.
Stel, uw sprint toont: 20 tickets vandaag gesloten, burndown ziet er goed uit. Maar het toont niet:
-
Werden ontwikkelaars onderbroken? Waardoor?
-
Leidde het sluiten van die tickets tot afhankelijkheden voor een ander team?
-
Zat er herwerk verstopt in "closed" (volgende sprint heropend als bug)?
-
Hoeveel tijd werd gewacht — code review, QA-goedkeuring, deployment window — verborgen in de status "in progress"?
Weinig teams hebben zicht op de werkelijke capaciteit voor gepland werk. U denkt 40 story points capaciteit te hebben. De realiteit lijkt meer op:
-
10 sp naar ongeplande productie-incidenten
-
5 sp opgeslokt door dependency-blockers (wachten op infrastructuur, databaseteam, etc.)
-
5 sp verloren aan contextswitches en onderbrekingen
-
3 sp herwerk uit vorige sprints
-
2 sp aan supporttickets en urgente verzoeken
Reële beschikbare capaciteit: 15 sp. Geplande capaciteit: 40 sp.
Dus u plant voor 40, sluit 15 af, en het team voelt zich mislukt. Maar dat zijn ze niet. Het doel veranderde halverwege.
Wat u daadwerkelijk mist
-
Onderbrekingen bijhouden — Hoeveel ongepland werk kwam de sprint binnen? (Supporttickets, productie-incidenten, urgente verzoeken)
-
Zicht op afhankelijkheden — Welke tickets zijn geblokkeerd door andere teams? (Onzichtbaar tot het einde van de sprint)
-
Kwaliteitsmetrics — Herwerkpercentage (% van tickets uit de vorige sprint die terugkwamen als bugs)
-
Capaciteit in kaart brengen — Vergaderingen, code review, mentoring — welk % van de tijd gaat echt naar sprintwerk?
De meeste teams meten dit niet. Dus als sprints missen, geven ze de schuld aan "discipline" of "onduidelijke requirements". Maar de data vertelt een ander verhaal.
De quick win
Voeg deze week één aangepast Jira-veld toe: "Type of Work" met waarden: Feature, Bug, Support, Tech Debt, Interrupt.
Tag alles zodra het binnenkomt. Draai aan het eind van de maand een rapport: "X% van onze capaciteit ging naar ongepland werk."
Nu heeft u data om sprintplanning aan te passen. In plaats van 40 sp te veronderstellen, plant u 40 min het gemiddelde ongeplande werk dat u daadwerkelijk ziet.
Eén kleine wijziging. Enorm geloofwaardigheidswinst.
Blinde vlek #3: de prognose-illusie
Elke sprintplanning begint hetzelfde: "Op basis van onze velocity van 42 story points committeren we 42 story points." Dit is een puntprognose. Één getal. Alsof de toekomst voorspelbaar is.
In werkelijkheid zagen uw laatste 10 sprints er zo uit: 38, 45, 40, 42, 35, 48, 39, 44, 36, 46 sp. Dat is een bandbreedte van 30 punten. Maar u committeert op 42 alsof het zeker is.
Wat gebeurt er dan:
-
U committeert 42
-
In 60% van de gevallen haalt u het (geluk, goede timing)
-
In 40% van de gevallen mist u het (afhankelijkheden vertragen, meer herwerk, onderbrekingen)
Het team voelt zich 40% van de tijd mislukt, terwijl ze feitelijk consistent leveren
Het fundamentele probleem: prognoses zonder betrouwbaarheidsintervallen zijn gewoon gokwerk met schijnzekerheid. U moet voorspellen als een meteoroloog. Niet "het wordt 22 graden", maar "22 graden met 30% kans op regen en een bandbreedte van 20–24 graden."
Wat u daadwerkelijk mist
-
Betrouwbaarheidsintervallen voor velocity — "We zijn voor 80% zeker dat de volgende sprint 38–48 sp wordt" (niet alleen "42")
-
Scopebewaking — Hoeveel items worden midden in de sprint toegevoegd? (Bij >20% heeft u een scopemanagementprobleem)
-
Afhankelijkheden voorspellen — Welke sprints krijgen externe blockers? (Plan dienovereenkomstig)
-
Risicomodellering — Wat is de kans dat we onze leverdatum halen als velocity varieert, scope creept en afhankelijkheden opduiken?
Zonder dit is uw forecasting theater. U oogt professioneel met een datum, maar u bent niet echt zeker.
De quick win
Bereken de standaarddeviatie van uw velocity over de laatste 8–12 sprints. Gebruik die bandbreedte als prognose, niet één enkel getal.
Voorbeeld: gemiddelde velocity 40, standaarddeviatie 5. Uw volgende sprintprognose is niet "40 sp" — maar "80% zekerheid dat we 35–45 sp halen."
Die ene verandering sloopt schijnzekerheid en maakt uw prognoses eerlijk. Leiderschap zal ze juist meer vertrouwen omdat u hen niet steeds verrast.
Blinde vlek #4: de duurzaamheidsblinde vlek
Velocity loopt op. 38, 40, 42, 44 sp per sprint. Het team accelereert!
Behalve dat ze ook: Overwerken. Minder tijd nemen voor code review. Tests overslaan. Shipped met lagere testdekking. Herwerk neemt toe. U heeft geoptimaliseerd voor velocity ten koste van duurzaamheid.
De tijdlijn:
-
Maand 1: Velocity omhoog, team voelt zich goed
-
Maand 2: Velocity nog steeds omhoog, maar kwaliteitsproblemen duiken op (defects in productie)
-
Maand 3: Herwerk vreet de sprint op en de velocity voor nieuwe features klapt in
-
Maand 4: Team is opgebrand, een sleutelfiguur vertrekt
Allemaal voorspelbaar. Allemaal zichtbaar in de data. Maar niemand mat het.
Als u alleen velocity bijhoudt, ziet u de schuld niet oplopen. U ziet de kwaliteit niet dalen. U kunt niet beoordelen of het team duurzaam werkt of slechts op een piek zit die gaat crashen.
Wat u daadwerkelijk mist
-
Defect escape rate — Bugs gevonden in productie per feature (loopt het op = onhoudbaar)
-
Herwerkpercentage — Tickets uit vorige sprints die heropend worden met bugs (loopt het op = hoeken afsnijden)
-
Testdekking — Percentage code coverage (daalt dit terwijl velocity stijgt = rood vlag)
-
Cycle time — Tijd van creatie tot deployment (neemt dit toe terwijl velocity vlak is = herwerk eet tijd op)
-
Trend in technische schuld — Neemt schuld toe of af? (Neemt het toe = toekomstige velocity klapt in)
Deze metrics tonen of uw velocity echt is of geleend uit de toekomst.
De quick win
Begin deze sprint met één kwaliteitsmetric: defecten per deployment. Als velocity én defectratio omhooggaan, heeft u een onhoudbaar patroon gevonden.
Gebruik die data in de retro: "Velocity is omhoog, maar we shippen meer bugs. We moeten vertragen om te versnellen — investeren in testen/code review."
Datagedreven duurzaamheid wint van onderbuikgevoel "het team oogt moe".
Blinde vlek #5: de flow-blindheid
De feature doet er 2 weken over om te shippen. Klinkt redelijk, toch?
Laten we uitsplitsen waar die tijd naartoe gaat:
-
Development: 3 dagen (feitelijk coderen en testen)
-
Code review: 2 dagen (wachten op reviewer, feedback verwerken, itereren)
-
QA-goedkeuring: 3 dagen (testen, issues vinden, fixrondes)
-
Deployment window: 2 dagen (wachten op de vrijdagse deployment, on-call inregelen)
-
Totaal: 10 kalenderdagen, maar slechts 3 dagen echt werk
U meet velocity (hoeveel er gecodeerd is), niet flow (hoe lang features erover doen om gebruikers te bereiken).
Het knelpunt is niet de ontwikkelsnelheid. Het is de pipeline. Maar uw velocity-metric is daar blind voor.
Wat u daadwerkelijk mist
-
Cycle time — Totaal aantal dagen van ticketcreatie tot deployment
-
Flow efficiency — Percentage van cycle time besteed aan echt werk vs. wachten
-
Uitsplitsing per fase — Hoe lang in dev? In review? In QA? In deploy?
-
Cumulative flow diagram — Visualisatie van waar werk vastloopt (toont bottlenecks direct)

DORA Metrics in Agile Analytics
Deze metrics tonen het echte knelpunt. Meestal is dat niet ontwikkeling. Het zijn doorgaans code review-, QA- of deployment-bottlenecks.
De quick win
Plot de ticketleeftijd op uw Kanban-bord. Welke kolom heeft de oudste tickets? Dáár zit uw knelpunt.
Als code review 8 wachtende PR's heeft en 0 in ontwikkeling, ligt het knelpunt bij reviewers, niet bij developers. Los dat op en de flow verbetert zonder te hoeven aannemen.
Blinde vlek #6: de besliskloof
Sprintdoel gemist. In de retro bespreekt het team: "We waren niet gedisciplineerd genoeg" en "Requirements waren niet duidelijk." Dit zijn giswerk. Geen data. Volgende sprint gebeurt hetzelfde. Wat er wél zou moeten gebeuren:
Velocity daalde van 42 naar 32 sp. Waarom?
Datachecklist:
-
Teamwisselingen? Nee.
-
Verandering in schattingsnauwkeurigheid? Nee, schattingen zijn consistent.
-
Meer onderbrekingen? Ja, 2 productie-incidenten = 8 sp ongepland werk.
-
Meer afhankelijkheden? Ja, 2 features geblokkeerd door database-migratie = 5 sp.
-
Meer scope creep? Ja, 6 sp aan items halverwege sprint toegevoegd.
-
Schattingsfouten? Geen significante verandering.
Analyse: Werkelijk gepland werk dat is afgerond was 32 - 8 (incidenten) - 5 (geblokkeerd) - 6 (scope creep) = 13 sp. Maar we hadden 10 items geschat op 32 sp. Uitsplitsing: 8 + 5 + 6 + 2 = 21 sp aan "verloren" capaciteit.
Conclusie: Niet "team is trager", maar "externe factoren en scopemanagement namen 20 sp capaciteit in beslag."
Met data is de diagnose helder. De oplossing ook: onderbrekingen terugdringen, afhankelijkheden deblokkeren, scope beschermen. Zonder data discussieert u meningen. En herhaalt het probleem zich in de volgende sprint.
Wat u daadwerkelijk mist
-
Framework voor oorzaakanalyse — Aantal incidenten? Aantal afhankelijkheden? Scopewijzigingen? (Check ze allemaal)
-
Trendanalyse — Welke issues zijn structureel? (Als onderbrekingen altijd 15% van de capaciteit zijn, plan ervoor)
-
Voorspellende signalen — Welke veranderingen voorspellen velocity-dips? (Gebruik historische data)
-
Vroegtijdig waarschuwingssysteem — Dashboard dat toont: deze sprint heeft 3 geblokkeerde items, 2 incidenten verwacht, 4 scope-items toegevoegd
Dit verandert retros van schuldgericht naar diagnostisch. U lost echte problemen op, geen sfeerdiscussies.
De quick win
Vraag in de volgende retro niet "Waarom misten we?" — vraag het mét data.
Gebruik de checklist: onderbrekingen, afhankelijkheden, scope creep, schattingsnauwkeurigheid, teamwisselingen en complexiteitsveranderingen.
Eén retro met data laat u meer zien dan vijf retros zonder.
Uw metrics-audit: de checklist met 6 blinde vlekken
U heeft zes cruciale meetgaten in kaart. Hier is uw audit: stel uw team deze vragen (en check of u ze met data kunt beantwoorden).
-
De velocity-valkuil — Kunt u één factor noemen die velocity deed dalen in de vorige sprint? (Datagedreven antwoord of gok?)
-
De zichtbaarheidskloof — Hoeveel ongepland werk trof uw laatste sprint? (Bekend getal of schatting?)
-
De prognose-illusie — Hoe vaak halen sprints hun commitment? (Onder 70% = probleem)
-
De duurzaamheidsblinde vlek — Neemt velocity toe terwijl ook de defectratio stijgt? (Onhoudbaar)
-
De flow-blindheid — Waar brengen features de meeste tijd door? (Kunt u de bottleneckfase noemen?)
-
De besliskloof — Waarom veranderde velocity vorige sprint? (Kunt u dat met data beantwoorden?)
Als u dit niet met data kunt beantwoorden, heeft u blinde vlekken.
Aan de slag: drie stappen
Stap 1: kies uw grootste pijnpunt
Welk knelpunt frustreert u het meest?
-
Elke keer sprintcommitments missen? (Prognoseprobleem)
-
Team voelt zich opgebrand maar velocity oogt goed? (Duurzaamheidsprobleem)
-
Features doen te lang over shippen? (Flowprobleem)
-
Steeds verrast door scopewijzigingen halverwege sprint? (Zichtbaarheidsprobleem)
Begin daar.
Stap 2: stel één nieuwe metric in
Probeer niet alles te meten. Kies één metric die uw grootste knelpunt zichtbaar maakt.
-
Prognoses missen? Track onderbrekingen en scope creep.
-
Zorgen over duurzaamheid? Track defect escape rate.
-
Flowproblemen? Track cycle time per fase.
-
Zichtbaarheidskloof? Voeg het veld "Work Type" toe in Jira.
Eén metric. Deze week.
Stap 3: gebruik de data in de volgende retro
Breng de metric mee naar de retro. Niet meer gissen naar problemen. Laat data het gesprek leiden.
"We sloten 35 sp, maar hadden 8 sp onderbrekingen. Reële capaciteit was 27 sp, dus we leverden 100% van het realistische plan. Zo verminderen we onderbrekingen in de volgende sprint..."
Data transformeert retros. Teams voelen zich gehoord (we zien wat er echt gebeurde). Beslissingen zijn helder (dit pakken we aan).
De echte kans
De meeste agile-teams vliegen op instrumenten die ze niet begrijpen. Velocity is de autopilot en niemand weet of die naar de bestemming koerst.
Het goede nieuws: u heeft alle data al. Het staat in Jira, in uw Git-historie, in uw deploymentlogs. U meet alleen de verkeerde uitsnedes.
Teams die excelleren werken niet harder. Ze meten slimmer. Ze kennen hun blinde vlekken. Ze prognosticeren met vertrouwen. Ze optimaliseren voor duurzaamheid. Ze fixen de echte knelpunten.
U kunt dat ook. Begin deze week met één metric. Voeg volgende week een tweede toe. Over een maand heeft u meer zicht dan 90% van de agile-teams. Over drie maanden stabiliseert uw velocity, kloppen uw prognoses en verbetert de teammoraal — niet omdat er harder gewerkt wordt, maar omdat u eindelijk meet wat ertoe doet.
Supercharge your Software Delivery!
Implement DevOps with Agile Analytics
Implement Site Reliability with Agile Analytics
Implement Service Level Objectives with Agile Analytics
Implement DORA Metrics with Agile Analytics





