C
ontrol systems such as those used in satel-
lites, spacecraft, automobiles, chemical
processing plants, and manufacturing rely
heavily on the software that is used to im-
plement them. In fact, engineers at Boeing
Co. and Honeywell Inc. have estimated
that 60-80% of the development of a complex control system
is the software development effort, while only 20-40% is the
actual control system design. The
software effort includes program-
ming individual software modules
as well as writing code for commu-
nications between components.
Much of the software development
time is spent on making the
software stable and reliable, such as tracing possible haz-
ard conditions and inserting software fault protection
methods. When the operation of a control system is
highly critical due to human safety factors or the high cost
of failure in damaged capital or products, the software de-
signers must expend extra effort to validate and verify their
software before it can be released. In flight-critical opera-
tions, validation and verification are part of the flight certifi-
cation process.
Many new software technologies exist that can facilitate
the development and deployment of complex control sys-
tems. For example, component-based architectures [1], [2]
promote code reuse, thereby decreasing development and
validation time. Moreover, these architectures encourage
flexible “plug-and-play” extensibility and evolution of sys-
tems. Distributed object computing allows heterogeneous
components to interoperate across diverse platforms and
network protocols [3], [4]. Open
standards for software mean that
products from different vendors
can interoperate transparently to
the user. New advances are being
made to enable dynamic recon-
figuration and evolution of sys-
tems while they are still running [5], [6]. New com-
munication technologies are being developed to allow net-
worked embedded devices to connect to each other and to
self-organize [7].
Historically, there has been a disconnect between the
control engineers who design the controls and the software
engineers who implement them. A thorough understanding
of the methodologies used in both disciplines would make
the overall process more cohesive. This article gives a
February 2003 IEEE Control Systems Magazine 21
1053-5888/03/$17.00©2003IEEE
Heck (bonnie.heck@ece.gatech.edu), Wills, and Vachtsevanos are with the School of Electrical and Computer Engineering, Georgia Insti-
tute of Technology, Atlanta, GA 30332-0250, U.S.A.
By Bonnie S. Heck,
Linda M. Wills, and
George J. Vachtsevanos
JENE NELSON AT CN GRAPHICS INC.