Disciplined Agile

Improving WSJF

Don Reinertsen defined Weighted Shortest Job First (WSJF) as a way of ordering work to be done to lower overall cost of delay. SAFe® modified this definition in three ways:

  • Defining business value as business value, time criticality, risk reduction and/or opportunity enablement
  • Using relative numbers instead of value (and normalizing and adding these together)
  • Using effort instead of time

While some of this is positive, there are also some challenges to their approach.

  • Defining business value. Adding time criticality, risk reduction and opportunity enablement to the definition of business value is a positive step. However, reducing business value to a single number is still a problem because different business stakeholders have different ideas of what business value means. A better approach is to base business value on the objectives in the lean portfolio section, which is what DA FLEX does.
  • Using relative numbers. Unitless measures should not be simply combined. They don’t mean the same thing. For example, suppose business value ranges from 100 to 400 dollars while time criticality has high variance of 1 to 10. A high time criticality item could come out on top even if it has lower business value.
  • Using effort instead of time. There are two challenges with this. First, considering effort takes us out of lean thinking, which focuses on time not effort. More to the point, cost of delay is about delay not effort and the two are not always correlated. Team size could slow down or speed up delivery.

Beyond this, using WSJF on epics and features does not make sense. One of Don Reinertsen’s most valuable pieces of advice is “If you only quantify one thing, quantify the Cost of Delay.” This means you should look at the loss of value realized that you incur because of a delay. If a release is delayed by two months, and the value we would realize is $100,000 a month, then the cost of delay is $200,000.

The point is that WSJF should only be applied to items that will realize value when released. WSJF is a great method of sequencing the work to be done based on cost of delay but only if those items have realizable value. If a feature does not provide customer value, then by definition, there is no cost of delay. It might provide value in terms of feedback, but there is no cost of delay in realizing business value.

Thus, doing WSJF on features is meaningless because features that are not MBIs have no realizable customer value. Likewise, doing WSJF on epics ignores the fact that we’re not releasing the entire epic.

There is another problem. If our sequencing scheme can cause a focus on finishing features rather than finishing value that id deliverable and realizable. That is why we want to focus on Minimum Business Increments (MBIs). They provide a focus on value realized and this improves alignment.