Bring your backlog to the next level with the WSJF method
In your Agile methodology, you need to prioritize initiatives, functionalities, and activities in your backlog. SAFe® has a method to help prioritize the most important and shortest functionalities. This method is known as Weighted Shortest Job First or WSJF.
The concept of WSJF is simple: establish a hierarchy within your tasks according to the maximum expected economic benefit. A WSJF value is calculated for each feature in your backlog, and the one with the highest score will be performed first. Two important values are taken into account in this calculation, the Cost of Delay and the Job Duration, which is like asking you these two questions:
- What is the lost value if this functionality is not implemented?
- What does it cost to develop this functionality?
Estimating the cost of delay
Any work not delivered on time has a cost. To evaluate the cost of this delay, you must take three factors into account:
- User-business value: Is there a high demand for the functionality? Does it have a strong impact on revenue?
- Time criticality: Is there a fixed deadline for the functionality? Is it possible to lose customers if it is not implemented quickly? Does it have an impact on customer satisfaction?
- Risk reduction and/or opportunity enablement value: Does the functionality reduce the risk of this or future delivery? Will this feature enable new business opportunities?
The cost of delay simply being the sum of User-business value, Time criticality, and Cost Reduction / Opportunity Enablement.
Estimating the Job Duration
SAFe® applies the WSJF method to prioritize the backlog by dividing the Cost of Delay by the time it takes to develop the functionality. While estimating the cost of delay is relatively straightforward (as seen above), estimating the duration can be more complicated, especially in the early stages of the project, when you don’t know who will be working on it and the capacity allocation for your teams. These criteria are generally assessed by the development team based on the notion of job size. How to evaluate it? Here’s a simple example: if you are the only one painting your house and the living room is three times bigger than the kitchen, it will take three times longer to paint the living room. Makes sense, right?
Calculating the WSJF value
You know now how to estimate the components of the WSJF method; it’s time to do the math! And nothing is better than a simple table to apply the formula. The idea is to put each dimension into perspective and assign a relative value to it. Using the simplified Fibonacci scale, for example, is an excellent solution.
Example of WSJF calculation using a table
A few remarks to get this table completed:
- For each dimension, assign one of the following values according to your evaluation: 1, 2, 3, 5, 8, 13, 20.
- Focus on one column at a time when you fill them.
- The highest WSJF score corresponds to the functionality to be prioritized.
A few calculations later, you can see the most important items in your backlog.