| Case study: supplementing program analysis with natural language analysis to improve a reverse engineering task |
| Full text |
Pdf
(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
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 6, Downloads (12 Months): 39, Citation Count: 1
|
|
|
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
|
M. Ceccato , M. Marin , K. Mens , L. Moonen , P. Tonella , T. Tourwe, A Qualitative Comparison of Three Aspect Mining Techniques, Proceedings of the 13th International Workshop on Program Comprehension, p.13-22, May 15-16, 2005
[doi> 10.1109/WPC.2005.2]
|
| |
6
|
|
| |
7
|
|
| |
8
|
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns. Addison-Wesley, 1995.
|
| |
9
|
|
 |
10
|
Jan Hannemann , Gregor Kiczales, Design pattern implementation in Java and aspectJ, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
| |
11
|
Gregor Kiczales , Erik Hilsdale , Jim Hugunin , Mik Kersten , Jeffrey Palm , William G. Griswold, An Overview of AspectJ, Proceedings of the 15th European Conference on Object-Oriented Programming, p.327-353, June 18-22, 2001
|
| |
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
|
Hausi A. Müller , Jens H. Jahnke , Dennis B. Smith , Margaret-Anne Storey , Scott R. Tilley , Kenny Wong, Reverse engineering: a roadmap, Proceedings of the Conference on The Future of Software Engineering, p.47-60, June 04-11, 2000, Limerick, Ireland
[doi> 10.1145/336512.336526]
|
 |
19
|
David Shepherd , Zachary P. Fry , Emily Hill , Lori Pollock , K. Vijay-Shanker, Using natural language program analysis to locate and understand action-oriented concerns, Proceedings of the 6th international conference on Aspect-oriented software development, March 12-16, 2007, Vancouver, British Columbia, Canada
[doi> 10.1145/1218563.1218587]
|
 |
20
|
David Shepherd , Jeffrey Palm , Lori Pollock , Mark Chu-Carroll, Timna: a framework for automatically combining aspect mining analyses, Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, November 07-11, 2005, Long Beach, CA, USA
[doi> 10.1145/1101908.1101937]
|
| |
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
|
Peri Tarr , Harold Ossher , William Harrison , Stanley M. Sutton, Jr., N degrees of separation: multi-dimensional separation of concerns, Proceedings of the 21st international conference on Software engineering, p.107-119, May 16-22, 1999, Los Angeles, California, United States
[doi> 10.1145/302405.302457]
|
| |
25
|
|
| |
26
|
|
CITED BY
|
|
Lori Pollock , K. Vijay-Shanker , David Shepherd , Emily Hill , Zachary P. Fry , Kishen Maloor, Introducing natural language program analysis, Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering, p.15-16, June 13-14, 2007, San Diego, California, USA
|
|