|
Published Articles >> Table of Contents >> Abstract
21st IEEE International Conference on Automated Software Engineering (ASE'06)
pp. 123-134
Reverse Engineering of Design Patterns from Java Source Code
Nija Shi, University of California, Davis
Ronald A. Olsson, University of California, Davis
Full Article Text:

DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ASE.2006.57
Send link to a friend
| Abstract |
|
Recovering design patterns can enhance existing source
code analysis tools by bringing program understanding to
the design level. This paper presents a new, fully automated
pattern detection approach. The new approach is based on
our reclassification of the GoF patterns by their pattern intent.
We argue that the GoF pattern catalog classifies design
patterns in the forward-engineering sense; our reclassification
is better suited for reverse engineering. Our approach
uses lightweight static program analysis techniques
to capture program intent. This paper also describes our
tool, PINOT, that implements this new approach. PINOT
detects all the GoF patterns that have concrete definitions
driven by code structure or system behavior. Our tool is
faster, more accurate, and targets more patterns than existing
pattern detection tools. PINOT has been used successfully
in detecting patterns in Java AWT, JHotDraw, Swing,
Apache Ant, and many other programs and packages.
|
Additional Information
|
Citation:
Nija Shi, Ronald A. Olsson,
"Reverse Engineering of Design Patterns from Java Source Code,"
ase,
pp. 123-134,
21st IEEE International Conference on Automated Software Engineering (ASE'06),
2006
|
|