Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
A Methodology for the Automated Introduction of Design Patterns
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
Reverse Engineering of Design Patterns from Java Source Code
ASE '06 Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering
Design Pattern Detection Using Similarity Scoring
IEEE Transactions on Software Engineering
DeMIMA: A Multilayered Approach for Design Pattern Identification
IEEE Transactions on Software Engineering
Improving Behavioral Design Pattern Detection through Model Checking
CSMR '10 Proceedings of the 2010 14th European Conference on Software Maintenance and Reengineering
DPJF - Design Pattern Detection with High Accuracy
CSMR '12 Proceedings of the 2012 16th European Conference on Software Maintenance and Reengineering
Hi-index | 0.00 |
Program comprehension is vital for building, enhancing and maintaining existing software systems. In this paper, we propose an automatic reverse engineering approach that leverages understanding and reusing software libraries through the automatic recovery of the motifs described by design patterns. Initially we formalise the description of common patterns. We then exploit Semantic Web knowledge representation mechanisms for capturing these descriptions in source-code. Empirical evaluations of this approach show evidence that when conceptual knowledge of source-code is represented using ontology formalisms, and when semantic rules are used to capture pattern structure and behavior, we can achieve an effective and flexible detection of patterns without relying on hard-coded heuristics.