• DocumentCode
    2524503
  • Title

    Improving Behavioral Design Pattern Detection through Model Checking

  • Author

    De Lucia, Andrea ; Deufemia, Vincenzo ; Gravino, Carmine ; Risi, Michele

  • Author_Institution
    Dipt. di Mat. e Inf., Univ. di Salerno Fisciano(SA), Salerno, Italy
  • fYear
    2010
  • fDate
    15-18 March 2010
  • Firstpage
    176
  • Lastpage
    185
  • Abstract
    Recovering design pattern instances in a software system can help maintainers to understand its design and implementation. In this paper we present a fully automated design pattern recovery approach that analyzes the behavior of pattern instances both statically and dynamically. In particular, the proposed approach exploits model checking to statically verify the behavioral aspects of design pattern instances. To this end, we encode the properties defining the correct behavior of a pattern as LTL (Linear Temporal Logic) formulae and the sequence diagram representing the possible interaction traces among the objects involved in the candidate instances as PROMELA specifications. To verify whether the LTL properties are satisfied by the candidates we employ the SPIN model checking tool. The dynamic analysis of the pattern behavior is performed through a code instrumentation and monitoring phase applied on the candidate pattern instances. This phase allows us to obtain actual dynamic data during program execution, which is then used to verify its compliance to the pattern definition. The effectiveness of the proposed approach is shown by presenting and discussing the results obtained on JHotDraw and JRefactory.
  • Keywords
    formal specification; formal verification; object-oriented methods; temporal logic; JHotDraw; JRefactory; LTL formulae; PROMELA specifications; SPIN model checking tool; automated design pattern recovery; behavioral design pattern detection; linear temporal logic; program execution; software system; Analytical models; Instruments; Java; Monitoring; Runtime; Software systems; Unified modeling language; Design Pattern Recovery; Dynamic Analysis; Model Checking;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance and Reengineering (CSMR), 2010 14th European Conference on
  • Conference_Location
    Madrid
  • ISSN
    1534-5351
  • Print_ISBN
    978-1-61284-369-8
  • Electronic_ISBN
    1534-5351
  • Type

    conf

  • DOI
    10.1109/CSMR.2010.16
  • Filename
    5714432