SNIAFL
- 1 April 2006
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Software Engineering and Methodology
- Vol. 15 (2), 195-226
- https://doi.org/10.1145/1131421.1131424
Abstract
To facilitate software maintenance and evolution, a helpful step is to locate features concerned in a particular maintenance task. In the literature, both dynamic and interactive approaches have been proposed for feature location. In this article, we present a static and noninteractive method for achieving this objective. The main idea of our approach is to use information retrieval (IR) technology to reveal the basic connections between features and computational units in the source code. Due to the imprecision of retrieved connections, we use a static representation of the source code named BRCG (branch-reserving call graph) to further recover both relevant and specific computational units for each feature. A premise of our approach is that programmers should use meaningful names as identifiers. We also performed an experimental study based on two real-world software systems to evaluate our approach. According to experimental results, our approach is quite effective in acquiring the relevant and specific computational units for most features.Keywords
This publication has 16 references indexed in Scilit:
- Locating features in source codeIEEE Transactions on Software Engineering, 2003
- Recovering traceability links between code and documentationIEEE Transactions on Software Engineering, 2002
- Aiding program comprehension by static and dynamic feature analysisPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- CVSSearch: searching through source code using CVS commentsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Concern graphsPublished by Association for Computing Machinery (ACM) ,2002
- Automated test data generation using an iterative relaxation methodPublished by Association for Computing Machinery (ACM) ,1998
- Seesoft-a tool for visualizing line oriented software statisticsIEEE Transactions on Software Engineering, 1992
- Indexing by latent semantic analysisJournal of the American Society for Information Science, 1990
- Program understanding: Challenge for the 1990sIBM Systems Journal, 1989
- Computer Evaluation of Indexing and Text ProcessingJournal of the ACM, 1968