Detecting behavioral design patterns from software execution data

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

    1 Downloads (Pure)


    Design pattern detection techniques provide useful insights to help understand the design and architecture of software systems. Existing design pattern detection techniques require as input the source code of software systems. Hence, these techniques may become not applicable in case the source code is not available anymore. Large volumes of data are recorded and stored during software execution, which is very useful for design pattern detection of software systems. This chapter introduces a general framework to support the detection of behavioral design patterns by taking as input the software execution data. To show the effectiveness, the proposed framework is instantiated for the observer, state and strategy patterns. The developed pattern detection techniques are implemented in the open-source process mining toolkit ProM. The applicability of the proposed framework is evaluated using software execution data containing around 1.000.000 method calls that are generated by running both synthetic and real-life software systems.

    Original languageEnglish
    Title of host publicationEvaluation of Novel Approaches to Software Engineering - 13th International Conference, ENASE 2018, Revised Selected Papers
    EditorsErnesto Damiani, George Spanoudakis, Leszek A. Maciaszek
    Place of PublicationCham
    Number of pages28
    ISBN (Electronic) 978-3-030-22559-9
    ISBN (Print)978-3-030-22558-2
    Publication statusPublished - 29 Jun 2019
    Event13th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2018 - Funchal, Madeira, Portugal
    Duration: 23 Mar 201824 Mar 2018

    Publication series

    NameCommunications in Computer and Information Science
    ISSN (Print)1865-0929
    ISSN (Electronic)1865-0937


    Conference13th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2018
    CityFunchal, Madeira


    • Behavioral design pattern
    • General framework
    • Observer pattern
    • Pattern instance detection
    • Software execution data
    • State and strategy patterns

    Fingerprint Dive into the research topics of 'Detecting behavioral design patterns from software execution data'. Together they form a unique fingerprint.

    Cite this