In his Cynefin classification of system behaviours, Snowden (2007), posits that his Simple (Clear ) and even Complicated system categories are sufficiently understandable to be amenable to the traditional methods of system analysis and modelling. Here, relationships between entities in the system are clear and unambiguous and they behave predictably. So, we can build mathematical “models” to describe how the system is expected to function in different situations.
Leaving aside his fourth category, Chaotic, as too hard for the moment, this paper focusses on the third category, Complex systems. Yaneer Bar-Yam [1998] defined "complex systems" as systems that "have multiple interacting components, whose collective behaviour cannot be simply inferred from the behaviour of components."
So, the traditional system modelling approach of decomposition into components and attempting to build up a picture of system performance from individual pieces, alone, is no longer appropriate for this class. The problem is that most of the methods we currently employ, and particularly the methods that attempt to make the case that these systems are safe, (such as Fault trees, FMEA. and Root Cause Analysis), rely on this decomposition into components and attempt to make the parts more reliable individually. Even the more systemic approaches, such as Reason’s (1990) Swiss Cheese Model, and Leveson’s System Theoretic Analysis (STPA) (2004), encourage adding layers of protection, barriers, strengthened control loops and better safety critical systems, in the hope that they are making the systems safer. But without a valid model to test the effectiveness of these add-ons, we cannot be sure that they will not have an opposite effect, of making the systems even more complex, unreliable and unpredictable.
For complex systems, the careful gathering and documentation of system components and their relationships is still a necessary first step, but we need an additional capacity to model these complex systems to test out and prove they work safely and successfully in the real world. (not just draw fixed component relationships as system “models” (wiring diagrams))
In the last 10 years, an original approach developed by Hollnagel, (2012), to model systems as sets of interactive, interdependent “functions”, (abstracted from and independent of component details), has now been developed to the point where it can take the basic data and structures from the current component focussed system engineering “models”, such as MBSE( Goldberg (1994)), and can pull it all together in a dynamic system model from which analysts can discern how it really works in practice, and predict the emergent behaviours characteristic of complex systems.
The paper describes how this methodology developed and how it is currently used to model real situations, to analyse incidents and anticipate events.