Introduction to using WSJF

What is it and when do I use it?

WSJF is short for Weighted Shortest Job First and is an effective technique for the prioritisation of work based on Return On Investment (ROI).

What is it for?

What? Why?
Takes the emotion out of prioritisation WSJF facilitates a conversation focusing on elements like Business Value, how time will erode value, how we are removing risk or enabling future value as well as size.
Promotes a measured discussion By focusing on the key elements of WSJF and their relativity to other Backlog items
Helps to drive a Backlog of small but valuable deliverables, opposed to large ones, promoting a faster return on investment Size is a key factor in the position of a Backlog item on the Backlog.  Larger items that bake in investment before a return tend to feature towards the end of the Backlog.  When these have a high value, WSJF promotes breaking these items into a number of smaller items to release their value earlier

How do you do it?

1. Start with a list (Backlog) of items that you would like to prioritise.  Ideally use a Spreadsheet to make this simpler.
2.

Add a column with the name BV.  This represents Business Value.  Ask the Product Owner to score each Backlog item’s relative Business Value against each other Backlog item.   You may only use the following scores; 1,2,3,5,8,13,21

One Rule: At least one Backlog item must have a BV value of 1.

 
3.

Add a column with the name TC. This represents Time Criticality. This is a score to represent whether the item’s Business Value is impacted or degrades over time (e.g.; launching an event web site after the event delivers little value). Ask the Product Owner to score each Backlog item’s relative Time Criticality against each other Backlog item. You may only use the following scores; 1,2,3,5,8,13,21

One Rule: At least one Backlog item must have a TC value of 1 (often many or all have a TC of 1).

 
4.

Add a column with the name RROE.  This represents Risk Reduction and Operational Enablement; how the Backlog item reduces technical or operational risk or how it will enable future Business Value.  This is a score to represent whether the item’s Business Value is impacted or degrades over time.  Ask the Delivery Team to score each Backlog item’s relative RROE against each other Backlog item.   You may only use the following scores; 1,2,3,5,8,13,21

One Rule: At least one Backlog item must have a RROE value of 1.

 
5.

Add a column with the name Size.  This represents size of the Backlog Item relative to the other Backlog items.  The size can be any numerical value (Fibonacci as used with the previous Scores, Developer Days, Story Points, etc).  Ask the Development Team to size each item in the Backlog relative to each other item.

 
6.

Add a column called CoD.  This column represents a Cost of Delay score.  CoD is a way of understanding the cost (or loss) of not delivering a Backlog item, for example, if a feature delivers £100,000 a week in new value, by not having that feature we a losing £100,000 every week until the feature is delivered.

To calculate a CoD score, simply sum the BV + TC + RROE columns to get a CoD Score.

 
7. Add a column with the name WSJF, this is where we will calculate the Weighted Shortest Job First score.  Calculating WSJF is simple, it’s just CoD divided by Size.  The higher the WSJF score the sooner you should deliver it.  
8. Calibration: You will likely find items with a high CoD languishing towards the end of the Backlog.  This will be due to the Size of the item being large.  Consider breaking these items down into smaller Backlog items.  

Do's & Don'ts

Do... Don't...
Do ensure that there is at least one score of 1 within each of the BV, TC and RROE columns Don’t game the system with everything at 21 points, have a conversation around relative value
Do use BV to measure the Business Value Don’t use BV as a when I want it score, it represents the Return On Investment score for the item
 Do use TC to understand how BV decays over time  Don’t use TC as a proxy for when I want it.  Most items should have a TC of 1.  TC comes into effect when there are mandated deadlines like events or regulatory changes
Do use RROE to understand how the item is reducing business or operational risk and whether it unlocks future BV Don’t game the system by overstating future value or the risks reduced
Do Decompose items where there is a high CoD but a large size forcing these items lower in the Backlog Don’t stick to WSJF religiously, it is a starting point to have an honest conversation about where an item sits within a prioritised Backlog.  Sometimes the right thing to do is override an item, just be conscious of why you are doing that
Do consider using reference scales to drive a scoring, for example with BV;

  • 1 = £10k ROI per annum
  • 2 = £20k ROI per annum
  • 3 = £30k ROI per annum
  • 5 = £50k ROI per annum
  • 8 = £100k ROI per annum
  • 13 = £500k ROI per annum
  • 21 = £1m ROI per annum
 Do consider using VMOST as a reference for assessing BV against VMOST Objectives

Contributors


 

Sidebar