If we know what creates bureaucracy as well as complexity, we should be able to reduce it, shouldn’t we? Let’s explore this through a specific example.
If situation = X, then do Y: When we look at how instructions, processes, and software tools were written over the past two decades, we observe that the following writing style is overwhelmingly present: “If situation = X, then do Y”. This works really well for predictable situations, when we can say “if this is the situation, this is exactly what you have to do”. This hasn’t changed. In today’s complex environments, for reasons of efficiency, consistency, and low risk, this remains a highly valid technique. Operating bank accounts, the Internet, or next-day goods delivery wouldn’t work without it. However, what happens when this style is applied to situations that are difficult to predict or unpredictable?
Applying “If situation = X, then do Y” in complex environments: In complex environments, countless situations are difficult to predict. When this style is applied to such situations, all possible situations that can occur must be foreseen. Instructions or code has to be written and tested.
As this style had worked well when complexity as low, people thought “let’s use what has worked before. A few additional instructions or lines of code in my project cannot do much harm”. What was extremely difficult to see from the individual’s perspective was the huge growth of the number of instructions, process steps, and lines of computer code as well as the complex dependencies between them.
Eventually, environments were changing more quickly than the instructions, processes, and software tools could be updated. Users experienced crippling bureaucracy as one consequence. Architects and project managers could not understand the implications of the changes they had to implement. From their perspective, a common pattern of overwhelming complexity was observed.
Writing style for difficult-to-predict and unpredictable situations: There is an alternative style for difficult-to-predict and unpredictable situations. It works this way:
If situation ≈ X, here is the boundary within which to make decisions. Here is why we think it is beneficial for you, your team, and your clients.
When applied, a document that would have been 300 pages and required its first update by the time it was approved became 60 pages and did not have to be updated for a few years.
What you can do: When you write instructions, processes or software code, ask yourself: Is the situation predictable? Does the situation occur again and again?
Both answers are ‘yes’? → “If situation = X, then do Y”
Otherwise → “If situation ≈ X, here is the boundary…”
There is an exception to this: high-risk environments such as aircraft. While certain situations may rarely occur, there can be requirements for “If situation = X, then do Y” type of instructions. In such cases, extensive testing, training and/or drills are required.
Want to make a high-impact difference for your organization? Then propose a top-level policy along the lines of the solution above and a consistent format so readers can easily find the instructions in lengthy documents.
For more such techniques, feel free to contact the author.