Professional Documents
Culture Documents
Lessons
from Life
Anthony H. Dekker
Defence Science and Technology Organisation
DSTO Fern Hill
Department of Defence, Canberra ACT 2600, Australia
Email: dekker@ACM.org
Abstract. Recently there has been considerable debate as to whether Complex Systems can be
engineered. Can engineering techniques be applied to Complex Systems, or are there fundamental
attributes of Complex Systems that would prevent this? A first glance at the Complex Systems
literature suggests a negative answer, but this is partly due to the fact that complex systems theorists
often look for unstable, chaotic, and interesting behaviour modes, while engineers look for stable,
regular, and predictable modes. Looking more deeply at the Complex Systems literature, we suggest
that the answer is yes, and draw out a number of design principles for engineering in the Complex
Systems space. We illustrate these principles on the one hand by commonly-studied complex systems
such as the Game of Life, and on the other hand by real socio-technical systems. These design
principles are particularly related to properties of the underlying network topology of the Complex
System under consideration.
Keywords: Complex Systems, Systems Engineering, Software Safety, Network, Game of Life
Conways Game of Life (Sarkar 2000), and
secondly from a number of real-world examples.
1. INTRODUCTION
Is it possible to engineer Complex Systems?
This question has prompted considerable debate
(Wilson et al. 2007), although engineers have
been working with Complex Systems for many
years, and the problems that arise in todays
Complex Systems differ from those of the past
only in degree, not in kind. So-called Systems
of Systems are Complex Systems which are
particularly problematic because they:
involve a network of stakeholders, rather
than a rigid management hierarchy, so that
problem resolution requires negotiation;
require creative thinking when problems
arise;
need engineers to
conflicting objectives;
balance
multiple
2. COMPLEX SYSTEMS
Complex Systems are characterised by
interactions between system components that
produce emergent system properties. The study
of Complex Systems involves several
complementary viewpoints:
The Social Viewpoint focuses on human
aspects of systems (Heyer 2004, Checkland
1981). Many Complex Systems incorporate
a human component.
The Biological Viewpoint draws on the
study of complex biological systems
existing in nature, such as ecosystems and
even individual organisms (Sol and
Goodwin 2000). Biological and social
systems both involve adaptivity as
conditions change. As the philosopher
Heraclitus pointed out 2500 years ago,
change and adaptivity are ubiquitous, so that
you cannot step twice into the same
stream, since the stream is constantly
changing (Copleston 1946). It is important
to know the ways in which a system will
adapt and the implications of its doing so.
The Mathematical Viewpoint focuses on the
topology of the underlying network of the
Engineering
Viewpoint
Adaptivity
Complex
System
Biological
Viewpoint
Complex
Systems
Theory
Analysis &
Simulation
Mathematical Viewpoint
0
1
2
6
7
8
10
if din 1
log N
log din
if din > 1
50%
40%
Frequency
60%
30%
20%
Old
Cell
Live
Neighbours
New
Cell
Explanation
Birth
10%
0%
0
20
40
60
80
100
120
140
Period
No change
0, 1
Death from
isolation
2, 3
Survival
48
Death by overcrowding
Live
Neighbours
New
Cell
Explanation
Birth
0, 2
No change
Death from
isolation
Survival
Death by overcrowding
A
C
B
Figure 4: The Troublesome Triangle
Failure to coordinate inputs from components
A and B can result in incorrect behaviour by C,
and possibly system failure. Where A and/or B
have a human component, adaptation may
reduce the effectiveness of the coordination.
This can occur when people learn more
efficient short-cut procedures which rely on
assumptions which may not always be true
(Leveson 2004).
One example involving this troublesome
triangle was the tragic death of 71 people in a
midair collision over Ueberlingen in 2003
(Nunes and Laursen 2004). A contributing factor
to the collision was conflicting instructions to the
pilots from air traffic control on the one hand,
and the onboard Traffic Collision and Avoidance
System (TCAS) on the other. The overall system
did not contain mechanisms for coordinating or
resolving conflicts between air traffic control and
TCAS. Figure 5 gives a simplified view of this
system:
6. SOFTWARE SYSTEMS
Pilot 1
Air Traffic
Controller
TCAS 1
Collision
Inter-aircraft
communication
protocol
TCAS 2
Pilot 2
Land Component
Commander
Airborne
Cmd Element
Senior
Director
No Fly Zone
Controller
Enroute
and Helo
Controller
F-15 Pilots
Shoot down
AWACS
Sensors
Operator
Computer
Controls
Turntable
Starts
Patient
Modifies
Radiation
Beam
for
Black Hawk
Pilots
(2002),
Linked,
Perseus