Page 48 -
P. 48
CHAPTER
2 THE PROCESS
KEY n a fascinating book that provides an economist’s view of software and soft-
CONCEPTS
ware engineering, Howard Baetjer, Jr. [BAE98], comments on the software
common process Iprocess:
framework . . . . . . 23
component-based
development. . . . . 42 Because software, like all capital, is embodied knowledge, and because that knowl-
edge is initially dispersed, tacit, latent, and incomplete in large measure, software
concurrent
development. . . . . 40 development is a social learning process. The process is a dialogue in which the
knowledge that must become the software is brought together and embodied in the
evolutionary process
models. . . . . . . . . . 34 software. The process provides interaction between users and designers, between
formal methods . . 43 users and evolving tools, and between designers and evolving tools [technology]. It
is an iterative process in which the evolving tool itself serves as the medium for com-
4GT . . . . . . . . . . . . 44
munication, with each new round of the dialogue eliciting more useful knowledge
maintenance
activities . . . . . . . 21 from the people involved.
process maturity
levels. . . . . . . . . . . 24 Indeed, building computer software is an iterative learning process, and the
outcome, something that Baetjer would call “software capital,” is an embodi-
prototyping . . . . . 30
ment of knowledge collected, distilled, and organized as the process is con-
RAD. . . . . . . . . . . . 32
ducted.
software
engineering. . . . . . 20
QUICK What is it? When you build a building. One process might be appropriate for
LOOK product or system, it’s important creating software for an aircraft avionics system,
to go through a series of pre- while an entirely different process would be indi-
dictable steps—a road map that helps you create cated for the creation of a Web site.
a timely, high-quality result. The road map that What is the work product? From the point of view
you follow is called a ‘software process.’ of a software engineer, the work products are the
Who does it? Software engineers and their man- programs, documents, and data produced as a
agers adapt the process to their needs and then consequence of the software engineering activi-
follow it. In addition, the people who have ties defined by the process.
requested the software play a role in the software How do I ensure that I’ve done it right? A number of
process. software process assessment mechanisms enable
Why is it important? Because it provides stability, organizations to determine the “maturity” of a
control, and organization to an activity that can, software process. However, the quality, timeliness,
if left uncontrolled, become quite chaotic. and long-term viability of the product you build
What are the steps? At a detailed level, the process are the best indicators of the efficacy of the process
that you adopt depends on the software you’re that you use.
19