2010

Model for Simulating a Spiral Software-Development Process

A prior model for simulating a waterfall process has been extended.

A discrete-event simulation model, and a computer program that implements the model, have been developed as means of analyzing a spiral software-development process. This model can be tailored to specific development environments for use by software project managers in making quantitative cases for deciding among different software-development processes, courses of action, and cost estimates.

A spiral process can be contrasted with a waterfall process, which is a traditional process that consists of a sequence of activities that include analysis of requirements, design, coding, testing, and support. A spiral process is an iterative process that can be regarded as a repeating modified waterfall process. Each iteration includes assessment of risk, analysis of requirements, design, coding, testing, delivery, and evaluation. A key difference between a spiral and a waterfall process is that a spiral process can accommodate changes in requirements at each iteration, whereas in a waterfall process, requirements are considered to be fixed from the beginning and, therefore, a waterfall process is not flexible enough for some projects, especially those in which requirements are not known at the beginning or may change during development. For a given project, a spiral process may cost more and take more time than does a waterfall process, but may better satisfy a customer’s expectations and needs.

Models for simulating various waterfall processes have been developed previously, but until now, there have been no models for simulating spiral processes. The present spiral-process-simulating model and the software that implements it were developed by extending a discrete-event simulation process model of the IEEE 12207 Software Development Process, which was built using commercially available software known as the Process Analysis Tradeoff Tool (PATT). Typical inputs to PATT models include industry-average values of product size (expressed as number of lines of code), productivity (number of lines of code per hour), and number of defects per source line of code. The user provides the number of resources, the overall percent of effort that should be allocated to each process step, and the number of desired staff members for each step. The output of PATT includes the size of the product, a measure of effort, a measure of rework effort, the duration of the entire process, and the numbers of injected, detected, and corrected defects as well as a number of other interesting features.

In the development of the present model, steps were added to the IEEE 12207 waterfall process, and this model and its implementing software were made to run repeatedly through the sequence of steps, each repetition representing an iteration in a spiral process. Because the IEEE 12207 model is founded on a waterfall paradigm, it enables direct comparison of spiral and waterfall processes. The model can be used throughout a software-development project to analyze the project as more information becomes available. For instance, data from early iterations can be used as inputs to the model, and the model can be used to estimate the time and cost of carrying the project to completion.

This work was done by Carolyn Mizell of Kennedy Space Center, Charles Curley of ASRC Aerospace Corp., and Umanath Nayak of Portland State University. For more information, download the Technical Support Package (free white paper) at www.techbriefs.com/tsp under the Information Sciences category. KSC-13094

This Brief includes a Technical Support Package (TSP).

Model for Simulating a Spiral Software-Development Process (reference KSC-13094) is currently available for download from the TSP library.

Please Login at the top of the page to download.

 

White Papers

Introduction to Hypervisor Technology
Sponsored by Curtiss-Wright Controls Embedded Computing
Tubing & Hose Buying Tips, Part 2
Sponsored by Newage Industries
Magnetics Design: Specification, Performance & Economics
Sponsored by Datatronics
Specialized Adhesives Withstand Thermal Cycling
Sponsored by Master Bond
Bearing selection for low-speed applications
Sponsored by Kaydon
White Paper: MIL-STD-1553 IP Cores - An Emerging Technology
Sponsored by Sealevel

White Papers Sponsored By: