Stochastically Simulating the Effects of Requirements Creep on Software Development Risk Management

Table of contents

1.

Abstract-One of the major chronic problems in software of the major chronic problems in software development is the fact that application requirements are almost never stable and fixed. Creeping user requirements have been troublesome since the software industry began. Several empirical studies have reported that volatile requirements are a challenging factor in most information systems development projects. Software process simulation modeling has increasingly been used for a variety of issues during software development. The management of software development risks is one of them. This study presents an approach for simulating and analyzing the effect of Requirements Creep on certain software development risk management activities. The proposed algorithm is based on stochastic simulation and has been implemented using C.

2. I.

Introduction oftware process simulation modeling is increasingly being used to address variety of issues from the strategic management of software development, to supporting process improvements, to software project management training. One of the proposed purposes for software process simulation is the management of software development risks, usually discussed within the category of project management [1]. There have been various (but quite a limited) studies which have used modeling and simulation for software development risk management for example: Madachy's Model [2], Houston's Model [3]. The present study also describes an approach for managing software development risks using simulation.

In the present work, implementation of a simulator has been done for modeling the effects of Requirements Creep on various risk management factors during software development using stochastic simulation.

This paper has been has been organized into various sections including the present one. An overview of software development risk factors has been provided in section II while 'requirements' as a major risk factor during software development have been discussed in section III, followed by potential effects of requirements creep(section IV). The proposed algorithm has been provided in section V, the results of which have been demonstrated and interpreted in section VI with the help of charts representing the relationships between various risk management factors.

3. II.

4. Risk Factors during Software Development

Top 10 software risk items identified by Boehm [4] Jones [5] has presented the following three key software areas:

? Risks associated with inaccurate estimating and schedule planning ? Risks associated with incorrect and optimistic status reporting ? Risks associated with external pressures, which damage software projects. Some investigators have even presented software development risks on the order of 150 or more. Twenty nine of these risk factors have been cited by Houston [3] as most important Software development risk factors.

5. III.

6. Requirements: A Major Software Development Risk Area

A requirement is the condition or capacity that a system that is being developed must satisfy [6]. Requirement management in general is mainly concerned with three tasks: Requirement Elicitation, Requirement Analysis and Requirement specification.

One of the major chronic problems in software development is the fact that application requirements are almost never stable and fixed. Creeping user requirements have been troublesome since the software industry began. Several empirical studies have reported that volatile requirements are a challenging factor in most information systems development projects [7], [8], [9], [10]. There is no quick, perfectly effective cure. Various factors have been considered to be behind the creeping user requirements [3], [7], [11], [12], [13], [14], from which the following have been modeled in the presented study:

? Excessive Schedule Pressure ? User-Practitioner

Relationship Level (which accounts for the User's involvement level and Practitioner's level of knowledge).

This study demonstrates the use of stochastic simulation as a flexible vehicle for effectively assessing and managing risk by measuring the effect of requirements creep on various software risk management factors using stochastic simulation.

7. IV. Potential Effects of Requirements Creep

The requirements creep level may be affected by the high schedule Pressure and User Practitioner Relationship level which in turn may affect the Defect generation rate, rework and job size [15]. The present algorithm simulates the effect of requirements creep by sampling the distribution of variables and continuously recalculating them after each run.

V. (Run for a large value of SRUNS) STEP 10: END.

8. Algorithm

9. VI.

10. Results & Interpretation

11. Conclusion

The stochastic simulator presented here in this paper models the potential effects of requirements creep as a risk factor on various software risk management factors. This will enable software project managers to take decisions in planning and scheduling the various activities involved in software development and perform sensitivity analysis in order to achieve the desired risk mitigation goals.

Figure 1.
for software development projects: ? Personnel shortfalls ? Unrealistic schedules and budgets ? Developing the wrong functions and properties ? Developing the wrong user interface ? Gold plating(adding more functionality/ features than is necessary) ? Continuing stream of requirements changes ? Shortfall in externally furnished components ? Shortfalls in externally performed tasks ? Real-Time performance shortfalls ? Straining computer-science capabilities
Figure 2. STEP 7 :
7Compute percentage of Defect Generation with respect to requirements creep level=((CCL-CSHPL)/CCL)*100 STEP 8: Print the computed statistics. STEP 9: If RUN < SRUNS then go to STEP 3.
Figure 3. Table 1 User
1
Average Requirements Creep
-Practitioner Level
Relationship Level Avg. Schedule Avg. Schedule
Pressure=5 Pressure=8
1 220.607 343.166
2 173.958 296.061
3 128.358 250.334
4 83.534 204.735
5 38.884 159.708
6 6.5289 115.058
7 1.487 70.408
. . .
. . .
1

Appendix A

  1. A field study of the Software Design Process for Large systems. B Curtis , H Krasner , N Iscoe . Communications of the ACM 1988. 31 (11) p. .
  2. Software risk management principles and practices. B W Boehm . IEEE Software 1991. 8 (1) p. .
  3. Minimizing the risks of software development. C Jones . Cutter IT Journal 1998. 11 (6) p. .
  4. Exploring Requirements, D Gause , G Weinberg . 1989. New York, NY, Dorset House.
  5. A Software project simulation model for risk management, D Houston . 2000. Tempe, AZ. Arizona State University (Ph.D. Dissertation)
  6. Stochastic simulation of risk factor potential effects for software development risk management. D Houston , G Mackulak , J Collofello . The Journal of Systems and Software 2001. 2001. 59 p. .
  7. Managing Software Requirements -A Unified Approach, D Leffingwell , D Widrig . 2000. Addison Wesley Longman, Inc.
  8. Components of software development risk: How to address them? a project manager survey. J Ropponen , K Lyytinen . IEEE Transactions on Software Engineering 2000. 26 (2) p. .
  9. Software developer perceptions about software project failure: a case study. K R Linberg . The Journal of Systems and Software, 1999. 49 p. .
  10. Understanding software project risk: a cluster analysis. L Wallace , M Keil , A Rai . Information and Management 2004. 42 (1) p. .
  11. Software Process Modeling and Simulation: Why, What, How. Marc I Kellner , Raymond J Madachy , David M Raffo . Journal of Systems and Software 1999. 46 (2/3) .
  12. A review of the state of the practice in requirements modeling. M Lubars , C Potts , C Richter . Proc. of IEEE Symposium on Requirements Engineering, (of IEEE Symposium on Requirements EngineeringSan Diego, Califonia
    ) 1993.
  13. A Software project dynamics model for process cost, Schedule and risk assessment, Raymond J Madachy . 1994. University of Southern California (Ph.d. Dissertation)
  14. Identifying software project risks: An international delphi study. R Schmidt , K Lyytinen , M Keil , P Cule . Journal of Management Information Systems 2001. 17 (4) p. .
Notes
1
© 2014 Global Journals Inc. (US) Stochastically Simulating the Effects of Requirements Creep on Software Development Risk Management
Date: 2014-01-15