Software process simulation to achieve higher CMM levels

Abstract Organizations interested in improving their process performance face two key questions: • What is the best approach for making decisions about process changes? • How can the risk associated with potential process alternatives be assessed? Quantitative process analysis tools are being developed by Northrop Grumman's Surveillance and Battle Management Systems (SBMS Melbourne, Florida) and Portland State University, under sponsorship of the Software Engineering Research Center (SERC). These tools consist of stochastic simulation models of the software development process. The stochastic/analytic portions of the models provide a quantitative understanding of the current process and provide a mechanism for the quantitative analysis of proposed process change alternatives prior to implementation. The use of simulation models also supports a quantitative assessment of risk or uncertainty associated with process change alternatives. For Northrop Grumman's SBMS Melbourne site, the use of software process simulation is a key part of the company's strategy for achieving a higher software development process capability and moving to Levels 4 and 5 of the Capability Maturity Model (CMM)™. 3 This paper provides a brief background on alternative quantitative approaches, describes the model currently being utilized by the SBMS Melbourne site, and provides an example of its use in analyzing a potential process change.

[1]  Lawrence H. Putnam Software Cost Estimating and Life-Cycle Control , 1980 .

[2]  Averill M. Law,et al.  Simulation Modeling and Analysis , 1982 .

[3]  Antony Powell,et al.  Strategies for lifecycle concurrency and iteration - A system dynamics approach , 1999, J. Syst. Softw..

[4]  David Raffo,et al.  Modeling software processes quantitatively and assessing the impact of potential process changes on process performance , 1996 .

[5]  Barry W. Boehm,et al.  Cost models for future software life cycle processes: COCOMO 2.0 , 1995, Ann. Softw. Eng..

[6]  Stuart E. Madnick,et al.  Software Project Dynamics: An Integrated Approach , 1991 .

[7]  Bill Curtis,et al.  Process modeling , 1992, CACM.

[8]  Marc I. Kellner Experience With Enactable Software Process Models , 1989, [1989] Proceedings of the 5th International Software Process Workshop.

[9]  Michael E. Fagan Design and Code Inspections to Reduce Errors in Program Development , 1976, IBM Syst. J..

[10]  Gregory A. Hansen,et al.  Software Process Modeling , 1988 .

[11]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[12]  T. H. Bonn,et al.  A Standard for Computer Networks , 1971, Computer.

[13]  Lawrence H. Putnam,et al.  Tutorial, software cost estimating and life-cycle control : getting the software numbers , 1980 .

[14]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[15]  S. B. Kiselev,et al.  The capability maturity model: guidelines for improving the software process , 1995 .

[16]  Raymond Madachy,et al.  A software project dynamics model for process cost, schedule and risk assessment , 1994 .