Het levert velen, voornamelijk in management posities hoofdbrekens op. Als ze aan een team vragen wanneer het af is krijgen ze als antwoord ‘wanneer er is voldaan aan de Definition of Done. Wanneer dat is kunnen we niet zeggen’. Een weinig bevredigend antwoord. Al helemaal als er een sprake is van een wettelijke verplichting of een fatale termijn in een contract.

Is het dan allemaal echt zo erg? Nee gelukkig niet. Een fraai Lean en Agile concept is de de WSJF (Weighted Shortest Job First) techniek. Wanneer je deze juist toepast om de werkvoorraad van een aantal scrum teams te managen is het wel degelijk mogelijk om deadlines te halen. In dit artikel leg ik uit hoe dat werkt.

Een eerdere blog werd becommentarieerd met de opmerking dat het leuk is als concept, maar nu in de praktijk nog maar eens moest gaan werken. Dat is natuurlijk altijd zo met concepten. Iedere situatie is anders. Het vertalen van technieken en methoden naar een specifieke omgeving vraagt inzicht en ervaring. Huur daarom altijd een vakman in.

Maar dan eerst terug naar het concept. De WSJF methode laat zich als volgt vangen in een formule:

Hier staat in zoveel woorden: doe datgene dat de meeste waarde oplevert en het kleinst is als eerst, en neem ook het tijdsaspect en indirecte baten mee. Die indirecte baten heten dan Opportunity enablers. Ze hebben zelf geen directe opbrengsten maar maken het mogelijk om op een later moment wel andere zaken te realiseren.De kern van deze methode is dat zaken van mindere waarde mogen wachten. Het is een koppeling tussen tijdstip (van oplevering) en waarde. Op basis hiervan worden backlog items gerangschikt. (Hier is een uitlegflimpje)

Ook wordt de mate van risicoreductie meegenomen om een hogere of lagere score te bereiken. Zekerheid heeft een prijs, maar het omgekeerde is ook waar, het verkleinen van risico heeft ook waarde.

Door de optelsom van waarde, het tijdsaspect, de risicoreductie en de opportunity enablement te delen door de grootte van het werk (bv.v. in geschat aantal uren) kom je tot een gewogen getal wat de prioriteit van het werk aangeeft. Hoe hoger hoe belangrijker en dus bovenaan op de stapel (de backlog in scrum termen) te leggen.

De eerste vraag die ik dan krijg is hoe deze waarden dan allemaal uit te drukken. Dat kan objectief en subjectief.

  • De objectieve methode gaat uit van een goed begrip van de bedrijfsvoering zodat we de effecten tot op de euro uit kunnen rekenen. Dit vereist een model waarbij we beschrijven hoe zaken als kosten, opbrengsten, doorlooptijden, ontwikkelkosten en risico zich tot elkaar verhouden. Critici van deze techniek zeggen dat dit voor bijvoorbeeld software lastiger is dan voor bijvoorbeeld producten die fysiek geproduceerd worden. Wellicht zeggen ze dat om er maar vanaf te zijn? Ik heb genoeg discussies gehad met de Agile Puristen hierover, maar geen heeft me kunnen overtuigen.
  • De subjectieve methode gaat uit van ranking. Door de waarden ieder een eigen getal te geven uit de Fibonacci reeks (0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89), krijgen ze ook een weging ten opzichte van elkaar. Samen met anderen kun je deze bepalen door hetzelfde te doen als bij planning poker planning poker. Groot nadeel van deze methode is dat je nooit een brok werk afwijst omdat het helemaal geen waarde heeft, maar zolang die onderaan de stapel blijft is de kans op uitvoering ook nihil. Het is dus een goed alternatief.

Enkele kanttekeningen moeten wel worden gemaakt:

  • Logischerwijs moet er tijd genoeg zijn om het werk te klaren voor dat de deadline verstrijkt. Een goed beeld van de inspanning is vereist, en dat dan ook nog eens vooraf.
  • Theoretisch gezien kan het voorkomen dat het team beter kan werken aan iets met meer Business Waarde. Dit kan voorkomen worden door hogere waarden toe te kennen aan zaken met een deadline.
  • Het valt niet altijd mee de omvang te schatten, zeker als het om nieuwe zaken gaat. Ook dit proces dient herhaalt te worden om zo lering te trekken uit de opgedane ervaringen.

De WSJF methode voor het samenstellen van de overall backlog biedt dus goede garantie op het halen van deadlines. In een volgende blog zal ik stil staan bij hoe we de voortgang kunnen monitoren voor optimale grip.