Wastes caused by context switching
Data: Weinberg, Gerald M. (1992) Quality Software Management: Systems Thinking. Dorset House, p. 284. Chart: Chris Gagné

Wastes caused by context switching

Gerald Weinberg’s book “Quality Software Management: Systems Thinking”?is nearly 30 years old. While it’s not one of the most highly-read and recommended Agile classics, its the source of a frequently quoted table of data:

No alt text provided for this image

Weinberg, Gerald M. (1992)?Quality Software Management: Systems Thinking. Dorset House, p. 284.

Visualized as a graph, the waste caused by context switching really stands out:

No alt text provided for this image

Worse, the waste caused by project switching isn’t due only to the losses related to cognitive overhead. Failure to prioritize often leads to less revenue and even building the wrong product.

(Credit where credit is due: I first saw a version of the following illustrations presented by Jeff Sutherland, who adapted it from Henrik Kniberg. I’ve created new illustrations and expanded on them a bit. Update 17 August 2021: a video from Henrik Kniberg on this exact topic came across my LinkedIn feed; very much worth a watch!)

Let’s suppose your company wishes to ship three products: A, B, and C. To ship a product, a development team must complete tasks 1, 2, and 3 corresponding to that product:

No alt text provided for this image

Most companies are not very good at prioritizing work. As a consequence, the prevailing belief is:?“Everything is important. Get started on everything immediately!”?The traditional delivery timeline might look like this:

No alt text provided for this image

Depending on your software and how you break down your work, your roadmap probably looks like:

No alt text provided for this image

Either way, notice that we are interleaving each task and that products A, B, and C are ready at roughly the same time, several months after we started.

The Agile approach is very different. Instead, we proactively prioritize the work and focus on limiting our work in process:

No alt text provided for this image

There are at least three significant advantages to this Agile approach: lower cost, more revenue, and better product/market fit.

Lower cost of development

First, we lose 20% or more of our productivity in the traditional approach due to context switching waste. In this example, the company could go about twice as quickly if they switched to developing one product at a time instead of three.

No alt text provided for this image

More revenue, earlier

Second, it gets worse, though! Because we have nearly finished products B and C before finishing A, we had to do nearly three times the work (not including the context-switching waste) before we could ship Product A (in late May). Had we prioritized and focused, we would have been able to ship Product A in early February. Had we done so, we may have been able to collect revenue and feedback from our customers starting nearly four months earlier. In fact, the savings from not context-switching between projects may mean that we could ship products A, B,?and?C before we would have been able to ship just A in the traditional model.

No alt text provided for this image

Better product/market fit

Products are rarely independent, and building the wrong product can be costly. In this example, we believed before starting the work that the customer needed Product C. We took the Agile approach and built A (more valuable and/or cheaper) first. When we delivered A to our customers in early February, we learned that they liked it a lot and didn’t need C after all. Instead, they wanted us to work on D. We took February to finish most of B and get the initial prototypes for D built.

No alt text provided for this image

We can see that prioritization and focus serve everyone: developers, stakeholders, and customers.

Good prioritization is not a zero-sum game

Further, good prioritization is usually?not?a zero-sum game. Many stakeholders will argue aggressively for their product to be worked on right away (and it’s no surprise: they may even have a bonus tied to it being completed by a certain date). However, the waste caused by project switching and the cost of delay is so significant that failure to prioritize may make?all?stakeholders worse off. In this case, the stakeholders behind projects A, B, and C agreed to prioritize based on the cost of delay and?all?were better off than if they had insisted that everyone’s work be tackled at once.

What’s next? How to prioritize the work, coming soon.

Originally posted at https://approachperfect.com/agile-training/agile-fundamentals-waste-caused-by-context-switching/.

Vignesh Parthasarathy Purusothaman

Scrum Master | Team Coach | Agile Consultant

3 年

Unfortunately this is one of the unnoticed waste in many?organisation. As business demands many features are critical at the same time, it's important for organizations and teams to work on the project which? brings the best possible business value and benefit to organizations / customer.?

Brian Wills

Enterprise Agile Coach, ICP-Agile Coach, CLP, SAFe SPC6, CSM, CSPO with 14+ years experience in Agile Delivery

3 年

Important topic on context switching ... love that you've made the problem so visual. A picture is, indeed, worth a thousand words. I hope to speak less and draw more. :) Thank you for the great article, as always, Chris!

Travis Laborde

Software Development Manager at Paradigm

3 年

When ScrumBob was training us at FOA, he talked a lot about having the whole team working one story at a time. I thought he was crazy at the time, but I'm really starting to understand this as a goal. We will be attempting to make this "the norm" at Acelab if possible!

Kyle Walker

Director of IT—Principal Portfolio Architect

3 年

Great post, thank you! Content like this is going to trick me into following LinkedIn more closely!

Ennis Lynch

Self Actualized

3 年

I once shared with a PM about the cost of context switching to get him to chill out and let the teams work and he had the perfect PM reply: "I don't believe you" I guess when you have the power you can choose what you want to believe. What is it they say with Bayes? If you are 100% certain then no amount of evidence of any quality will change your opinion. You have to have some doubt. Context switching and incorrectly matrixed teams are killing the ability to execute well at large orgs.

要查看或添加评论,请登录

Chris Gagné的更多文章

社区洞察

其他会员也浏览了