Backlog refinement

Blog
Alex-van-der-Star
Alex van der Star Transformation consultant
19 april 2023
Roy van der Kroft - Agile Leiderschap
Bij de introductie van Scrum krijg ik steevast de vraag waar de ontwerpfase in Scrum terug te vinden is. Dat is een begrijpelijke vraag omdat we geleerd hebben om vooraf goed na te denken, alternatieve oplossingen naast elkaar te zetten en de keuzes op papier vast te leggen voordat we gaan programmeren. Bij de introductie van een iteratieve aanpak verdwijnt deze fasering en worden de activiteiten uit alle fasen in elke iteratie tegelijk uitgevoerd. Het ontwerp gebeurt dus incrementeel, gelijktijdig met de realisatie. Het goed invulling geven aan incrementele design is best lastig en in de praktijk zie ik teams in twee uitersten terechtkomen.

Te veel voorbereiding

Aan de ene kant zie ik teams vasthouden aan het paradigma dat alle ontwerpkeuzes vooraf gemaakt zijn. Pas als alle details zijn ingevuld, mag er gebouwd worden. Deze teams werken vaak met een Product Owner of analisten die vooraf gedetailleerde documentatie opstellen. Voordat de sprint begint, wordt het resultaat van dit denkwerk overgedragen aan de bouwers en testers. Op het moment dat er tijdens de bouw toch nog onverwachte keuzes gemaakt moeten worden, ondanks alle voorbereiding, is de reactie: "Volgende keer moeten we nog meer tijd stoppen in de werkvoorbereiding". De onderliggende denkfout hier is: hoe kunnen we voortschrijdend inzicht voorkomen?

Te weinig voorbereiding

Aan de andere kant zijn er teams die zeggen: "Wij zijn Agile, we zien wel wat er komt." Het team gaat de sprint in met een onduidelijke sprint backlog en heeft de helft van de sprint nodig om erachter te komen wat er daadwerkelijk gedaan moet worden. Het gevolg van deze aanpak is veel onduidelijkheid en discussies tijdens de sprint. Bovendien is de kans groot dat het team op basis van aannames de verkeerde keuzes maakt en dat er herwerk nodig is in volgende sprints. In dit geval is de onderliggende denkfout dat bij complexe situaties elke willekeurige aanpak even goed is.

Sprint Refinement

Efficiënte voorbereiding met backlog refinement in Scrum

Scrum biedt met backlog refinement een aanpak om precies genoeg voorbereiding te doen. Backlog refinement is het verrijken van de backlog, het aanvullen van backlog items met die informatie die het team nodig heeft voordat de sprint begint. Backlog refinement is een essentiële toepassing van Lean software development: just enough en just in time. Keuzes maken op het moment dat het nodig is, niet meer voorwerk doen dan nodig is, niet meer vastleggen dan nodig is.

Timeboxing

Zoals alle elementen in Scrum, is de meeting timeboxed om de focus te houden op de belangrijkste zaken en onnodige discussies te voorkomen over zaken die op dat moment niet relevant zijn.

Per item op de backlog geeft de Product Owner toelichting. Vervolgens kan het team vragen stellen totdat er voldoende duidelijkheid is om een inschatting te kunnen maken.

Gebruik Backlog refinement om de balans te vinden tussen te veel en te weinig voorbereiding.

Aan de slag met een Scrum werkwijze?

Bekijk onze gecertificeerde trainingen

Kelly vertelt je over onze aanpak.

+31 6 50161496
Maurice Tolhuisen