Nothing Special   »   [go: up one dir, main page]

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

Design pattern detection by template matching

Published: 16 March 2008 Publication History

Abstract

In this paper, we adopt a template matching method to detect design patterns from a software system by calculating their normalized cross correlation. Because design patterns document flexible design ideas, there can be various ways of implementing them. In our approach, not only the exact matches of pattern instances are detected from system source code, but also the variations of pattern candidates can be identified. Based on our method, we provide tool support and perform experiments on different large open-source systems.

References

[1]
G. Antoniol, G. Casazza, M. D. Penta, R. Fiutem, Object-oriented design pattern recovery, Journal of Systems and Software, 59 (2), p. 181--196, 2001.
[2]
D. H. Ballard and C. M. Brown, Computer Vision, Prentice Hall, 1982.
[3]
V. D. Blondel, A. Gajardo, M. Heymans, P. Senellart, and P. Van Dooren, A Measure of Similarity between Graph Vertices: Applications to Synonym Extraction and Web Searching, SIAM Rev., vol. 46, no. 4, pp. 647--666, 2004.
[4]
J. Dong, D. S. Lad and Y. Zhao, DP-Miner: Design Pattern Discovery Using Matrix, the Proceedings of the Fourteenth Annual IEEE International Conference on Engineering of Computer Based Systems (ECBS), USA, March 2007.
[5]
J. Dong, Y. Zhao, Classification of Design Pattern Traits, Proceedings of the Nineteenth International Conference on Software Engineering and Knowledge Engineering (SEKE), Boston, USA, July 2007.
[6]
J. Dong, Y. Zhao, and T. Peng, Architecture and Design Pattern Discovery Techniques -- A Review, Proceedings of International Conference on Software Engineering Research and Practice (SERP), USA, June 2007.
[7]
R. Ferenc, A. Beszedes, L. Fulop and J. Lele, Design Pattern Mining Enhanced by Machine Learning, 21st IEEE International Conference on Software Maintenance, 2005.
[8]
E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.
[9]
Y.-G. Gueheneuc, H. Sahraoui, and F. Zaidi, Fingerprinting Design Patterns, Proc. 11th Working Conf. on Reverse Eng. (WCRE'04), Nov. 2004.
[10]
H. Huang, S. Zhang, J. Cao, Y. Duan, A practical pattern recovery approach based on both structural and behavioral analysis, Journal of Systems and Software, 75(1--2), 2005.
[11]
J. M. Kleinberg, Authoritative Sources in a Hyperlinked Environment, J. ACM, vol.46, no. 5, pp. 604--632, Sept. 1999
[12]
N. Tsantalis, A. Chatzigeorgiou, G. Stephanides, and S. Halkidis, Design Pattern Detection Using Similarity Scoring, IEEE transaction on software engineering, 32(11), 2006.
[13]
Hudson Pattern Code Example http://home.earthlink.net/~huston2/dp/patterns.html
[14]
JHotDraw, http://www.jhotdraw.org/, 2007.
[15]
JRefactory, http://jrefactory.sourceforge.net/, 2007.
[16]
JUnit, http://www.junit.org/, 2007
[17]
Log4j, http://logging.apache.org/log4j/, 2007.

Cited By

View all
  • (2024)Design Pattern Representation and Detection Based on Heterogeneous Information NetworkReuse and Software Quality10.1007/978-3-031-66459-5_5(72-91)Online publication date: 13-Jul-2024
  • (2022)A Feature-Based Method for Detecting Design Patterns in Source CodeSymmetry10.3390/sym1407149114:7(1491)Online publication date: 21-Jul-2022
  • (2022)Detection and Recognition of Software Design Patterns Based on Machine Learning Techniques: A Big Step Towards Software Design Re-usabilityEngineering Software for Modern Challenges10.1007/978-3-031-19968-4_1(3-15)Online publication date: 16-Nov-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '08: Proceedings of the 2008 ACM symposium on Applied computing
March 2008
2586 pages
ISBN:9781595937537
DOI:10.1145/1363686
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: 16 March 2008

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. cross correlation
  2. design pattern
  3. matrix
  4. template matching

Qualifiers

  • Research-article

Conference

SAC '08
Sponsor:
SAC '08: The 2008 ACM Symposium on Applied Computing
March 16 - 20, 2008
Fortaleza, Ceara, Brazil

Acceptance Rates

Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)28
  • Downloads (Last 6 weeks)1
Reflects downloads up to 30 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Design Pattern Representation and Detection Based on Heterogeneous Information NetworkReuse and Software Quality10.1007/978-3-031-66459-5_5(72-91)Online publication date: 13-Jul-2024
  • (2022)A Feature-Based Method for Detecting Design Patterns in Source CodeSymmetry10.3390/sym1407149114:7(1491)Online publication date: 21-Jul-2022
  • (2022)Detection and Recognition of Software Design Patterns Based on Machine Learning Techniques: A Big Step Towards Software Design Re-usabilityEngineering Software for Modern Challenges10.1007/978-3-031-19968-4_1(3-15)Online publication date: 16-Nov-2022
  • (2021)A new method for detecting various variants of GoF design patterns using conceptual signaturesSoftware Quality Journal10.1007/s11219-021-09576-930:3(651-686)Online publication date: 29-Nov-2021
  • (2021)Detecting design patterns: a hybrid approach based on graph matching and static analysisInformation Technology and Management10.1007/s10799-021-00339-323:3(139-150)Online publication date: 5-Nov-2021
  • (2020)Design pattern detection approaches: a systematic review of the literatureArtificial Intelligence Review10.1007/s10462-020-09834-5Online publication date: 20-Apr-2020
  • (2020)Safer ParallelizationLeveraging Applications of Formal Methods, Verification and Validation: Engineering Principles10.1007/978-3-030-61470-6_8(117-137)Online publication date: 27-Oct-2020
  • (2019)Static Detection of Design Patterns in Class DiagramsProceedings of the 8th Computer Science Education Research Conference10.1145/3375258.3375268(79-88)Online publication date: 18-Nov-2019
  • (2019)On the Effects of Developers' Intuition on Measuring Similarity Between UML ModelsProceedings of the XV Brazilian Symposium on Information Systems10.1145/3330204.3330238(1-8)Online publication date: 20-May-2019
  • (2019)Applying learning-based methods for recognizing design patternsInnovations in Systems and Software Engineering10.1007/s11334-019-00329-315:2(87-100)Online publication date: 1-Jun-2019
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media