Weighted Shortest Job First

Net Objectives has been doing Lean-Agile Software Development since about 2005.  When SAFe first came out we were delighted with its bringing into awareness many Lean principles that hadn’t been widespread. However, as SAFe has spread through the Agile world, its very success has required it to become more practice and defined-role based.  This has been necessary because of the large number of people who are trying to adopt SAFe who do not have the necessary 5-10 years of Agile at scale to do it based on principles.

Proper simplifications are key – but it must be understood that that is what they are.  Starting with SAFe out of the box has value for very large companies, but eventually, tuning of SAFe to the organization which is implementing it is required.

At Net Objectives we have our own Lean-Agile approach.  However, we also work with many people who are:

  • considering using it but don’t want to implement it out of the box
  • adopting SAFe but see the need for extending it or applying it better to their situation
  • using SAFe now and have lost momentum with its implementation

See Our approach to SAFe for more.

Background quotes

In the general case, give preference to jobs with shorter Duration and higher CoD, using Weighted Shortest Job First (WSJF) – SAFe website

If you only quantify one thing, quantify the Cost of Delay – Don Reinertsen

Mere is more value created with overall alignment than with local excellence. – Don Reinertsen

Essentially all models are wrong but some are useful – George Box

About WSJF

First the praise. SAFe has brought awareness to Weighted-Shortest-Job-First (WSJF).  In a nutshell, WSJF provides a method to:

  • Encourage smaller releases
  • Awareness that we need to attend to cost-of-delay when evaluating what work to do.  That is, how much money do we lose by not having something released in a timely manner.
  • Sequence work based on a consistent return-on-investment across where it is used

This can be used to provide a way to agree, across a program or portfolio, on what to work on first.  It is a foundational for alignment and managing our work in process.  When SAFe first came out it modified Don Reinertsen’s Weighted Shortest Job First in three ways (if you are not familiar with SAFe’s WSJF you can see a short video here).

Don Reinertsen’s version is: WSJF = Cost of Delay / Duration.

SAFe’s version is:  WSJF = (User:Business Value + Time Value + Risk Reduction (RR): Opportunity Enablement (OE) Value) / Job Size

SAFe calculates what is intended to be the equivalent of Cost of Delay by summing up their three values.  However, by normalizing the values in the numerator, errors can be introduced which may undermine the value of WSJF.  It also incorporates a shift from Duration (time based) to Job Size (effort based).  These have both advantages and disadvantages which I will get into later in this post.

The need for correction. I believe much of the rationale for these changes was to make it both easier to calculate WSJF and to create a one-size-fits all evaluation method. Ease of calculation may be worth the lower accuracy of the method to make it easier to get started.  But the Reinertsen’s cost of delay is calculated has the following consequences:

  1. This summation can over emphasize one or more of the components of cost-of-delay
  2. In some circumstances this can lead to improper sequencing and therefore have people lose faith in WSJF (which, done well, can be very useful)

WSJF’s value is not in automatically cranking out values, but rather in providing business stakeholders a way to discuss relative value of different work.  Flaws in its calculation, however, may make this more difficult as erroneous sequences, at times, will undermine confidence in the approach.  This can weaken the agreements for managing Work in Process (WIP) as different areas of the organization may not come to an agreement on the true order of importance. Although WSJF should just be used as a guide, it making as much sense as it can is useful.

This error caused by normalization can be easily corrected.  This can be done by not doing the normalization and providing relative weights for each factor in columns 2-4 in the tables above.

Coaches Corner re Normalization. The SAFe coach should decide whether the tradeoff of over-simplification to accuracy is worth it.  At a minimum, this is a factor worth keeping in mind when business stakeholders/proxies discuss the relative value of the items being sequenced.  By being aware of this over-simplification we can use it to discuss the issues involved.

Coaches Corner re Using Job Size as a Proxy for Duration.  SAFe acknowledges that it is using Job Size as a Proxy for Duration.  From the SAFe website:

… we do have to be careful about the proxy we chose for duration.  If availability of resources means that a larger job may be delivered more quickly than some other item with about equal value.

My concern about this is that we’re still in the mindset of ‘effort’ and not ‘time.’  After training people in the effort method they may be reluctant to switch to the true intention of Don Reinertsen’s WSFJ. By taking our focus off effort we put it on time-to-delivery which is where it should be.  A focus on effort often takes us down utilization thinking.  We want to be thinking in terms of time of value delivered.

Don Reinertsen’s WSJF will suggest that if item X were to take twice the effort as Y, could be done in the same time as item Y, then we should do X if it has more value than Y even if that amount is not twice Y’s.  This may be non-intuitive – but it highlights the point that it is time-of-delivery that is most important.

Coaches Corner re Effort as Proxy for Duration. It may very well be that starting with the proxy is the best approach. Many Agilists are already familiar with using story points as effort and not able to manage their work in process at the start which would enable a better focus. But it is important to realize that the proxy misses the real power of WSJF – using it to shift people’s thought process from effort to time.

Extending SAFe’s WSJF: Tying Cost-of-Delay to enterprise values

By ‘enterprise values’ I don’t mean things like integrity, our people, etc.  Those are good things.  Instead, I mean, what value we looking for our customers to realize from our efforts.  These are virtually always different for different industries.  For example, a financial company may find that its business values are based on: 1) retaining assets, 2) lowering costs, 3) customer experience, 4) compliance, 5) reducing risk.  While a not-for-profit organization that helps the homeless may have: 1) # of meals served, 2) # of beds used, 3) # of donations, 4) # of volunteers, 5) # of donors.

These values should be across the organization, not merely in a program or even a portfolio.   Doing this requires buy-in from business stakeholders.  But this can be achieved if one discusses SAFe from their perspective.  Most business stakeholders we’ve talked to understand these values and the strategic initiatives that emanate from them.  The aren’t interested in the mechanisms to achieve value as much as they want to realize business/customer value quickly, predictably, sustainably and with high quality.

One other step is to recognize that the values selected must be ranked in terms of relative importance.  That is, not all 5 values in the examples above are of equal weight.  The first may be 30%, the second 25%, with the last 3 being 15% each.  We recommend five factors (and certainly no more than 6) as that will cover almost all of the value factors)

Coaches corner

Extending WSJF to include the values of an organization can only be undertaken when business stakeholders are involved.  All too often SAFe starts well below this level (e.g., Essential SAFe).  But SAFe coaches need to understand the importance of this weighting so that they can look for opportunities to apply them and to improve discussions with the business side of the organization.


There has become a tendency to use SAFe out of the box.  There are advantages to this –  mostly that it achieves initial agreement more readily and is easier to understand.  It also starts where people are.  WSJF enables people to continue to use job-effort instead of the more effective time of delivery.  This can help overwhelming people during its adoption.  But it should be recognized that SAFe’s practices are often proxies for better methods and that at some point the simplified approaches introduced in SAFe training will only take you so far.  SAFe should be considered a framework within which you improve the practices that are in it.  This requires experienced coaches.