Complexity Theory and SE - Department of Computer Science

advertisement
Sheard:Principles of Complex Systems for SE
Page 1 of 17
Principles of Complex Systems
for Systems Engineering
Sarah A. Sheard
Third Millennium Systems LLC
1027 Challedon Rd. Great Falls VA 22066
sheard@3MilSys.com (703) 759-2803
Copyright ©2006 Third Millennium Systems LLC. For INCOSE review only.
Abstract. This paper shows how three systems of types well-known to systems engineers can be
understood as complex systems, and what principles can and should apply to developing and improving
them. This is important because research in complex systems sciences is vibrant and provides critical
insight, but if systems engineers do not understand the “complex systems” aspects of the systems they
work with daily, they may not be able to interpret these research results as usable.
The three examples are INCOSE, the systems engineering process (such as a company’s standard
process), and air traffic control. INCOSE can represent most volunteer organizations and social groups.
The systems engineering process for a company, while familiar to most systems engineers, is a system
that most systems engineers do not realize is a network that can be studied by complex systems methods.
Air traffic control may come closest to many systems engineers’ definition of a system.
This paper presents principles of complex systems from a variety of sources, and shows the specific
application of one set of principles to one of the examples.
PREFACE
Systems engineering has evolved without much of a formal or theoretical background for its
practices; instead it has relied on experientially developed principles and heuristics. [Defoe 1993] [Rechtin
1991] [Rechtin and Maier 1997] Fortunately, research in the world of complex systems (known to some as
complexity theory) is creating that formal theoretical underpinning that systems engineering can begin to
utilize: to explain current practices, and to help model existing systems so that predictive explorations can
be made. If mathematical models can predict, for example, holistic performance characteristics, then
parameters of the system can be optimized via modeling, rather than by trying a number of possibly
wrong answers in developed hardware and software. Early determination of good parameters can help
keep systems engineering programs on track and avoid derailment due to late “surprises” and the
consequent ripple-effect rework that many such programs experience.
This paper presents a number of Complex Systems principles, selected for their applicability to the
development and use of man-made engineering-based systems, i.e., systems engineering.
INTRODUCTION
Systems engineers face complexity in the systems they design, in the environments with which the
systems interact, and in the organizations and economies that offer them employment. Understanding
complexity can help us learn how to improve our systems by understanding how complexity underlies
and affects the environments and the systems.
The recent book Complex Engineered Systems [Braha, Minai, and Bar-Yam 2006] and the papers
collected therein serve as a broad-based yet focused introduction to complex systems for systems
engineers. As complete as it is, this book is strong on theory, rather than on practical principles of system
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 2 of 17
engineering. Principles of complex systems and complex systems engineering (CSE) are proposed in the
many papers within, but not in a way that many systems engineers have the time to decode. Individual
systems engineers have learned about complex systems engineering through their academic encounters,
but they have not found a venue to discuss the application of these ideas to day-to-day work. Furthermore,
many of the principles being stated by the academics seem overly obvious to systems engineers, who
have already discovered them experientially; changes from more typical systems engineering has not been
explained well. This paper is intended to show examples and to condense such principles into a
capsulized summary suitable for broad INCOSE distribution. The hope is that after organizational rework
and review, this can grow into a chapter in the INCOSE handbook [Haskins 2006].
Systems-of-Systems. It should be noted that Systems of Systems is a topic of great interest to systems
engineers. The topic was originally defined by [M. Maier 1998]; activity related to Systems of Systems has
increased greatly in the last three years. The Department of Defense is now working on a Systems-ofSystems Engineering Guide that presumes there is a System-of-Systems program manager and chief
engineer. [DoD AT&L 2006] The Systems of System Center of Excellence [SOSECE 2006] initiated annual
systems-of-systems engineering conferences in 2005, with the military as sponsor and primary customer.
IEEE started offering annual Systems-of-Systems conferences in 2006. [IEEE 2006]
Systems of systems issues that differ from systems issues include:
 Integration of independently operational component systems that were built for other purposes;
 Rapid evolution of both user needs and system technologies, which precludes stable requirements;
 Multiple disparate stakeholders with conflicting needs and a lack of incentives to participate in the
system of systems;
 Distributed development and its consequent communication problems, and
 Dependence on an integrated computing infrastructure that has extremely high and increasing
complexity and therefore possibilities of unintended consequences.
Are systems of systems complex systems? The answer is yes and no. A system that has a program
manager and a chief engineer is by definition not a complex system. (See below: complex systems are
built of many independent interacting parts that are not managed by a central integrating body.)
However, many systems-of-systems issues are similar to complex systems issues. Ad hoc systems-ofsystems are pulled together at the last minute by operational personnel and do not have chief system
integrators nor a specific development period [Ferris 2006]. Most of these do qualify as complex systems.
BACKGROUND: COMPLEX SYSTEMS
Complex systems is a field of study that is rife with “overloaded” vocabulary. Words like Enterprise and
Architecture are given new meanings [Bredemeyer 2006] as understanding and technology evolve, and
each new meaning develops a following. Eventually the followers collide in an interdisciplinary task or
meeting. Those who hear other people using the same words tend to assume everyone means the same
thing, but in this case, since it isn’t true, each group ends up thinking the other side is being stupid (or has
a hidden agenda). It is unfortunately rare that such problems are headed off by a close examination of
vocabulary and meanings.
As an example, let us look at a use of the term “complex systems”: “All systems that systems engineers work on are complex. If they weren’t, they wouldn’t need to be systems engineered. Why are you
making such a big deal out of complexity when we all have worked with it forever? You must be trying to
make money.” The answer is that this paper is using a very specific meaning, that developed by scientists
doing research in the area of complexity theory and its follow-ons. This paper uses the word “complex
systems” as follows:
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 3 of 17
Complex systems are systems that do not have a centralizing authority and are not
designed from a known specification, but instead involve disparate stakeholders creating
systems that are functional for other purposes and are only brought together in the
complex system because the individual “agents” of the system see such cooperation as
being beneficial for them.
A reasonable and short background in chaos and complexity theory for the systems engineer can be
found in [Sheard 2005]. Other material from the INCOSE Systems Science Enabler Group, such as [Sheard
2006], is also supportive.
DETAILED DEFINITION OF COMPLEX SYSTEMS
The following detailed definition collates ingredients of definitions from INCOSE [Sheard 2006]
and [Haskins 2006], University of Michigan [UMich 2006], Clemson University [J. Maier 2006],
Mitre Corporation [Norman and Kuras 2006], and the New England Complex Systems Institute
[Bar-Yam TBD].
Definition of Complex Systems
1. Complex systems have many autonomous components, i.e., the basic building blocks are
the individual agents of the system
o
There are a large number of useful potential arrangements of their elements
o
The elements are heterogeneous (differ in important characteristics), i.e. have variety
o
The system boundary is often hard to pin down
2. The structure and behavior of a complex system is not deducible, nor may it be inferred,
from the structure and behavior of its component parts
o
Generally the behavior involves nonlinear dynamics, sometimes chaos, and rarely any
long-run equilibrium
o
Often the agents are organized into groups or hierarchies; in which case the structure
influences the evolution of the system (See Figure 1, from [Bar-Yam TBD]).
o
Such structures tend to highlight a number of different scales, any of which can affect
the behavior of the complex system.
3. Complex systems are self-organizing (show a decrease in entropy due to utilizing energy
from the environment)
4. Complex systems adapt to their environment as they evolve
o
In particular, as they evolve they continually increase their own complexity, given a steady influx
of energy (raw resources) and feedback among elements
o
Their elements change in response to imposed “pressures” from neighboring elements
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 4 of 17
5. Complex systems are non-deterministic, i.e., exhibit unpredictable behavior, including
chaotic behavior under certain conditions
6. Complex systems display emergent macro-level behavior that emerges from the actions and
interactions of the individual agents
7. Complex systems can be said to encompass not only one or more system “artifacts” but also
the designers and users of the artifacts, in an open DAU system. Figure 2, from [J. Maier
2006] (used with permission), shows this Designer-Artifact-User system and the relationships
among components.
Figure 1. Complex Systems, from Bar-Yam [Bar-Yam TBD]
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 5 of 17
Figure 2. Generic Designer-Artifact-User (DAU) system in context
DEFINITIONS APPLIED TO EXAMPLES OF COMPLEX SYSTEMS
We will look at the following three examples of complex systems and compare them to the definition of
complex system and the principles for engineering complex systems.
 INCOSE
 The systems engineering process within a company
 The National Airspace System (air traffic control system)
Systems engineers should be familiar with most of these.
Table 1 shows that all three examples have all attributes listed above and therefore that these are
complex systems as defined above.
Table 1. Complex System Examples
Autonomous
interacting
parts (agents)
INCOSE
Members, CAB companies,
working groups, chapters
SE Process
Process activities, SE
artifacts
National Airspace System
Airlines, airplanes, airports, air
traffic controllers, databases, flying
public, navigation aids, pilots,
transportation security, towers, etc.
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Fuzzy
Boundaries
Structure
Selforganization
(emergent
order)
Can’t design
or run topdown
because...
Nonlinearity
Structure not
deducible
from
structure of
component
parts
Energy in and
out
(examples)
Adaptation to
surroundings
(environment)
Become more
complex with
time;
increasingly
specialized
Page 6 of 17
INCOSE
Who in CAB does it include?
What about various crossorganizational joint efforts?
SE Process
Interfaces with
program management
and with software are
particularly fuzzy.
Also, company vs.
customer process;
many more.
Hierarchical formal
governance, plus informal
Members form interest groups
and chapters; also groups of
friends
Policies, auditing,
change boards
Process activities slip
until another activity
frees up a resource to
perform them
Interactions with
other changing
processes; no one
group understands all
the activities or
rationales.
Small errors in
requirements can
destroy program
progress, particularly
when discovered late.
How activities are
laid out in a process
is not related to the
structure of the
activities or how they
are documented
Process change
boards eliminate lowvalue activities
Volunteer organization; SEs
don’t try to fit into
predetermined boxes;
technology and competitors
evolve (e.g. software-intensive
systems, SOSs)
Number of attendees at a
conference varies significantly from year to year for
reasons not linearly related to
conference price.
As with any social institution,
structure is not tied to human
bodies
Member dues and fees paid by
members from personal or
company funds. Members
bring energy to INCOSE
cause.
INCOSE meetings compete
for members with IEEE,
AIAA, and other groups, for
example by creating
certification program.
Multiplying and specializing
working groups; governance
structure includes positions
not imagined 10 years ago;
certification and certification
preparation courses
SE process takes up
the slack where other
processes fall short;
adapt to changing
standards (CMMI).
Create specialized
processes for various
kinds of programs
(large, small, ITintensive, military,
fixed-price).
National Airspace System
Rules for handoffs and sharing of
passenger data among various
countries; relationship to airlines, e.g.
can the NAS require airlines to put
equipment such as data transceivers
on airplanes so that air traffic control
can be more reliable? Frequent flier
programs involve hotels, etc.
Regulations, certification, laws
Airlines prefer hubs for maintenance
and operational economies;
competition forces fares to similar
structures
Airlines can go out of business, buy
each other, or go bankrupt. Airlines
compete on flight routes. Oil prices
are essentially uncontrollable. Potential passengers respond differently to
various ticket pricing schemes.
Reducing the flight time between
cities (or ticket price) a small amount
(to below competitors’) can increase
an airline’s number of passengers
greatly.
Patterns of jet flight (air routes,
VFR/IFR rules, hubs, weather
delays) are not determinable from the
structure of aircraft or even airports.
Jet fuel, public demand for
transportation, stockholders fund
airlines, fees fund government;
military supplies trained pilots, pilots
retire...
Take new security measures in the
face of terror threats. Build new
airports with environmental safeguards. Airplanes bought from
competing airplane manufacturers.
Rapid evolution to stay ahead of
terrorists. Choose bigger airplanes
for popular routes. Offer new
frequent-flyer privileges; airline
personnel specialize jobs, e-tickets,
passenger data requirements...
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Elements
change in
response to
imposed
pressures
from
neighboring
elements
DeveloperArtifact-User
(DAU) system
components
Page 7 of 17
INCOSE
Members may change their
working group participation
depending on who else is in it;
chapters improve to earn
chapter awards, members
write papers using previous
papers as sources.
SE Process
Later activities must
shorten if earlier
activities run long.
SEs delay new steps
if earlier steps are not
resolved or anomalies
are found.
D: Members (same as users)
A: Working group structures,
processes for submitting and
reviewing symposium papers;
U: Members, paper presenters,
participants in working
groups, elected and appointed
officials.
D: Systems
Engineering process
group (at least , the
description of the
process)
A: Process
descriptions (usually
on-line, can be paper)
U: Those who enact
the process. Also,
managers and
receivers of metrics.
National Airspace System
Airports designated as hubs by
airlines can build new terminals and
even runways. Airlines adjust prices
depending on other airlines’ pricing
structures. Flying public adjusts
travel plans or ticketing procedures
(e.g. back-to-back tickets take
advantage of supersaver fares for
work trips).
D: Companies who build systems to
be used for air traffic control.. FAA
acquisition organizations.
A: Air traffic control software and
hardware systems. Data recorders,
navigational aids, communications
devices, airplanes, jetways, baggage
loaders, runways, runway
information.
U: Flying public, pilots, homeowners
(noise levels), employees of airlines
and FAA, many others.
COMPLEX SYSTEMS SCIENCE
Key concepts of Complex Systems science are: [Sheard 2006]
1. Emergence: Emergence is related to the dependence of the whole on parts, the
interdependence of parts, and specialization of parts. While studying the parts in isolation
does not work, the nature of complex systems can be probed by investigating how changes
in one part affect the others, and the behavior of the whole.
2. Pattern formation: simple mathematical models capture pattern formation such as local
activation / long range inhibition.
3. Multiple (meta-) stable states: Small displacements (perturbations) lead to recovery, and
larger ones can lead to radical changes of properties. Dynamics do not average simply.
4. Multi-scale descriptions are needed to understand complex systems. Fine scales
influence large scale behavior.
5. It is difficult but not impossible to answer the question "How complex is it?"
6. Behavior (response) complexity: To describe the behavior of a system we try to describe
the response function: actions as a function of the environment. However, unless simplifying
assumptions are made, this requires an amount of information that grows exponentially with
the complexity of the environment.
7. Contrasts. Complex systems often exhibit contrasting characteristics, including simplicity
and complexity, order and disorder, random and predictable behavior, repeating patterns
and change
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 8 of 17
8. We cannot predict what a complex system will evolve into.
The complex adaptive systems cycle is shown in the first column of Table 2. [Gell-Mann 1994] The other
three columns show how our example systems evolve in accordance with this cycle.
Table 2. Complex Adaptive Systems Cycle Applied to Examples
Example:
CAS Cycle:
I. Coarse graining of
information from the
real world
II. Identification of
perceived regularities
INCOSE
Understand systems
engineering as practiced,
and abstracting enough to
create principles and
advice
Identify repeated patterns
in SE work
III. Compression into a
schema
Create principles and
guidance, possibly as
standards
IV. Variation of
schemata
V. Use of the schema
Seek review of guidance
from multiple places
Communicate guidance
and standards to members
CAB member companies
choose which activities to
include in their systems
engineering and choose
which standards to use and
support.
VI. Consequences in the
real world exerting
selection pressures that
affect the competition
among schemata
SE Process
Understand what is being
done on projects
Note similar activities
done by systems engineers
to engineer systems
Document practices as
activities, and order
abstracted versions into a
typical process
Programs tailor
standardized processes
Programs use tailored
processes
Programs do better or
worse depending in part on
how much SE is done and
how well...this gets back
to the SE process group
and successes are captured
National Airspace
System
Extract needs from
multiple ATC customers
Identify requirements for
the next generation ATC
system.
Write operational and
requirements documents
Use multiple systems, at
least old and new
Put new systems in action
alongside old systems
Only go to new system if
controllers can manage it
and it’s better, or at least
not obsolete and not
worse.
DIFFERENCES BETWEEN SE AND COMPLEX SYSTEMS
ENGINEERING
[Norman and Kuras 2006] provides the following table (what this paper calls systems engineering they
call “traditional systems engineering,” and they call complex systems “enterprises”). Table 3 is completely consistent with the concepts used in this paper and should be considered part of the paper’s
premises.
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 9 of 17
Table 3. Comparing Traditional SE (TSE) and Complex Systems Engineering (CSE)
TSE
CSE
Products are reproducible
Products are realized to meet pre-conceived
specification
Products have well-defined boundaries
Unwanted possibilities are removed during the
realizations of products
External agents integrate products
Development always ends for each instance of product
realization
Product development ends when unwanted possibilities
are removed and sources of internal friction (competition
for resources, differing interpretations of the same
inputs, etc.) are removed
No two enterprises are alike
Enterprises continually evolve so as to increase their
own complexity
Enterprises have ambiguous boundaries
New possibilities are constantly assessed for utility and
feasibility in the evolution of an enterprise
Enterprises are self-integrating and re-integrating
Enterprise development never ends – enterprises evolve
Enterprises depend on both internal cooperation and
internal competition to stimulate their evolution
PRINCIPLES OF COMPLEX SYSTEMS ENGINEERING
Complex Systems Engineering. This section looks at what principles apply to the engineering
of complex systems. First, it is important to note that systems engineering, which traditionally
looks at solving a specified problem with a design and then a solution, has many overlaps with
complex systems engineering, which looks primarily at identifying complex systems that already
exist and their ongoing evolutionary trends, and then affecting those trends in a way that will
provide more useful results. Figure 3, adapted from [Hybertson 2006], shows three types of
principles that apply to [traditional] systems engineering and complex systems engineering:
1. Different in kind
2. Different in degree
3. Common to all
1a
1b
SE
CSE
2a
2b
SE
CSE
3
Unified Foundation: Common characteristics
Figure 3. Principles of SE vs. Complex Sytems Engineering
adapted from [Hybertson 2006]
In the bottom block (3. Common to all) fall the basic principles of systems engineering that can
be used as-is in the development of complex systems. In the middle block (2. Different in
degree) are principles of systems engineering that can be used only with extension when
looking at complex systems. The DOD SOSE guide mentioned above [DoD AT&L 2006] focuses
on this block, in that its scope is only the adaptations of general systems engineering guidance
for single large programs developing systems of systems. Another good guide to such practices
is a cost model for systems of systems, called COSOSIMO; see [Boehm 2006].
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 10 of 17
The top block (1. Different in kind) addresses those principles that are not common between systems
engineering and complex systems. For the systems described in this paper, it can be argued that block 1a
(the left block) is the null set; i.e. all of the principles of systems engineering apply to these complex
systems, since the complex systems are composed of systems that are described by systems engineering.
However, block 1b (the right block) is not the null set. There are principles of complex systems
engineering that are different in essence from systems engineering.
This may seem to cast aspersions on systems engineering. Some people, including the author, have
long seen systems engineering as the theory of everything; therefore there is nothing that does not fall into
its purview. However, it is not a negative reflection on systems engineering at all. Mark Maier’s argument
over ten years ago for denoting certain systems “systems of systems” was that the principles that apply
differ, between systems and systems of systems [M. Maier 1998]. Using the same argument, which is
additionally appropriate since those systems-of-systems principles are for the most part applicable to
complex systems, the difference in name between “systems engineering” and “complex systems
engineering” is justified because of the principles that do fall into block 1b.
The existence of block 1b should be considered good news. The industry is currently suffering from
too-consistent failure of programs created to develop large systems, systems of systems, or complex
systems. Principles in block 1b present hope: hope that there are more things we can learn and
institutionalize so that we can approach these large systems differently and now begin to succeed.
Without this block we would be restricted to doing more of the same, perhaps with more control and more
discipline; yet there is no indication that such an approach would be successful. With this block we can at
least look to additional principles and see what else there is to combine with what we are already doing.
Regimen for Complex Systems Engineering. The most succinct description of the principles for
complex systems engineering is called the Regimen for Complex Systems Engineering [White 2005],
[Norman and Kuras 2006]. The regimen consists of eight CSE activities:
A. Pay explicit and conscious attention to the development environment
B. Shape development during operations
C. Identify outcome spaces, not specific outcomes
D. Establish rewards (and penalties)—incentives for components to make decisions that
cause the complex system to enter the targeted outcome spaces
E. Judge actual results
F. Apply developmental stimulants
G. Characterize continuously (measure current condition; but be careful not to result in
removal of variety)
H. Enforce safety regulations (police the complex system via vetting, processes that ensure
offline/online/inline, etc.)
(Note: the letters A-J are this author’s and are for identification only; these 8 steps are not sequential.)
Additional points made in [Norman and Kuras 2006] include:
I. Developmental precepts (Establish business rules of interactions)
J. Duality (Understand that development and operations are never entirely separate for complex
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 11 of 17
systems: manage the relationship among developers, artifacts, and operators).
This regimen requires one to the system as a complex system, as in the three previous examples.
However, in a workshop to assess whether this regimen would have applied to programs previously not
seen as complex systems, all of the regimen principles would have applied, or might have applied, to most
of the programs, in a manner that varied from strongly applicable (items A, B, C, F, G, H) to moderately
applicable (D and E). (I and J were not included in the first version.)
Other principles. Other principles for systems engineering follow; some principles are implicit
in statements of challenges. First are given six sets of principles copied or adapted from single
sources; last is a collation of individual principles from one source each.
1. Challenges of engineering complex systems (INCOSE SSEG): [Sheard 2006]




Loosely-structured organization. Complex systems are coalitions of entities that can
be neither commanded nor controlled, needing new management paradigms for
incentives, allocation, monitoring, and adapting in systems where those working
together may never have met.
Multiple stakeholders.
Information and knowledge management.
Distributive and collaborative environments.
2. Challenges of complex systems of systems (INCOSE) (adapted from [Haskins 2006])

System elements operate independently; System elements have different life cycles;
SoS engineering is never finished (due to evolution and changes); Fuzzy boundaries
cause confusion...no one controls the definition of the external interfaces; and
Complexity is a major issue. Answer: These are standard complex systems
descriptions, but hard to handle with traditional systems engineering

The initial requirements are likely to be ambiguous; and SOS Engineering is never
finished. Answer: Both are true, so the system will have to evolve.

Management can overshadow engineering. Since each system element has its own
product/project office, the coordination of requirements, budget constraints,
schedules, interfaces, and technology upgrades further complicate the development
of SOS. Answer: this is a major problem if you try to run the engineering of complex
systems with traditional, efficient, control-oriented systems engineering.
3. The Logic of Complex Systems Engineering, from [Minai 2006]

Local action, global consequences: Determine [and then exploit] local interactions
that lead to a desired global behavior via self-organization.

Expect the unexpected.
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 12 of 17

The inherent uniqueness of individual systems: Conformity is not often a virtue, and
novelty is not at all a vice.

Ensure redundancy and degeneracy at all levels

Allow for off-label utilization of modules

Opportunistically leverage the combinatorial explosion

Provide robustness-by-structure
4. Improving the rate of innovation (adapted from [Norman and Kuras 2006])


Entities (components of complex systems) should be in touch with one another for extended
periods of time
Entities’ pulse time should be reduced as much as possible

Value must be assessed correctly, and by appropriate parties



Assessed value must impose selective pressure
Layers should be established based on likely rate of change
Set up playgrounds where innovation can follow Discovery, Competition (Game), Codification, and Practice phases.
Nurture collaborative environments
Encourage partnerships
Encourage voluntary participation in the complex system
Allow “rice bowls” in the technical approach
Create opportunities for small-world phenomena to emerge: loose connections; advertising
and discovery
Permit “value-add” business models (as opposed to employer/contractor and sale of engineering hours), e.g. payment by use: money flows to those who produce demonstrated value
to the user.
Coopetition: create a marketplace. Creating value is inherently cooperative; capturing value
is inherently competitive.







5. Approaches for engineering complex engineered systems [Anderson 2006]
o Bottom-up simulation (bottom-up design)
o Top-down engineering (top-down design)
o Analogy and mimicry (archetypal, prototypal, inspirational)
o Interactive evolution (evolution, only with specific humans evaluating fitness)
Anderson suggests the following decision tree for selecting among these methods:
1. Is it possible to define an objective/fitness function mathematically? (In other
words, do you know what you are looking for?
 Yes: Go to Question 3
 No: Go to Question 2
2. Can system-level behavior be realized in real time?
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 13 of 17


Yes: Interactive evolution is a strong possibility
Either a slow, probably frustrating process of hand-tuning parameters or
systematic search through state space is likely involved, or a technique such
as open-ended search.
3. Is there a known analogous system?
 Yes: Emulate known system, tweaking and modifying as necessary, possibly
using evolutionary computation to parameterize system
 No: Go to Question 4.
4. Does the system involve or require multiple hierarchical levels, or is amenable to
their introduction? (in other words, can we chunk?)
 Yes: some element of top-down engineering may be possible; likely, in
conjunction with bottom-up modeling
 No: bottom-up modeling, adopting some of the general principles
expounded in the literature may work.
6. Project management principles to mitigate problem-solving oscillations [Mihm 2006]

Stop and re-start after system has diverged (reviews and quality gates)

Freeze the specification of second-priority components

Satisfice (forgo last bit of local component performance improvement)

Design components for partial system optimization (optimize bigger system chunks)

Immediate communications broadcasts of specific component change information to
specific areas with strong dependence

Exchange preliminary information

Introduce a coordinating hierarchy
Other principles


Build on sociological knowledge (INCOSE panel discussion).
The smarter our systems get, the more models of SOS collaboration are likely to be, or should
be, based on sociological and group dynamics constructs. “...thinking that traditional SE methods
and techniques are sufficient to meet SOS development and evolution challenges is naïve at best,
definitely risky, and probably dangerous. [Pohlmann 2006]
Building a system of systems is not that different from managing an organization, formal or
informal. Recruit support from existing systems. Acknowledge that every system has its own
motivations and goals. Study management and political science to learn how to do it right. [Abbott
2006]
Ashby’s Law of Requisite Variety: In order to achieve complete control, the variety of actions a
control system can execute must be at least as great as the variety of environmental perturbations
that need to be compensated. ... “For example, in order to make a choice between two
alternatives, [a control system] must be able to represent at least two possibilities, and thus one
distinction. From an alternative perspective, the quantity of variety that the model system or
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 14 of 17
controller possesses provides an upper bound for the quantity of variety that can be controlled or
modeled.” (based on [Heylighen 2006] and links therein)
Analyze man-made networks (e.g., SE process networks) using network analysis tools in order
to determine how to tweak them to advantage. (based on [Braha and Bar-Yam 2006] and [Valnerde
2006]).
Simulate multi-agent behavior to determine the best set of rules for your system of systems.
Explicitly impose variety on the system (this is the opposite of standardization and efficiency).
(based on [Kennedy 2003])
Establish the right kind of coordination. Coordination should be on a big enough scale to
perform the task, but not so big that you damage the independence of too many smaller-scale
elements. (based on [Bar-Yam 2006])
Focus engineering efforts and resources on (e.g., provide funding and technology support for),
and develop appropriate control and management strategies for, central product development
tasks. [Braha and Bar-Yam 2006]





CONCLUSIONS
It should be clear from the examples that the practice of systems engineering has many of the
characteristics of complex systems. Consequently, SE will evolve, and the goal of theorists and process
improvers should be to guide the evolution to a state of higher capability, which means more variety from
which to choose and therefore more complexity. To make use of one last principle:

To transition from doing SE to doing CSE (based on [Bar-Yam 2006])
1. Continually build on what already exists [It’s a complex system after all; it must
evolve] Evolution from scratch is slow; start from something close to what you want.
2. Focus on creating an environment and process rather than a product
3. Individual components must be modifiable in situ
4. Operational systems include multiple versions of functional components
5. Utilize multiple parallel development processes
6. Evaluate experimentally in situ
7. Gradually increase utilization of more effective components
Note: Effective solutions to specific problems cannot be anticipated
Of course, in building upon the systems engineering practices that already exist, systems engineers
should become more aware of the details and results of complex system (#1). INCOSE can contribute by
modifying itself to become the environment where systems engineers learn to use complex systems ideas,
and by reaching out deliberately to the complex systems research world (#2). It would be ideal if
processes for modifying SE practices, as captured by INCOSE (for example, [Haskins 2006] and
[INCOSE 2006]) were easy to update (such as a wiki) and frequently employed (#3).
#4 essentially means that multiple versions of good SE practices should be available and thus
compete against each other during the course of normal systems engineering practice. One way to enact
this is to build a set of complex systems practices, along the lines of [DOD AT&L 2006] but addressing
complex systems as “in scope,” make systems engineers familiar with them, and then see whether they
“win out” in the actual use scenarios compared to current systems engineering practices: Do they have
use? Are they more fit than non-CS practices? This last question is #6; #5 is actually a given, as we
already have many independent instances of systems engineering being performed simultaneously. Those
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 15 of 17
instances that are the most useful will then be performed most often, with the resulting increase in
capability of the systems engineering “system” (#7).
In this way we will be able to improve the effectiveness of systems engineering in ways we cannot
now anticipate.
REFERENCES
Abbott, Russ. “Systems of Systems: Whatever are we talking about?” Presentation to System of System
panel discussion, INCOSE symposium, 2006. [Abbott 2006]
Anderson, Carl, “Creation of desirable complexity: strategies for designing self-organized systems” in
Braha, Dan, Ali A. Minai, and Yaneer Bar-Yam. Complex Engineered Systems. Cambridge,
Massachusetts: Springer, 2006 [Anderson 2006]
Bar-Yam, Yaneer. Making Things Work. Boston, Massachusetts: NECSI Knowledge Press, 2004.
Bar-Yam, Yaneer. Figure. [Bar-Yam TBD]
Bar-Yam, Yaneer, “Engineering complex systems: multiscale analysis and evolutionary engineering,” in
Braha, Dan, Ali A. Minai, and Yaneer Bar-Yam. Complex Engineered Systems. Cambridge,
Massachusetts: Springer, 2006 [Bar-Yam 2006]
Boehm, Barry. “SoS vs. Systems Engineering: Activity Differences and Cost Drivers”, Presentation to
System of Systems Engineering Panel, INCOSE symposium, 2006. [Boehm 2006]
Bredemeyer, Dana and Ruth Malan. “Architecture Definitions.” Bredemeyer Consulting, 2006. Available
from http://www.bredemeyer.com/pdf_files/Definitions.pdf, 2006 [Bredemeyer 2006]
Braha, Dan, Ali A. Minai, and Yaneer Bar-Yam, eds. Complex Engineered Systems: Science Meets
Technology. Cambridge, Massachusetts: Springer NECSI, 2006.
Braha, Dan, Ali A. Minai, and Yaneer Bar-Yam, eds. Complex Engineered Systems: Science Meets
Technology. Cambridge, Massachusetts: Springer NECSI, 2006. [Braha, Minai, and Bar-Yam 2006]
Braha, Dan and Yaneer Bar-Yam, “The Structure and Dynamics of Complex Product Design,” in Braha,
Dan, Ali A. Minai, and Yaneer Bar-Yam. Complex Engineered Systems. Cambridge, Massachusetts:
Springer, 2006. [Braha and Bar-Yam 2006]
Defoe, J. C. “An Identification of Pragmatic Principles-Final Report, Version 0”. Seattle, Washington:
International Council on System Engineering, 1993. [Defoe 1993]
DOD AT&L. System of Systems Engineering Guide: Considerations for Systems Engineering in a
Systems of Systems Environment, Director, Systems and Software Engineering, Deputy
Undersecretary of Defense (Acquisition and Technology), Office of the Undersecretary of Defense
(Acquisition, Technology, and Logistics), Draft October 17, 2006. [DoD AT&L 2006]
duPreez, Lukas Johannes and Abraham Johannes Smith. “The Application of Complexity Theory in the
Development of Large-scale ICT Systems,” Proceedings of the Fourteenth International Council on
Systems Engineering Annual Symposium, Toulouse France, 2004.
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 16 of 17
Ferris, Timothy L. J. “Systems of systems engineering requires new methods if you are talking about new
kinds of systems of systems,” Presentation to System of System panel discussion, INCOSE
symposium, 2006. [Ferris 2006]
Gell-Man, M., “Complex Adaptive Systems”, in Cowan et al., Complexity, Metaphors, Models, and
Reality,” SFI studies in the Sciences of Complexity, New York: Addison-Wesley, 1994. Cited in [J.
Maier 2006], p. 134. [Gell-Mann 1994]
Haskins, Cecilia (ed.). Systems Engineering Handbook: A Guide for System Life Cycle Processes and
Activities. International Council on Systems Engineering, 2006. [Haskins 2006]
Heylighen, F. The Growth of Complexity. Available at http://pespmc1.vub.ac.be/COMPGROW.html.
[Heylighen 2006]
Hybertson, Duane, “What concepts of systems science support systems engineering?” Presentation to
INCOSE SSEG meeting, July 2006. [Hybertson 2006]
IEEE,
“2006 International Conference on Systems of Systems
http://ieeesose2006.ece.unm.edu/sose_2006_cfp.pdf. [IEEE 2006]
Engineering,”
INCOSE,
Guide
to
the
Systems
Engineering
Body
of
Knowledge,
http://www.incose.org/practice/guidetosebodyofknow.aspx [INCOSE 2006].
website
available
at
at
Kennedy, Michael N. Product Development in the Lean Enterprise: Why Toyota’s System is Four Times
More Productive and How You Can Implement It. Richmond, Virginia: The Oaklea Press, 2003.
[Kennedy 2003]
Klein, Mark, Hiroki Sayama, Peyman Faratin, and Yaneer Bar-Yam, in Braha, Dan, Ali A. Minai, and
Yaneer Bar-Yam, eds. Complex Engineered Systems: Science Meets Technology. Cambridge,
Massachusetts: Springer NECSI, 2006 [Klein 2006]
Maier, Jonathan R. A. and Georges M. Fadel. “Understanding the Complexity of Design.” in Braha, Dan,
Ali A. Minai, and Yaneer Bar-Yam, eds. Complex Engineered Systems: Science Meets Technology.
Cambridge, Massachusetts: Springer NECSI, 2006. [J. Maier 2006]
Maier, M. W., Architecting Principles for Systems-of-Systems, Systems Engineering, 1:4, pp 267-284,
1998.
Mihm, Jürgen and Christoph H. Loch, “Spiraling out of control: Problem-solving dynamics in complex
distributed engineering projects,” in Complex Engineered Systems, Braha, Dan, Ali A. Minai, and
Yaneer Bar-Yam. Cambridge, Massachusetts: Springer, 2006. [Mihm 2006]
Minai, Ali A., Dan Braha, and Yaneer Bar-Yam. “Complex Engineered Systems: A New Paradigm,” in
Complex Engineered Systems, Braha, Dan, Ali A. Minai, and Yaneer Bar-Yam. Cambridge,
Massachusetts: Springer, 2006. [Minai 2006]
Norman, Douglas O. and Michael L. Kuras. “Engineering Complex Systems.” in Braha, Dan, Ali A. Minai,
and Yaneer Bar-Yam, eds. Complex Engineered Systems: Science Meets Technology. Cambridge,
Massachusetts: Springer NECSI, 2006. [Norman and Kuras 2006]
Pohlmann, Lawrence D. “Is SE for SOSs Really Any Different? – Yes!! Qualitatively & Quantitatively.”
Presentation to System of System panel discussion, INCOSE symposium, 2006. [Pohlmann 2006]
Rechtin, Eberhardt. Systems Architecting: Creating & Building Complex Systems. Englewood Cliffs, New
Jersey: Prentice Hall, 1991. [Rechtin 1991]
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Sheard:Principles of Complex Systems for SE
Page 17 of 17
Rechtin, Eberhardt and Mark W. Maier. The Art of Systems Architecting. New York: CRC Press, 1997.
[Rechtin and Maier 1997]
Sheard, Sarah. “Practical Applications of Complexity Theory for Systems Engineers”. Proceedings of the
Fifteenth Annual International Council on Systems Engineering. (cd). International Council on
Systems Engineering, 2005. [Sheard 2005]
Sheard, Sarah. “Definition of the Sciences of Complex Systems.” INSIGHT (volume 9 #1). Seattle,
Washington: International Council on Systems Engineering, October 2006, p. 25. [Sheard 2006]
Systems of Systems Engineering Center of Excellence website at www.sosece.org. [SOSECE 2006]
University
of
Michigan.
“About
the
Science
of
Complexity”.
http://www.cscs.umich.edu/about/complexity.html, 2006. [UMich 2006]
Website
at
Valnerde, Sergi and Ricard V. Sole, “On the Nature of Design,” in Braha, Dan, Ali A. Minai, and Yaneer
Bar-Yam. Complex Engineered Systems. Cambridge, Massachusetts: Springer, 2006 [Valnerde
2006]
White, Brian E. “Engineering Enterprises Using Complex Systems Engineering.” Presentation at First
Annual Systems of Systems Engineering Conference, Johnstown PA, June 2005. [White 2005]
BIOGRAPHY
Sarah A. Sheard is the Principal of Third Millennium Systems LLC, in Great Falls, Virginia. In this
capacity she develops courses and other materials to help bring together the sciences of complex systems
with systems engineering. Ms. Sheard, an INCOSE Fellow, received the 2002 Founder’s Award for a
variety of INCOSE’s contributions, including publishing over 30 papers, chairing the Measurement
technical committee and the Communications committee, and serving as program chair and director of the
Washington Metropolitan Area chapter. Ms. Sheard has worked in systems engineering and process
improvement for 25 years, including satellite systems and air traffic control software systems.
Copyright ©Third Millennium Systems LLC; Draft Version for Review Only.
Download