CERBERUS: Tracing Requirements to Source Code Using Information Retrieval, Dynamic Analysis, and Program Analysis
International Conference on Program Comprehension (2008)
June 10, 2008 to June 13, 2008
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ICPC.2008.39
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.
concern location, infromation retrieval, execution traces, program analysis, prune dependency
G. Antoniol, Y. Gu?h?neuc, A. V. Aho and M. Eaddy, "CERBERUS: Tracing Requirements to Source Code Using Information Retrieval, Dynamic Analysis, and Program Analysis," International Conference on Program Comprehension(ICPC), vol. 00, no. , pp. 53-62, 2008.