Ways To Think About Work In Progress Inflation
Leopold makes the argument that business agility isn’t software agility [1].
It’s a very good argument.
Here’s a few ways to think about Leopold’s insight.
Most products are static. A pie is made, purchased, and consumed. As are most physical goods: toasters, fans, mattresses, tables and so on. Most goods leave a residue behind but their core essence is completed. A toaster will persist in the landfill unless it’s dug up later. Otherwise, it’ll go onto form a line in the geological strata.
Most virtual goods are static too. A lottery ticket, a podcast, a book, a brand marketing campaign, an episode of Avenue5. Most of these goods are shipped and then they’re effectively gone from their creators. They leave some residue behind. An episode of Avenue5 leaves behind rights to trade and manage. A podcast may be archived or a book may win an award. A lottery ticket may leave a trace of its payout. But, once its creator is done with it, it is done evolving. It tends to be very episodic.
A few products are dynamic. Software is made, purchased, and consumed: tools, games, websites, communication apps, content management systems, recommendation engines and so on. Unlike static goods, most of the time, the work continues on them long after they are initially shipped. Often the heavy work really starts once they’re shipped. Like static goods, most virtual goods also leave behind a residue long after they’ve been discontinued: a way of thinking, an expectation of how something should work because that is how it worked in the past, and, sometimes, the residue of rights to trade and manage. Its creators are rarely done evolving the product once its shipped.
Is it any wonder that organizations that ship both static goods and dynamic products have a hard time with the difference between business agility and software agility?
Complexity generally doesn’t accumulate in most environments that create static products.
Once a pie is created, sold, and consumed, it is effectively gone to the business. A residue from the pie may linger. A receipt. Revenue. Cost. A memory. That complexity doesn’t really accumulate in a way that scales. That is to say, the residue of selling a million pies isn’t a million times greater than selling 1 pie.
This is also true of a toaster. Once a toaster is consumed, it’s off the landfill. It’s effectively gone to the business. Out of sight. Finished. We’ll let future generations deal with it. Externalities? What externalities?
So in these environments, there’s a mental framework that you can ship it and forget it.
Episodic thinking begets episodic thinking.
Virtual dynamic goods are very different. Once shipped, they don’t disappear. They don’t melt into the balance sheet. Code doesn’t always just quietly run without any problems. Standards change. Libraries and dependencies, for better or worse, evolve. Each generation insists on repeating the mistake of combining data with style because it’ll be different this time and besides, you can’t stop us, and shut up. One company chooses to interpret standards in a slightly different (intentionally obtuse) way and it gives rise to a web browser that requires significant extra code just to display something properly. Information changes. Signals and symbols change [2]. We learn new things. We evolve.
The more code there is to maintain, the more complexity there is to maintain, and, often, there is a greater surface area for volatility. There’s more opportunity for entropy to get in and mess up the place. It’s there all the time. It’s a constant battle to keep software current and running well.
There’s one more concept to explain before we reach the climax argument: the connection between knowledge and distinctions.
If you visit Canada, and you see a tree, then it’s just a tree you saw in Canada. If it’s the first time you’ve seen a tree with needles instead of leaves, then you’ve learned the distinction between a tree with needles and a tree with leaves. Then maybe you get curious about Maple trees. If you don’t now the difference between different types of Maple trees in Canada, then they’re all just Maple trees. There are differences between a Sugar Maple tree and a Red Maple tree. Their lobes and bark are different, and Red Maples turn bright red in the Fall. There are Silver Maple trees, Boxelder Maple trees, Norway Maple trees, Paperbark Maple trees, Sycamore Maple trees, Amur Maple trees and so on. For most people who don’t have the knowledge to make the distinction between things, they all look the same to them. The more distinctions you know, the more you can see.
Likewise, for people who don’t know any better and can’t see the distinction between a dynamic virtual good and a static physical good, it all just looks the same to them.
And this may be a core causal root for Work In Progress (WIP) inflation in much of the economy.
Think of the enormous volume of communication overhead, confusion, and frustration that this might create.
If one thinks of features in software as pies or toasters, then one is going to experience a lot of frustration. The incremental unit of complexity in shipping the 1,000,000th pie is roughly the same as shipping the 100,000th pie. The unit of complexity for shipping the 500th feature may be many orders of magnitude greater than shipping the 50th feature. Complexity doesn’t evaporate. Imagine how many meetings happen every instant in the economy explaining this concept. Imagine how many cycles are burned repeating it.
For every individual who self-identifies as a stakeholder, they may or may not have the awareness that the reason why they aren’t getting their vision realized, even if in their experience they are generally right about everything [3], is because the carrying capacity of complexity, and the reality-aspiration interface, are hard bottlenecks. [4]
Ideas are cheap. Research has a cost. Work has more of a cost. Complexity is expensive.
The physics of this funnel assures there is always an accumulation of artifacts on the left side of the pipe. Artifacts is the most diplomatic way I can put it. Ideas. Stickies. Imitation. Agenda. Desire. Convenient Reasoning. Emotion. Politics. Objectives and occasionally…the well formed Hypothesis that begins with an If, has a Then in the middle, and ends with a period. Some people are trained to co-create with a well thought out strategy, one that has choices amongst weighted alternatives. Others are trained to come with an ordered list. The human default appears to be an incoherent random list and insist that it’s a vision. If you know enough then you can see the distinctions.
This is one way of thinking about WIP Inflation.
Leopold has good ideas about how to work through it.
It all begins with the fundamental point that business agility isn’t software agility.
[1] Leopold, K. (2018). Rethinking Agile: Why Agile Teams Have Nothing to Do with Business Agility. LEANability GmbH.
[2] Feldman, M. S., & March, J. G. (1981). Information in organizations as signal and symbol. Administrative science quarterly, 171-186.
[3] March, J. G. (2010). The ambiguities of experience. Cornell University Press.
[4] This would still be the case even in a hyper-idealized world in which somebody has 100% accurate judgement about the effectiveness of every single node and edge in a system.