Every company tries to run their business in a way that would bring them the most financial gain. But how can you organize work to achieve this?
One way is to use a Weighted Shortest Job First (WSJF) prioritization model.
So, let’s find out what WSJF is and how to calculate it!
- Weighted Shortest Job First (WSJF) is used for prioritizing work items to ensure the biggest profit for the business.
- WSJF is calculated as the cost of delay divided by job duration.
- It is mainly used by product teams to prioritize backlog items.
- You need to consult all stakeholders when calculating WSJF.
Table of Contents
What is Weighted Shortest Job First (WSJF)?
Weighted Shortest Job First is a technique for prioritizing work items to ensure the biggest profit for the business.
As the name suggests, it favors jobs that carry the biggest weight and take the least amount of time to finish. It helps you decide which item in the backlog to focus on first.
WSJF is used in Scaled Agile Framework (SAFe) to prioritize tasks in backlogs. SAFe is a framework that helps businesses scale Agile, Lean, and DevOps principles across large teams and even entire organizations.
WSJF is expressed in numeral values and calculated using a simple formula:
WSJF = cost of delay/job duration
💡 Plaky Pro Tip
If you are interested in other project prioritization techniques, read our post on the topic:
Cost of delay
Cost of delay refers to what the business will lose by delaying a job. It can mean financial cost, but it can also refer to the loss of good reputation in the industry, missed opportunity, etc.
Cost of delay consists of 3 segments:
- User-business value — how valuable this job is to your user or your business.
- Time criticality — how the value of your job changes over time. Is there a significant drop in value over time? Is there a strict deadline that can’t be missed?
- Risk reduction and/or opportunity enablement — how will the job lower the risk levels for your business, and will it create new opportunities for your business (e.g. entering a new market)?
All these segments are evaluated separately. For example, training employees in cyber security will not result in direct financial gain, but it will reduce the risk of your business falling prey to malicious attacks. So, this job will get a high score for risk reduction and a lower one for user-business value.
Job duration
Job duration is the time it will take to complete said job. Sometimes, the term job size is used instead of job duration.
Jobs with shorter duration are preferred because they can result in value faster.
A Fibonacci sequence (1,1, 2, 3, 5, 8, 13, 21…) is usually used to assign values to cost of delay and job duration to make the distinction between results more apparent.
Who uses WSJF?
The Weighted Shortest Job First model is mainly used by product teams to prioritize backlog items.
WSJF is most suitable for prioritizing jobs which can bring direct value to the business, such as a new product the business can sell or a new service they can offer.
How to calculate WSJF
Calculating WSJF is a straightforward process that consists of 4 steps:
- Step #1: Make a list of all jobs,
- Step #2: Consult all stakeholders,
- Step #3: Evaluate, and
- Step #4: Enter the scores in the WSJF calculator.
Step #1: Make a list of all jobs
The first step is to comprise a list of jobs that need to be prioritized using WSJF.
Step #2: Consult all stakeholders
As we mentioned before, WSJF is based on estimates, and it can easily happen that different people assign higher value to different jobs.
That’s why it’s important to gather all stakeholders and make the decisions together, instead of having a product or project manager prioritize work on their own.
Step #3: Evaluate
Evaluate all jobs for each segment of the WSJF formula separately.
This means you should look at user-business value and appoint 1 to the job with the smallest value, and then evaluate other jobs in relation to this one. Once you’ve done that, repeat the process for:
- Time criticality,
- Risk reduction and/or opportunity enablement, and
- Job duration.
Tip: Use this as an opportunity to check if you should break down some jobs into smaller chunks (if their cost of delay and job duration scores are very high and much higher than others on the list).
Step #4: Enter the scores in the WSJF calculator
Once you have all the scores, the last step is to calculate the WSJF. The easiest way to do this is to use a WSJF calculator.
WSJF calculator
To help you get started, we created a WSJF calculator for you. You just need to click on the link below and copy the document.
Once you make a copy, you will be able to enter the information into the calculator, which will automatically show you the WSJF results.
After you’ve calculated the WSJF score for each job, you can mark the whole table, right-click, and choose ‘sort range’.
Then choose to sort the table by WSJF column, and you’ll see clearly in which order the tasks should be performed.
Keep in mind that the numbers assigned to all segments of the model are merely estimates. No one can know with absolute certainty how long a job will take or the exact cost of delay.
Businesses that have experience with similar projects can give better estimates. For example, a car company using WSJF to organize the production of a new model can compare it with the production of their previous model.
How to use WSJF to prioritize a product roadmap?
WSJF can be very useful for prioritizing a product roadmap.
A product roadmap represents the vision and direction of product development, i.e. how a company plans to manage its product strategy.
The easiest way to create one is by using a project management tool with a pre-made product roadmap template such as Plaky.
Let’s take an example of a software company which is developing an application and needs to create a now-next-later product roadmap.
The first step is to list all tasks in the backlog.
Then use the calculator to determine WSJF for each task needed to develop the app. The results will make it easy for the product manager to prioritize and group the tasks.
The tasks with the highest WSJF results will be grouped into “now”, the tasks with WSJF results in the middle will go into the “next” group, while those with the lowest WSJF result will be placed into the “later” group.
Once you have entered WSJF results into the product roadmap, you can sort tasks within groups from the highest WSJF to the lowest.
At the end, your product roadmap will look like this:
Implementing WSJF prioritization when organizing tasks in the backlog can help your team be more productive and efficient. With Plaky, task prioritization and tracking is made simple due to its intuitive design and customizable templates. Try Plaky for free today.