Development and Enhancement
Barry W. Boehm, TRW Defense Systems Group
“Stop the life cycle-I want to get off!’’ “Life-cycle Concept Considered Harmful. ” “The waterfall model is dead.” “No, it isn’t, but it should be.” hese statements exemplify the current debate about software Iife-cycle process models. The topic has recently received a great deal of attention. The Defense Science Board Task Force Report on Military Software‘ issued in 1987 highlighted the concern that traditional software process models were discouraging more effective approaches to software development such as prototyping and software reuse. The Computer Society has sponsored tutorials and workshops on software process models that have helped clarify many of the issues and stimulated advances in the field (see “Further reading”). The spiral model presented in this article is one candidate for improving the software process model situation. The major distinguishing feature of the spiral model is that it creates a risk-driven approach to the software process rather than a primarily document-driven or code-driven process. It incorporates many of the strengths of other models and resolves many of their difficulties. This article opens with a short description of software process models and the issues they address. Subsequent sections outline the process steps involved in the May 1988
T
This evolving riskdriven approach provides a new framework for guiding the software process.
spiral model; illustrate the application of the spiral model to a software project, using the TRW Software Productivity Project as an example; summarize the primary advantages a n d implications involved in using the spiral model and the primary difficulties in using it at its current incomplete level of elaboration; and present resulting conclusions.
criteria for the current stage plus choice criteria and entrance criteria for the next stage. Thus, a process model addresses the
References: 1. F.P. Brookset al., DefenseScienceBoard Task Force Report on Military Software, Office of the Under Secretary of Defense for Acquisition, Washington, DC 20301, Sept. 1987. 2. H.D. Benington, “Production of Large Computer Programs,” Proc. ONR Symp. Principles of Productive Software Management, John Wiley & Sons, 1983. Belz, F.C., “Applying the Spiral Model: Observations on Developing System Software in Ada,” Proc. 1986Annual Conf. on Ada Technology, Atlanta, 1986, pp. 57-66. Boehm, B. W., and F.C. Belz, “Applying Process Programming to the Spiral Barry W