"For every complex problem there is an answer that is clear, simple, and wrong." -…
Note: This article will be is part of the book Management 3.0: Leading Agile Developers, Developing Agile Leaders.
Ah, simplicity.
We all seem to want it, but we rarely seem to get it.
Many experts have discussed simplicity and complexity. But their contributions often confuse various terms, which hasn’t led to a simplification of the discussion itself.
Here is my attempt to clear things up a little…
What is simplicity?
Simplicity usually relates to the burden which a thing puts on someone trying to explain or understand it. Something which is easy to understand or explain is simple, in contrast to something complicated. – Wikipedia
If you’re going to discuss simplicity, it is important to know the difference between complex and complicated. Not knowing the difference means you might apply exactly the wrong approach to the right problem. (Or, the right approach to the wrong problem.)
I believe the difference needs to be explained using two dimensions. The first dimension is about the structure of a system, and how well we are able to understand it:
The second dimension is about the behavior of the system, and how well we are able to predict it:
The Structure-Behavior Model
My underpants are simple. I found it easy to understand how they work. But my watch is complicated. If I took it apart. it would take me a long time to understand its design and its components. And yet, neither my watch nor my underpants hold any surprises. (At least not for me.) They are ordered, predictable systems.
A three-person software team is simple too. It takes only a few meetings, dinners, and beers to get to know everyone on a team. A city is (usually) not simple but complicated. It takes taxi drivers years to know all its streets, alleys, hotels, and restaurants. And yet, both teams and cities are complex. No matter how well you know them, there will always be surprises. They are predictable to a degree, but you never know for sure what will happen tomorrow.
A double pendulum (two pendulums attached to each other) is also a simple system. It is easy to make and easy to understand. And yet, it undergoes unpredictable chaotic motion due to a high sensitivity to the initial setup of the pendulum. And stock markets are also chaotic. They are by definition unpredictable, or else everyone would know how to make money on stock exchanges, and the whole system would collapse. But, unlike pendulums, stock markets are also extremely complicated. The many different businesses and types of financial properties and transactions make them utterly incomprehensible for a simple guy like me.
Complicated refers to a system’s construction being too intricate to understand, unless you’re an expert, while complex and chaotic refer to a system’s behavior, which is unpredictable to a small or large degree.
What is complicated is not necessarily complex, like two cars in a garage. And what is complex need not be complicated, like two people in a bedroom. (But these people’s behavior in their bedroom can be quite unpredictable.)
Unfortunately, linearization is (in laymen’s terms) usually confused with simplification. And that’s where the complications start…
How Does This Differ From Other Models?
Cynefin is a model devised by knowledge management scholar David Snowden. It describes a typology of contexts using four domains: Simple, Complicated, Complex, and Chaotic, and is used to guide approaches to decision-making and policy-making.
However, Snowden doesn’t distinguish between the structure and the behavior of systems. This can make discussions a bit complicated (not complex).
Management professor Ralph Stacey created something similar, called the Agreement & Certainty Matrix. It shows Simple, Complicated, Complex, and Anarchy (Chaos) as four areas based in two dimensions: the degree of agreement and the degree of uncertainty.
This model suffers from the same problem. I don’t see complicated and complex as two discrete domains. Instead, I see them as parts of different dimensions. That’s why my Structure-Behavior Model identifies six domains instead of four. And some systems (like cities) can be both complicated and complex.
OK, Now We Can Revisit Simplification
I believe my Structure-Behavior Model is able to simplify discussions around simplicity, and to clear up some misunderstandings…
Everything should be made as simple as possible, but no simpler. – Albert Einstein
With this quote Einstein meant that a system must be made understandable, which means moving it vertically, from the top of the model to the bottom (simplification). However, his addition “but no simpler” maps to the behavior of the system. Einstein warned not to change the system horizontally, because that would change the kind of system (linearization.)
Simplicity is a myth whose time has past, if it ever existed. – Don Norman
In an inspiring article Don Norman discussed the value of having more features in a product, instead of fewer. More features means different behavior, and (often) also a different structure. In my diagram it is both a horizontal and vertical issue. (For example: Google just added Priority Inbox to GMail. This made GMail’s behavior more complex for me. It also complicated the user interface, but I still seem to understand it well enough.) Unfortunately, Don Norman used the term simplification both for linearization of behavior (horizontally) and simplification of structure (vertically).
And so Don complicated his message, which is exactly why many people didn’t understand him. Maybe it would have helped if Don had used pictures:
The goal of visual thinking is to make the complex understandable by making it visible, not by making it simple. – Dan Roam
In his bestselling book The Back of the Napkin Dan Roam suggests to use pictures to make things understandable by drawing pictures. He clearly refers to moving things from complicated to simple (vertically). However, his warning “not to make things simple” is, again, a confusion of terms. What Dan means is that pictures should not change the complexity (behavior, meaning) of something, because that would mess up people’s ability to predict what the pictures are trying to say.
And so…
Yes, by all means, simplify everything that is hard to understand!
But no, you may not want to linearize (“simplify”) something, because the reduced behavior of what you offer may not be what your user had expected.
Thanks for reading. I hope it was simple enough to understand.
Jurgen is an experienced author, trainer, and speaker. Why don’t you hire him to add some spice to your company event or seminar?
Twitter – Subscribe – Newsletter – LinkedIn – SlideShare
|
Latest, greatest and favoritest posts: When You Are Rejected Agile Is a Risk Management Strategy Where There's People, There's Problems |