A framework to support behavioral design pattern detection from software execution data

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

4 Citations (Scopus)

Abstract

The detection of design patterns provides useful insights to help understanding not only the code but also the design and architecture of the underlying software system. Most existing design pattern detection approaches and tools rely on source code as input. However, if the source code is not available (e.g., in case of legacy software systems) these approaches are not applicable anymore. During the execution of software, tremendous amounts of data can be recorded. This provides rich information on the runtime behavior analysis of software. This paper presents a general framework to detect behavioral design patterns by analyzing sequences of the method calls and interactions of the objects that are collected in software execution data. To demonstrate the applicability, the framework is instantiated for three well-known behavioral design patterns, i.e., observer, state and strategy patterns. Using the open-source process mining toolkit ProM, we have developed a tool that supports the whole detection process. We applied and validated the framework using software execution data containing around 1000.000 method calls generated from both synthetic and open-source software systems.

Original languageEnglish
Title of host publicationENASE 2018 - Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering
PublisherSCITEPRESS-Science and Technology Publications, Lda.
Pages65-76
Number of pages12
ISBN (Electronic)978-989-758-300-1
DOIs
Publication statusPublished - 1 Jan 2018
Event13th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2018 - Funchal, Madeira, Portugal
Duration: 23 Mar 201824 Mar 2018

Conference

Conference13th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2018
CountryPortugal
CityFunchal, Madeira
Period23/03/1824/03/18

    Fingerprint

Keywords

  • Behavioral Design Pattern
  • General Framework
  • Pattern Instance Detection
  • Software Execution Data

Cite this

Liu, C., van Dongen, B., Assy, N., & van der Aalst, W. M. P. (2018). A framework to support behavioral design pattern detection from software execution data. In ENASE 2018 - Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering (pp. 65-76). SCITEPRESS-Science and Technology Publications, Lda.. https://doi.org/10.5220/0006688000650076