Change Impact Analysis; Natural Language Requirements; Natural Language Processing (NLP)
Abstract :
[en] Requirements are subject to frequent changes as a way to ensure that they reflect the current best understanding of a system, and to respond to factors such as new and evolving needs. Changing one requirement in a requirements specification may warrant further changes to the specification, so that the overall correctness and consistency of the specification can be maintained. A manual analysis of how a change to one requirement impacts other requirements is time-consuming and presents a challenge for large requirements specifications. We propose an automated approach based on Natural Language Processing (NLP) for analyzing the impact of change in Natural Language (NL) requirements. Our focus on NL requirements is motivated by the prevalent use of these requirements, particularly in industry. Our approach automatically detects and takes into account the phrasal structure of requirements statements. We argue about the importance of capturing the conditions under which change should propagate to enable more accurate change impact analysis. We propose a quantitative measure for calculating how likely a requirements statement is to be impacted by a change under given conditions. We conduct an evaluation of our approach by applying it to 14 change scenarios from two industrial case studies.
Disciplines :
Computer science
Author, co-author :
Arora, Chetan ; University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
Sabetzadeh, Mehrdad ; University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
Göknil, Arda ; University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
Briand, Lionel ; University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) ; University of Luxembourg > Faculty of Science, Technology and Communication (FSTC) > Computer Science and Communications Research Unit (CSC)
Zimmer, Frank; SES TechCom, Luxembourg
External co-authors :
no
Language :
English
Title :
Change Impact Analysis for Natural Language Requirements: An NLP Approach
Publication date :
August 2015
Event name :
23rd IEEE International Requirements Engineering Conference
Event date :
24-08-2015 to 28-08-2015
Main work title :
23rd IEEE International Requirements Engineering Conference, Ottawa 24-28 August 2015
P. Jönsson and M. Lindvall, "Impact analysis," in Engineering and Managing Software Requirements, A. Aurum and C. Wohlin, Eds. Springer, 2005.
K. Pohl, Requirements Engineering - Fundamentals, Principles, and Techniques. Springer, 2010.
D. Jurafsky and J. Martin, Speech and Language Processing: An Introduction to Natural Language Processing. Prentice Hall, 2000.
C. Arora, M. Sabetzadeh, L. Briand, F. Zimmer, and R. Gnaga, "Automatic checking of conformance to requirement boilerplates via text chunking: An industrial case study," in ESEM'13, 2013.
C. Arora, M. Sabetzadeh, L. Briand, and F. Zimmer, "Improving requirements glossary construction via clustering: Approach and industrial case studies," in ESEM'14, 2014.
C. Manning, P. Raghavan, and H. Schütze, Introduction to Information Retrieval. Cambridge, 2008.
V. Rus, M. Lintean, R. Banjade, N. Niraula, and D. Stefanescu, "SEMILAR: The semantic similarity toolkit." in ACL, 2013.
S. Nejati, M. Sabetzadeh, M. Chechik, S. Easterbrook, and P. Zave, "Matching and merging of variant feature specifications," IEEE TSE, vol. 38, no. 6, 2012.
C. Manning and H. Schütze, Foundations of statistical natural language processing. MIT press, 1999.
W. Francis and H. Kucera, Frequency analysis of English usage. Houghton Mifflin, 1982.
"Diff, match and patch libraries for plain text," http://code.google.com/p/google-diff-match-patch/.
A. Pirkola, H. Keskustalo, and K. Järvelin, "The effects of conjunction, facet structure, and dictionary combinations in concept-based crosslanguage retrieval," IR, vol. 1, no. 3, 1999.
A. Dutoit, R. McCall, I. Mistrik, and B. Paech, Rationale Management in Software Engineering. Springer, 2006.
T. Cormen, C. Leiserson, R. Rivest, and C. Stein, Introduction to Algorithms, 3rd ed. MIT Press, 2009.
P. Ebben, "Requirements for the WASP application platform," Telematica Instituut, Tech. Rep. WASP/D2.1, 2002.
A. Goknil, I. Kurtev, K. van den Berg, and W. Spijkerman, "Change impact analysis for requirements: A metamodeling approach," IST, vol. 56, no. 8, 2014.
A. Goknil, R. van Domburg, I. Kurtev, K. van den Berg, and F. Wijnhoven, "Experimental evaluation of a tool for change impact prediction in requirements models," in MoDRE'14, 2014.
H. Zhang, J. Li, L. Zhu, D. Jeffery, Y. Liu, Q. Wang, and M. Li, "Investigating dependencies in software requirements for change propagation analysis," IST, vol. 56, no. 1, 2014.
Å. Dahlstedt and A. Persson, "Requirements interdependencies: State of the art and future challenges," in Engineering and Managing Software Requirements, A. Aurum and C. Wohlin, Eds. Springer, 2005.
K. Pohl, Process-Centered Requirements Engineering. Wiley, 1996.
D. Amyot, "Introduction to the user requirements notation: learning by example," Computer Networks, vol. 42, no. 3, 2003.
J. Cleland-Huang, R. Settimi, O. B. Khadra, E. Berezhanskaya, and S. Christina, "Goal-centric traceability for managing non-functional requirements," in ICSE, 2005.
J. Cleland-Huang, B. Berenbach, S. Clark, R. Settimi, and E. Romanova, "Best practices for automated traceability," Computer, vol. 40, no. 6, 2007.
R. Torkar, T. Gorschek, R. Feldt, M. Svahnberg, U. Raja, and K. Kamran, "Requirements traceability: a systematic review and industry case study," IJSEKE, vol. 22, no. 3, 2012.
J. Cleland-Huang, O. Gotel, J. Hayes, P. Mäder, and A. Zisman, "Software traceability: Trends and future directions," in Future of Software Engineering (FOSE'14), 2014.
J. Cleland-Huang, "Traceability in agile projects," in Software and Systems Traceability, J. Cleland-Huang, O. Gotel, and A. Zisman, Eds. Springer, 2012.
V. Gervasi and D. Zowghi, "Reasoning about inconsistencies in natural language requirements," TOSEM, vol. 14, no. 3, 2005.
H. Yang, A. De Roeck, V. Gervasi, A. Willis, and B. Nuseibeh, "Analysing anaphoric ambiguity in natural language requirements," REJ, vol. 16, no. 3, 2011.
D. Falessi, G. Cantone, and G. Canfora, "Empirical principles and an industrial case study in retrieving equivalent requirements via natural language processing techniques," IEEE TSE, vol. 39, no. 1, 2013.
K. Zachos and N. Maiden, "Inventing requirements from software: An empirical investigation with web services," in RE'08, 2008.
E. Holbrook, J. Hayes, and A. Dekhtyar, "Toward automating requirements satisfaction assessment," in RE'09, 2009.