Analyzing the impact of changing requirements

Determining the impact of requirement changes on software development is critical to project management. We present an impact analysis method to evaluate requirement changes for software development projects that is based on requirements traceability. By using attributes of the work products and traces, we create classes of requirement changes prioritized according to the potential impact. We present a case study that shows a favorable comparison between the actual impact and the predicted impact. Finally, we discuss the expansion of the method.

[1]  Capers Jones,et al.  Patterns of Large Software Systems: Failure and Success , 1995, Computer.

[2]  Shawn A. Bohner,et al.  Impact analysis-Towards a framework for comparison , 1993, 1993 Conference on Software Maintenance.

[3]  Antje von Knethen,et al.  Change-Oriented Requirements Traceability: Support for Evolution of Embedded Systems , 2002, ICSM.

[4]  Malcolm Munro,et al.  An early impact analysis technique for software maintenance , 1994, J. Softw. Maintenance Res. Pract..

[5]  Balasubramaniam Ramesh,et al.  Implementing requirements traceability: a case study , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[6]  Yannis Manolopoulos,et al.  Structure-based similarity search with graph histograms , 1999, Proceedings. Tenth International Workshop on Database and Expert Systems Applications. DEXA 99.

[7]  Shawn A. Bohner,et al.  A framework for software maintenance metrics , 1990, Proceedings. Conference on Software Maintenance 1990.

[8]  W. Lam,et al.  Requirements change: a dissection of management issues , 1999, Proceedings 25th EUROMICRO Conference. Informatics: Theory and Practice for the New Millennium.

[9]  Matthias Jarke,et al.  Requirements tracing , 1998, CACM.

[10]  George Spanoudakis Plausible and adaptive requirement traceability structures , 2002, SEKE '02.

[11]  Joseph P. Loyall,et al.  Using dependence analysis to support the software maintenance process , 1993, 1993 Conference on Software Maintenance.

[12]  Brian Henderson-Sellers,et al.  The object-oriented systems life cycle , 1990, CACM.

[13]  Ho-Won Jung,et al.  Optimizing Value and Cost in Requirements Analysis , 1998, IEEE Softw..

[14]  David W. Binkley,et al.  Interprocedural slicing using dependence graphs , 1990, TOPL.

[15]  Michael A. Cusumano,et al.  How Microsoft builds software , 1997, CACM.

[16]  Angela Greiling Keane,et al.  NO SILVER BULLET , 2003 .

[17]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[18]  Natalia Juristo Juzgado,et al.  Is the European Industry Moving toward Solving Requirements Engineering Problems? , 2002, IEEE Softw..

[19]  Wei-Tek Tsai,et al.  Omega-an integrated environment for C++ program maintenance , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[20]  Jawed I. A. Siddiqi,et al.  Requirements Engineering: The Emerging Wisdom , 1996, IEEE Softw..

[21]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[22]  Ellis Horowitz,et al.  SODOS: A software documentation support environment — Its definition , 1986, IEEE Transactions on Software Engineering.

[23]  Wayne Goddard,et al.  Distances between graphs under edge operations , 1996, Discret. Math..

[24]  James Bach Risk and Requirements-Based Testing , 1999, Computer.

[25]  S.A. Bohner,et al.  Software change impacts-an evolving perspective , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[26]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[27]  Mikael Lindvall,et al.  How well do experienced software developers predict software change? , 1998, J. Syst. Softw..

[28]  George J. Klir,et al.  Fuzzy sets and fuzzy logic - theory and applications , 1995 .

[29]  Kent L. Beck,et al.  Embracing Change with Extreme Programming , 1999, Computer.

[30]  Elwood S. Buffa,et al.  Graph Theory with Applications , 1977 .

[31]  Malcolm Munro,et al.  The impact analysis task in software maintenance: a model and a case study , 1994, Proceedings 1994 International Conference on Software Maintenance.

[32]  Giuseppe Visaggio,et al.  A software model for impact analysis: a validation experiment , 1999, Sixth Working Conference on Reverse Engineering (Cat. No.PR00303).

[33]  Victor R. Basili,et al.  Viewing maintenance as reuse-oriented software development , 1990, IEEE Software.

[34]  Audrey J. Dorofee,et al.  Putting Risk Management Into Practice , 1997, IEEE Softw..

[35]  Joachim Karlsson,et al.  A Cost-Value Approach for Prioritizing Requirements , 1997, IEEE Softw..

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

[37]  Robert S. Arnold,et al.  Software Change Impact Analysis , 1996 .

[38]  Stephen S. Yau,et al.  An Integrated Life-Cycle Model for Software Maintenance , 1988, IEEE Trans. Software Eng..

[39]  Alessandro Bianchi,et al.  An exploratory case study of the maintenance effectiveness of traceability models , 2000, Proceedings IWPC 2000. 8th International Workshop on Program Comprehension.

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

[41]  Jr. Frederick P. Brooks,et al.  The mythical man-month (anniversary ed.) , 1995 .

[42]  John Yen,et al.  Impact analysis of design alternatives on imprecise requirements , 1997, Proceedings of 6th International Fuzzy Systems Conference.

[43]  Ute St. Clair,et al.  Fuzzy Set Theory: Foundations and Applications , 1997 .

[44]  Pamela Zave Classification of research efforts in requirements engineering , 1997, ACM Comput. Surv..

[45]  Ellis Horowitz,et al.  Fundamentals of Computer Algorithms , 1978 .

[46]  Stephen R. Schach,et al.  Object-oriented and classical software engineering , 1995 .

[47]  BryantA.,et al.  B. W. Boehm software engineering economics , 1983 .

[48]  Barry W. Boehm,et al.  Understanding and Controlling Software Costs , 1988, IEEE Trans. Software Eng..

[49]  Giuliano Antoniol,et al.  Identifying the starting impact set of a maintenance request: a case study , 2000, Proceedings of the Fourth European Conference on Software Maintenance and Reengineering.

[50]  Lori A. Clarke,et al.  A Formal Model of Program Dependences and Its Implications for Software Testing, Debugging, and Maintenance , 1990, IEEE Trans. Software Eng..

[51]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[52]  Olly Gotel,et al.  Extended requirements traceability: results of an industrial case study , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[53]  Keith Brian Gallagher,et al.  Using Program Slicing in Software Maintenance , 1991, IEEE Trans. Software Eng..

[54]  Mikael Lindvall,et al.  Traceability aspects of impact analysis in object-oriented systems , 1998, J. Softw. Maintenance Res. Pract..

[55]  G. Chartrand,et al.  Graph similarity and distance in graphs , 1998 .

[56]  Bashar Nuseibeh,et al.  Requirements engineering: a roadmap , 2000, ICSE '00.

[57]  Walt Scacchi,et al.  A hypertext system to manage software life cycle documents , 1988 .

[58]  Barry W. Boehm,et al.  Identifying Quality-Requirement Conflicts , 1996, IEEE Softw..

[59]  Thierry Bodhuin,et al.  Supporting impact analysis: a semi-automated technique and associated tool , 1995, Proceedings of International Conference on Software Maintenance.

[60]  Stephen J. Andriole The Politics of Requirements Management , 1998, IEEE Softw..

[61]  KeilMark,et al.  A framework for identifying software project risks , 1998 .

[62]  Olly Gotel,et al.  An analysis of the requirements traceability problem , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[63]  M. R. Strens,et al.  Strategies, tactics and methods for handling change , 1996, Proceedings IEEE Symposium and Workshop on Engineering of Computer-Based Systems.

[64]  M. R. Strens,et al.  Change analysis: a step towards meeting the challenge of changing requirements , 1996, Proceedings IEEE Symposium and Workshop on Engineering of Computer-Based Systems.