Complexity vs Lean

Complexity vs Lean, the Big ShowdownJurgen Appelo

Agile software development is (in part) based on the idea that software teams are complex adaptive systems (CAS), and many experts (like Jeff Sutherland, Jim Highsmith, Sanjiv Augustine, Joseph Pelrine) have borrowed terms from complexity theory (“self-organization”, “emergence”) to explain how software teams work. During a panel session at the Scan-Agile 2009 conference in Helsinki I asked panel members Mary Poppendieck (lean development) and Dave Snowden (complexity theory) what the difference is between complexity thinking and lean thinking.

Is there a difference? How do Complexity and Lean “see” each other? Unfortunately, due to some confusion, the question never got answered and the conference moved on. Afterwards Mary Poppendieck told me honestly that she didn’t really know how to answer that question. And maybe the other panel members had the same problem. Now I suggest that I try to answer that question myself. My upcoming book about complexity science and management of software teams has made me think a lot about topics like these. I think I have some interesting ideas that would lead to good discussions. Some examples:

Lean software development promotes removing waste as one of its principles. However, complexity science seems to show that waste can have various functions. In complex systems things that look like waste can actually be a source for stability and innovation; Lean software development preaches optimize the whole as a principle, and then translates this to optimization of the value chain. However, I believe that complexity science shows us a value chain is an example of linear thinking, which usually leads to sub-optimization of the whole organization because it is a non-linear complex system.

My suggestion is therefore to organize a talk and discussion where I present the concepts of complexity theory, and how this relates to Lean thinking. I will then try and “challenge” a few basic assumptions in Lean software development as a Devil’s Advocate. The audience will discuss the issues with me, and either they decide that my “challenges” don’t hold, or they agree with me and accept some nuance to the basic Lean principles.