Leveraging Historical Associations between Requirements and Source Code to Identify Impacted Classes

被引:13
作者
Falessi, Davide [1 ]
Roll, Justin [1 ]
Guo, Jin L. C. [2 ]
Cleland-Huang, Jane [3 ]
机构
[1] Calif Polytech State Univ San Luis Obispo, San Luis Obispo, CA 93407 USA
[2] McGill Univ, Sch Comp Sci, Montreal, PQ H3A 0G4, Canada
[3] Univ Notre Dame, Comp Sci & Engn, South Bend, IN 46556 USA
基金
美国国家科学基金会;
关键词
Measurement; Semantics; Natural language processing; Complexity theory; Open source software; Task analysis; Impact analysis; mining software repositories; traceability; SOFTWARE; LINKS; VALIDATION; GENERATION; MANAGEMENT; METRICS; AGILE;
D O I
10.1109/TSE.2018.2861735
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
As new requirements are introduced and implemented in a software system, developers must identify the set of source code classes which need to be changed. Therefore, past effort has focused on predicting the set of classes impacted by a requirement. In this paper, we introduce and evaluate a new type of information based on the intuition that the set of requirements which are associated with historical changes to a specific class are likely to exhibit semantic similarity to new requirements which impact that class. This new Requirements to Requirements Set (R2RS) family of metrics captures the semantic similarity between a new requirement and the set of existing requirements previously associated with a class. The aim of this paper is to present and evaluate the usefulness of R2RS metrics in predicting the set of classes impacted by a requirement. We consider 18 different R2RS metrics by combining six natural language processing techniques to measure the semantic similarity among texts (e.g., VSM) and three distribution scores to compute overall similarity (e.g., average among similarity scores). We evaluate if R2RS is useful for predicting impacted classes in combination and against four other families of metrics that are based upon temporal locality of changes, direct similarity to code, complexity metrics, and code smells. Our evaluation features five classifiers and 78 releases belonging to four large open-source projects, which result in over 700,000 candidate impacted classes. Experimental results show that leveraging R2RS information increases the accuracy of predicting impacted classes practically by an average of more than 60 percent across the various classifiers and projects.
引用
收藏
页码:420 / 441
页数:22
相关论文
共 120 条
[41]   Enhancing Software Traceability By Automatically Expanding Corpora With Relevant Documentation [J].
Dasgupta, Tathagata ;
Grechanik, Mark ;
Moritz, Evan ;
Dit, Bogdan ;
Poshyvanyk, Denys .
2013 29TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM), 2013, :320-329
[42]   Enhancing an artefact management system with traceability recovery features [J].
De Lucia, A ;
Fasano, F ;
Oliveto, R ;
Tortora, G .
20TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 2004, :306-315
[43]   Fine-grained management of software artefacts: the ADAMS system [J].
De Lucia, Andrea ;
Fasano, Fausto ;
Oliveto, Rocco ;
Tortora, Genoveffa .
SOFTWARE-PRACTICE & EXPERIENCE, 2010, 40 (11) :1007-1034
[44]   Technique integration for requirements assessment [J].
Dekhtyar, Alex ;
Hayes, Jane Huffinan ;
Sundaram, Senthil ;
Holbrook, Ashlee ;
Dekhtyar, Olga .
15TH IEEE INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE, PROCEEDINGS, 2007, :141-+
[45]   Supporting and accelerating reproducible empirical research in software evolution and maintenance using TraceLab Component Library [J].
Dit, Bogdan ;
Moritz, Evan ;
Linares-Vasquez, Mario ;
Poshyvanyk, Denys ;
Cleland-Huang, Jane .
EMPIRICAL SOFTWARE ENGINEERING, 2015, 20 (05) :1198-1236
[46]   Feature location in source code: a taxonomy and survey [J].
Dit, Bogdan ;
Revelle, Meghan ;
Gethers, Malcom ;
Poshyvanyk, Denys .
JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2013, 25 (01) :53-95
[47]   A Few Useful Things to Know About Machine Learning [J].
Domingos, Pedro .
COMMUNICATIONS OF THE ACM, 2012, 55 (10) :78-87
[48]   Empirical studies of agile software development:: A systematic review [J].
Dyba, Tore ;
Dingsoyr, Torgeir .
INFORMATION AND SOFTWARE TECHNOLOGY, 2008, 50 (9-10) :833-859
[49]   Locating features in source code [J].
Eisenbarth, T ;
Koschke, R ;
Simon, D .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2003, 29 (03) :210-224
[50]  
Eski S., 2011, 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), P566, DOI 10.1109/ICSTW.2011.43