Information Technology Reference
In-Depth Information
The problem of complexity in large programs is reinforced in
an article by John Garman, former deputy chief of NASA's
Spacecraft Software Division, reporting on the delayed first
launch of the shuttle orbiter:
The development of avionics software for the
Space Shuttle is one of the largest, if not the
largest, flight software implementation efforts
ever undertaken in the nation. It has been very ex
pensive, and yet it has saved money, saved sched
ule, and increased design margins time and time
again during the evolution of the Orbiter and its
ground test, flight tests, and finally the STS1 mis
sion. Since computers are programmed by hu
mans, and since “the bug” [that delayed the first
launch] was in a program, it must surely follow
that the fault lies with some human programmer
or designer somewhere—maybe! But I think that's
a naive and shortsighted view, certainly held by
very few within the project. It is complexity of de
sign and process that got us (and Murphy's Law!).
Complexity in the sense that we, the “software in
dustry”[,] are still naive and forge into large sys
tems such as this with too little computer, budget,
schedule, and definition of the software role. We
do it because systems won't work, can't work,
without computers and software.
(From The Limits of Computing, p. 113. This
quotes John Garman in Edward J. Joyce, “Is
ErrorFree Software Achievable?” Datamation ,
February 15, 1989, p. 9.)
Of course, space shuttle software represents an extreme of very
high complexity. Issues related to size and complexity arise in
smaller projects as well. Here are some common examples:
The addition of features to software requires both code for the in
dividual features and code to coordinate those features with pre
vious features. Thus, new features can compound complexity.
Changes or adjustments to existing capabilities similarly af
fect both the algorithm for that material and coordination/ad
ministration. Because of interdependencies of features, work
on one capability can affect others.
Search WWH ::




Custom Search