Accidental Complexity
Jump to navigation
Jump to search
Is defined as complexity added by our approach and process as opposed to the inherent complexity of solving a given problem. (Brooks)
This term was introduced by Fred Brooks in "No Silver Bullet—Essence and Accident in Software Engineering" and, though he described it in term of creation of software, we find it is relevant in many aspects of product development and of organisational structures.
Brooks claims that complexity can be divided in two parts:
- Essential Complexity, i.e. the natural complexity of the problem and
- Accidental Complexity, i.e. the complexity that exists on top of the Essential Complexity because of the way we work.
In general, in most organisations, Accidental Complexity determines what we can achieve with our effort, and this is why, given the same problem to solve, some companies manage to be more successful than others.