skip to main content
10.1145/3183440.3194947acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
poster

A general framework to detect behavioral design patterns

Published: 27 May 2018 Publication History

Abstract

This paper presents a general framework to detect behavioral design patterns by combining source code and execution data. The framework has been instantiated for the observer, state and strategy patterns to demonstrate its applicability. By experimental evaluation, we show that our combined approach can guarantee a higher precision and recall than purely static approaches. In addition, our approach can discover all missing roles and return complete pattern instances that cannot be supported by existing approaches.

References

[1]
Francesca Arcelli, Fabrizio Perin, Claudia Raibulet, and Stefano Ravani. 2010. Design Pattern Detection in Java Systems: A Dynamic Analysis Based Approach. Evaluation of Novel Approaches to Software Engineering (2010), 163--179.
[2]
Mario Luca Bernardi, Marta Cimitile, and Giuseppe Di Lucca. 2014. Design pattern detection using a DSL-driven graph matching approach. Journal of Software: Evolution and Process 26, 12(2014), 1233--1266.
[3]
Andrea De Lucia, Vincenzo Deufemia, Carmine Gravino, and Michele Risi. 2009. Behavioral pattern identification through visual language parsing and code instrumentation. In 13th European Conference on Software Maintenance and Reengineering, CSMR'09. IEEE, 99--108.
[4]
Cong Liu, Boudewijn van Dongen, Nour Assy, and Wil van der Aalst. 2016. Component Behavior Discovery from Software Execution Data. In International Conference on Computational Intelligence and Data Mining. IEEE, 1--8.
[5]
Cong Liu, Boudewijn van Dongen, Nour Assy, and Wil van der Aalst. 2018. A Framework to Support Behavioral Design Pattern Detection from Software Execution Data. In 13th International Conference on Evaluation of Novel Approaches to Software Engineering. 1--12.
[6]
Cong Liu, Boudewijn van Dongen, Nour Assy, and Wil van der Aalst. 2018. Software Architectural Model Discovery from Execution Data. In 13th International Conference on Evaluation of Novel Approaches to Software Engineering. 1--8.

Cited By

View all
  • (2022)A Survey on Different Approaches to Automating the Design Phase in the Software Development Life CycleResearch Anthology on Agile Software, Software Development, and Testing10.4018/978-1-6684-3702-5.ch027(542-564)Online publication date: 2022
  • (2021)A General Framework to Detect Design Patterns by Combining Static and Dynamic Analysis TechniquesInternational Journal of Software Engineering and Knowledge Engineering10.1142/S021819402140002731:01(21-54)Online publication date: 4-Feb-2021
  • (2020)A Survey on Different Approaches to Automating the Design Phase in the Software Development Life CycleHandbook of Research on Engineering Innovations and Technology Management in Organizations10.4018/978-1-7998-2772-6.ch018(350-372)Online publication date: 2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '18: Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings
May 2018
231 pages
ISBN:9781450356633
DOI:10.1145/3183440
  • Conference Chair:
  • Michel Chaudron,
  • General Chair:
  • Ivica Crnkovic,
  • Program Chairs:
  • Marsha Chechik,
  • Mark Harman
Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 27 May 2018

Check for updates

Author Tags

  1. behavioral design pattern
  2. discovery and detection
  3. general framework
  4. pattern instance invocation

Qualifiers

  • Poster

Conference

ICSE '18
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)3
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2022)A Survey on Different Approaches to Automating the Design Phase in the Software Development Life CycleResearch Anthology on Agile Software, Software Development, and Testing10.4018/978-1-6684-3702-5.ch027(542-564)Online publication date: 2022
  • (2021)A General Framework to Detect Design Patterns by Combining Static and Dynamic Analysis TechniquesInternational Journal of Software Engineering and Knowledge Engineering10.1142/S021819402140002731:01(21-54)Online publication date: 4-Feb-2021
  • (2020)A Survey on Different Approaches to Automating the Design Phase in the Software Development Life CycleHandbook of Research on Engineering Innovations and Technology Management in Organizations10.4018/978-1-7998-2772-6.ch018(350-372)Online publication date: 2020
  • (2019)Detecting Behavioral Design Patterns from Software Execution DataEvaluation of Novel Approaches to Software Engineering10.1007/978-3-030-22559-9_7(137-164)Online publication date: 29-Jun-2019
  • (2018)Component interface identification and behavioral model discovery from software execution dataProceedings of the 26th Conference on Program Comprehension10.1145/3196321.3196338(97-107)Online publication date: 28-May-2018

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