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.
This performs the 1st calculation, Value + Criticality + RR OE = Cost of delay
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.
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.
This performs the 2nd calculation Cost of delay divided by Job Size = WSJF
Again, triggered by the “Field value changed” trigger. This time by the “Cost of Delay” field upon the “Edit issue” or “Create issue” conditions.
Note: WSJF Automation part 2 always triggers as the “Cost of delay” field changes as a result of WSJF Automation part 1.
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.
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.
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.
Curt Holley
Atlassian Solutions Consultant
Sentify
Wellington New Zealand
120 accepted answers
7 comments