Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Weighted Shortest Job First (WSJF) made easy with Jira Premium

Weighted Shortest Job First (WSJF) is a handy tool to assist prioritize work. But that isn't really what this article is about. If you would like to know more about WSJF, then here is a good place to start: WSJF - Scaled Agile Framework

This article is about how the tools available now in Jira Premium can make recording, calculating and visualizing your WSJF data so simple. 

The first thing to do is create numeric custom fields for all elements of the WSJF equation: “Value”, “Criticality”, “RR OE”, “Cost of Delay”, “Job Size” and "WSJF"and add them to whichever issue type you desire. We only have them on Features (Jira Epics) but you could add them to any issue type.  I recommend putting them out of the way in a separate WSJF tab and ensuring that the calculated fields of "Cost of Delay" and "WSJF" are read only so that they cant be overwritten.....and that is because, the next step is to automate the math.

WSJF Automation part 1

This performs the 1st calculation, Value + Criticality + RR OE = Cost of delay

  1. It is triggered by the “Field value changed” trigger, with all 3 fields involved in the calculation as trigger points for the “Edit issue” or “Create issue” operations.

    WSJF1.png
  2. Then the “Cost of Delay” field is populated based on a Smart Values calculation {{#=}}{{issue.Value}} + {{issue.Criticality}} + {{issue.RR OE}}{{/}} via the “Edit issue” action.

    WSJF2.png

WSJF Automation part 2

This performs the 2nd calculation Cost of delay divided by Job Size = WSJF

  1. Again, triggered by the “Field value changed” trigger. This time by the “Cost of Delay” field upon the “Edit issue” or “Create issue” conditions.WSJF3.png 

  2. Then the “WSJF” field is populated based on a Smart Values calculation {{#=}}{{issue.Cost of Delay}} / {{issue.Job Size}}{{/}} via the “Edit issue” action.WSJF4.png

Note: WSJF Automation part 2 always triggers as the “Cost of delay” field changes as a result of WSJF Automation part 1.

Now create a plan using Advanced Roadmaps

This is a great use of Advanced Roadmaps where you take advantage of its spreadsheet like view, rather than its timeline features.

It gives you the ability to do a WSJF session directly into the plan, then update the fields back into Jira once agreed upon.

  1. Create a plan that filters in the relevant issues that have the WSJF fields. 
  2. Add the WSJF custom fields to your plan and add them as columns 
  3. Now commence updating the   “Value”, “Criticality”, “RR OE” and “Job Size” fields, then, when ready, click“Review Changes” and save back to Jira.

The automation will do the math and upon a refresh of the plan, the Cost of delay and WSJF fields will be populated.

Sort by the WSJF column and you have them in highest to lowest order ready to help you make those priority decisions.WSJF6.png

The Net result

The net result is, you now have a reusable plan that can act like a spreadsheet with formulas that records the data back into Jira on the Features the data pertains to.

7 comments

Bill Sheboy
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 19, 2021

Thanks, @Curt Holley for that explanation of how to compute the SAFe version of WSJF once a team has identified the supporting measures.

For teams trying to understand WSJF better and the challenges/supporting ideas around its usage, I recommend reviewing the primary source on the topic: The Principles of Product Development Flow: Second Generation Lean Product Development, by Donald Reinertsen.

Best regards,

Bill

Like # people like this
Monica Gupta January 16, 2023

I am trying to implement this with limited success. What field type be the custom field for Cost of Delay and WSJF and how to make them read only

Curt Holley
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
January 16, 2023

Hi @Monica Gupta 
The fields are simply number fields. making fields "Cost of Delay" and "WSJF" read only is done in the Screen scheme by only adding "Cost of Delay" and "WSJF" to the view, but not edit screen. So you need two versions of the screen, one with "Cost of Delay" and "WSJF" for viewing and one without for editing.

From memory I believe you will want/need "Cost of Delay" and "WSJF" on Create as well.

using the below example, ZP:Scrum bug Screen would have the same fields as default Issue plus "Cost of Delay" and "WSJF"

zp.png

Monica Gupta January 16, 2023

Thanks Curt, so if I edit the issue will I not see the existing Cost of Delay and WSJF values?

Curt Holley
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
January 16, 2023

You will see the fields @Monica Gupta   and whatever value the automation has added, but you will not be able to edit the value. If they are still blank, i believe you are right, the fields not in the edit screen will not show.

Ash Pitt
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
March 1, 2023

Hey @Curt Holley 

I just wanted to say this is fantastic! Thank you for sharing.

Ash

Like Curt Holley likes this
Robert Horan February 21, 2024

In case it's not clear when creating the rule to calculate WSJF, you need to check the Check to allow other rule actions to trigger this rule box in Rule Details; if you don't, this automation rule will not work.

box.png

TAGS
AUG Leaders

Atlassian Community Events