Complexity is considered to be one of the major reasons change is hard. It is a common belief, not shared by the designers of Disciplined Agile, that complexity obscures what I can do. DA uses Dr. Eli Goldratt’s Inherent Simplicity that he outlines in The Choice. Inherent simplicity gives us a way to look at our systems in a well-defined manner. See Dealing with Complexity by Creating a Bias For Simplicity. But a greater enemy of both our workflows and our improvement methods are chaotic (non-linear) events.
Chaotic events are those where a small changes makes an unpredictable, large, reaction. The proverbial “straw that broke the camel’s back” is a great example. We must understand that in our workflow potential chaotic events are all around us – misunderstandings and program errors being two very common ones. We work to reduce the impact of these with quick feedback cycles. One could say that much of Agile is an attempt to eliminate chaotic events from happening.
In knowledge work, far more insidious than complexity are chaotic (non-linear) events, the coupling of events and the lack of visibility. These can be readily controlled. Virtually all disasters due to complexity are caused by a combination of these four factors – complexity, chaotic events, coupling and lack of visibility
Think of disasters caused by complexity as gun powder blowing up. Gun powder consists of a fuel (charcoal), an oxidizer (saltpeter or niter), and a stabilizer (sulfur) to allow for a constant reaction. Complexity represents the fuel. If you don’t provide the oxidizer and stabilizer then you won’t get an explosion.
You don’t need to manage complexity, you manage what makes complexity risky. Use feedback to mitigate the risk of chaotic events. Avoid coupling when possible but and always make it visible.
When we’re trying to improve our workflows we must attend to chaotic events as well. Making a change that seems obvious may, in fact, cause problems that are not seen until the damage has been done. Again, visibility and decoupling can help here.
Regardless of your approach, change via emergence is important. Make a change, see what happens and get an improvement or learn something to prepare for your next move.