skip to main content
10.1145/2480362.2480564acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Automatic recognition of design motifs using semantic conditions

Published: 18 March 2013 Publication History

Abstract

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.

References

[1]
Ontologies website. Available online: http://www.indiana.edu/~awny/index.php/research/ontologies/.
[2]
A. Binun and G. Kniesel. DPJF - design pattern detection with high accuracy. In Proceedings of the European Conference on Software Maintenance and Reengineering, pages 245--254, Szeged, Hungary, 2012.
[3]
M. O. Cinneide and P. Nixon. A methodology for the automated introduction of design patterns. In the IEEE International Conference on Software Maintenance, pages 463--472, Oxford, UK, 1999.
[4]
A. De Lucia, V. Deufemia, C. Gravino, and M. Risi. Improving behavioral pattern detection through model checking. In the European Conference on Software Maintenance and Reengineerig, pages 176--185, 2010.
[5]
J. Dietrich and C. Elgar. Towards a web of patterns. In Workshop on Semantic Web Enabled Software Engineering, pages 117--132, Ireland, 2005.
[6]
E. Gamma, E. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
[7]
Y.-G. Guéhenéuc and G. Antoniol. DeMIMA: A multilayered approach for design pattern identification. IEEE Transactions on Software Engineering, 34(5):667--684, 2008.
[8]
N. Shi and R. A. Olsson. Reverse engineering of design patterns from Java source code. In the IEEE/ACM International Conference on Automated Software Engineering, pages 123--132, Tokyo, Japan, 2006.
[9]
T. Tsantalis, A. Stephanides, and S. Halkidis. Design pattern detection using similarity scoring. IEEE Transactions on Software Engineering, 32(11):896--909, 2006.

Cited By

View all
  • (2024)A declarative approach to detecting design patterns from Java execution traces and source codeInformation and Software Technology10.1016/j.infsof.2024.107457171(107457)Online publication date: Jul-2024
  • (2020)Design pattern detection approaches: a systematic review of the literatureArtificial Intelligence Review10.1007/s10462-020-09834-5Online publication date: 20-Apr-2020
  • (2014)Design pattern detection using a DSL-driven graph matching approachJournal of Software: Evolution and Process10.1002/smr.167426:12(1233-1266)Online publication date: 1-Dec-2014

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '13: Proceedings of the 28th Annual ACM Symposium on Applied Computing
March 2013
2124 pages
ISBN:9781450316569
DOI:10.1145/2480362
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 March 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. design patterns
  2. ontology formalisms
  3. program comprehension
  4. semantic reasoning
  5. software maintenance

Qualifiers

  • Research-article

Funding Sources

Conference

SAC '13
Sponsor:
SAC '13: SAC '13
March 18 - 22, 2013
Coimbra, Portugal

Acceptance Rates

SAC '13 Paper Acceptance Rate 255 of 1,063 submissions, 24%;
Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 22 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)A declarative approach to detecting design patterns from Java execution traces and source codeInformation and Software Technology10.1016/j.infsof.2024.107457171(107457)Online publication date: Jul-2024
  • (2020)Design pattern detection approaches: a systematic review of the literatureArtificial Intelligence Review10.1007/s10462-020-09834-5Online publication date: 20-Apr-2020
  • (2014)Design pattern detection using a DSL-driven graph matching approachJournal of Software: Evolution and Process10.1002/smr.167426:12(1233-1266)Online publication date: 1-Dec-2014

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media