Causes of requirement change - A systematic literature review

Context: Research shows that one of the main reasons of project failure is changing requirements. The success or failure of software projects largely depends upon how we respond to changing requirements. The knowledge about the causes of requirements change can improve our ability to make better decisions and manage changing requirements effectively. Objective: In this paper we present findings from an empirical study that was aimed at identifying the causes of requirement change and the frequency of these causes in different software development phases. Methods: We performed a systematic literature review and went through all the stages required by the process. Although our search strings yielded a large amount of papers but after careful filtration we were left with only five papers (six studies) which reported empirical knowledge about the causes of requirement change. Results: We have identified different causes and their frequency in software development phases. We have classified the extracted causes of requirements change into two major types i.e., essential and accidental causes. Conclusions: It is surprising to find little empirical evidence on the causes of requirements change as requirements change has been widely quoted as one of the major challenges faced by requirements engineers. With this small number of evidences, it is hard to generalize the research results. There is a need for further empirical research to identify and fully understand the causes of requirement change.

[1]  Matthias Jarke,et al.  Cooperative Information Systems: A Manifesto * , 1997 .

[2]  Ian Sommerville,et al.  Requirements Engineering: Processes and Techniques , 1998 .

[3]  Christof Ebert,et al.  requirements uncertainty: influencing factors and concrete improvements , 2005, ICSE '05.

[4]  Natalia Juristo Juzgado,et al.  Effectiveness of Requirements Elicitation Techniques: Empirical Results Derived from a Systematic Review , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[5]  Tore Dybå,et al.  Applying Systematic Reviews to Diverse Study Types: An Experience Report , 2007, First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007).

[6]  C. Jones,et al.  Strategies for managing requirements creep , 1996 .

[7]  P. J. Byers,et al.  Towards an analysis and specification method for IDA systems , 1992 .

[8]  Jeffrey C. Carver,et al.  A systematic literature review to identify and classify software requirement errors , 2009, Inf. Softw. Technol..

[9]  Chengying Mao,et al.  A Study on the Distribution and Cost Prediction of Requirements Changes in the Software Life-Cycle , 2005, ISPW.

[10]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[11]  Jeffrey C. Carver,et al.  Change Risk Assessment: Understanding Risks Involved in Changing Software Requirements , 2006, Software Engineering Research and Practice.

[12]  Thierry Bodhuin,et al.  Assessment and impact analysis for aligning business processes and software systems , 2005, SAC '05.

[13]  Gerald T. Mackulak,et al.  Understanding the effects of requirements volatility in software engineering by using analytical modeling and software process simulation , 2009, J. Syst. Softw..

[14]  Cheng Zhang,et al.  Search Engine Overlaps : Do they agree or disagree? , 2007, Second International Workshop on Realising Evidence-Based Software Engineering (REBSE '07).

[15]  Susan P. Williams,et al.  Using card sorting technique to classify requirements change , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[16]  Marta López,et al.  Updating a Systematic Review about Selection of Software Requirements Elicitation Techniques , 2008, WER.

[17]  Mark Staples,et al.  Experiences using systematic review guidelines , 2006, J. Syst. Softw..

[18]  G. P. Kulk,et al.  Quantifying requirements volatility effects , 2008, Sci. Comput. Program..

[19]  Robyn R. Lutz,et al.  Identifying contingency requirements using obstacle analysis , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[20]  S.D.P. Harker,et al.  The change and evolution of requirements as a challenge to the practice of software engineering , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[21]  Johan F. Hoorn,et al.  Software Requirements: Update, upgrade, redesign. towards a theory of requirements change , 2006 .

[22]  O. Dieste,et al.  Developing Search Strategies for Detecting Relevant Experiments for Systematic Reviews , 2007, First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007).

[23]  Didar Zowghi,et al.  A study of the impact of requirements volatility on software project performance , 2002, Ninth Asia-Pacific Software Engineering Conference, 2002..

[24]  Barbara A. Kitchenham Evidence-Based Software Engineering and Systematic Literature Reviews , 2006, PROFES.

[25]  Des Greer,et al.  A Software Requirements Change Source Taxonomy , 2009, 2009 Fourth International Conference on Software Engineering Advances.

[26]  Per Runeson,et al.  Checklists for Software Engineering Case Study Research , 2007, First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007).

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

[28]  Nong Zhang THE UNIVERSITY OF TECHNOLOGY SYDNEY , 2005 .

[29]  Didar Zowghi,et al.  Analysis of requirements volatility during software development life cycle , 2004, 2004 Australian Software Engineering Conference. Proceedings..

[30]  Pearl Brereton,et al.  Performing systematic literature reviews in software engineering , 2006, ICSE.

[31]  Jesse H. Poore,et al.  Pushing requirements changes through to changes in specifications , 2008, 2008 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering.