Tracking requirements evolution by using issue tickets: a case study of a document management and approval system

Requirements evolve throughout the software life-cycle. When requirements change, requirements engineers must determine what software artifacts could be affected. The history of and rationale for requirements evolution provides engineers some information about artifact dependencies for impact analysis. In this paper, we discuss a case study of requirements evolution for a large-scale system governed by Japanese laws and regulations. We track requirements evolution using issue tickets created in response to stakeholder requests. We provide rules to identify requirements evolution events (e.g. refine, decompose, and replace) from combinations of operations (e.g. add, change, and delete) specified in the issue tickets. We propose a Requirements Evolution Chart (REC) to visually represent requirements evolution as a series of events over time, and implement tool support to generate a REC from a series of issue tickets using our rules to identify requirements evolution events. We found that the REC supports impact analysis and compliance efforts.

[1]  M.M. Lehman,et al.  Programs, life cycles, and laws of software evolution , 1980, Proceedings of the IEEE.

[2]  Meir M. Lehman,et al.  Evolution in software and related areas , 2001, IWPSE '01.

[3]  JaatunMartin Gilje,et al.  Agile Software Development , 2002, Comput. Sci. Educ..

[4]  Christine Nadel,et al.  Case Study Research Design And Methods , 2016 .

[5]  Alistair Cockburn,et al.  Agile Software Development: The Business of Innovation , 2001, Computer.

[6]  Raffaella Settimi,et al.  Supporting software evolution through dynamically retrieving traces to UML artifacts , 2004, Proceedings. 7th International Workshop on Principles of Software Evolution, 2004..

[7]  Jane Cleland-Huang,et al.  Supporting software evolution through dynamically retrieving traces to UML artifacts , 2004 .

[8]  Michael E. Fagan Advances in software inspections , 1986, IEEE Transactions on Software Engineering.

[9]  Antje von Knethen A trace model for system requirements changes on embedded systems , 2001, IWPSE '01.

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

[11]  David D. McDonald,et al.  Programs , 1984, CL.

[12]  Carl K. Chang,et al.  Event-Based Traceability for Managing Evolutionary Change , 2003, IEEE Trans. Software Eng..

[13]  Laurie A. Williams,et al.  Evolving beyond requirements creep: a risk-based evolutionary prototyping model , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[14]  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.

[15]  Björn Regnell,et al.  Feature Transition Charts for Visualization of Cross-Project Scope Evolution in Large-Scale Requirements Engineering for Product Lines , 2009, 2009 Fourth International Workshop on Requirements Engineering Visualization.