Title :
CERBERUS: Tracing Requirements to Source Code Using Information Retrieval, Dynamic Analysis, and Program Analysis
Author :
Eaddy, Marc ; Aho, Alfred V. ; Antoniol, Giuliano ; Gueheneuc, Yann-Gael
Author_Institution :
Dept. of Comput. Sci., Columbia Univ., New York, NY
Abstract :
The concern location problem is to identify the source code within a program related to the features, requirements, or other concerns of the program. This problem is central to program development and maintenance. We present a new technique called prune dependency analysis that can be combined with existing techniques to dramatically improve the accuracy of concern location. We developed CERBERUS, a potent hybrid technique for concern location that combines information retrieval, execution tracing, and prune dependency analysis. We used CERBERUS to trace the 360 requirements of RHINO, a 32,134 line Java program that implements the ECMAScript international standard. In our experiment, prune dependency analysis boosted the recall of information retrieval by 155% and execution tracing by 104%. Moreover, we show that our combined technique outperformed the other techniques when run individually or in pairs.
Keywords :
Java; program diagnostics; program verification; software maintenance; CERBERUS; ECMAScript international standard; Java program; RHINO; concern location problem; dynamic analysis; execution tracing; information retrieval; program analysis; program development; program features; program maintenance; prune dependency analysis; requirement tracing; source code identification; Computer science; Costs; Data analysis; Documentation; Impedance; Information analysis; Information retrieval; Java; Programming profession; USA Councils; concern location; execution traces; infromation retrieval; program analysis; prune dependency;
Conference_Titel :
Program Comprehension, 2008. ICPC 2008. The 16th IEEE International Conference on
Conference_Location :
Amsterdam
Print_ISBN :
978-0-7695-3176-2
DOI :
10.1109/ICPC.2008.39