ACM Home Page
Please provide us with feedback. Feedback
Case study: supplementing program analysis with natural language analysis to improve a reverse engineering task
Full text PdfPdf (154 KB)
Source
Workshop on Program Analysis for Software Tools and Engineering archive
Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering table of contents
San Diego, California, USA
Pages: 49 - 54  
Year of Publication: 2007
ISBN:978-1-59593-595-3
Authors
David Shepherd  University of Delaware, Newark, DE
Lori Pollock  University of Delaware, Newark, DE
K. Vijay-Shanker  University of Delaware, Newark, DE
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 39,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1251535.1251544
What is a DOI?

ABSTRACT

Software maintainers often use reverse engineering tools to aid in the extremely difficult task of understanding unfamiliar code, especially within large, complex software systems. While traditional program analysis can provide detailed information for reverse engineering, often this information is not sufficient to assist the user with high-level program understanding tasks. To bridge the gap between current reverse engineering tools and the high-level questions that software maintainers want answered, we propose supplementing traditional program analysis with natural language analysis of program source code. This paper presents a case study where we have augmented an existing reverse engineering tool, an aspect miner, to complement the existing traditional program analysis-based miner with natural language analysis of method names, class names, and comments. Our quantitative and qualitative results strongly suggest that supplementing traditional program analysis with natural language analysis is a promising approach to raising the level of effectiveness of reverse engineering tools.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
 
4
 
5
 
6
 
7
 
8
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns. Addison-Wesley, 1995.
 
9
10
 
11
 
12
 
13
 
14
Ben Liblit, Andrew Begel, and Eve Sweeser. Cognitive perspectives on the role of naming in computer programs. In Annual Psychology of Programming Workshop, Sussex, United Kingdom, 2006.
 
15
 
16
 
17
18
19
20
 
21
David Shepherd, Lori Pollock, and Emily Gibson. Design and evaluation of an automated aspect mining tool. In International Conference on Software Engineering Research and Practice, 2004.
22
23
24
 
25
 
26


Collaborative Colleagues:
David Shepherd: colleagues
Lori Pollock: colleagues
K. Vijay-Shanker: colleagues