In the context of reverse engineering, the recognition of design patterns provides additional information related to the rationale behind the design. This paper presents our approach to the recognition of the behavioral design patterns based on dynamic analysis of Java software systems. The idea behind our solution is to identify a set of rules capturing information necessary to identify a design pattern instance. Rules are characterized by weights indicating their importance in the detection of a specific design pattern. The core behavior of each design pattern may be described through a subset of these rules forming a macrorule. Macrorules define the main traits of a pattern. JADEPT (JAva DEsign Pattern deTector) is our software for design pattern identification based on this idea. It captures static and dynamic aspects through a dynamic analysis of the software by exploiting the JPDA (Java Platform Debugger Architecture). The extracted information is stored in a database. Queries to the database implement the rules defined to recognize the design patterns. The tool has been validated with positive results on different implementations of design patterns and on systems as JADEPT itself.

ARCELLI FONTANA, F., Perin, F., Raibulet, C., Ravani, S. (2010). Design Pattern Detection in Java Systems: A Dynamic Analysis Based Approach. In Evaluation of Novel Approaches to Software Engineering (pp.163-179). Berlin : Springer [10.1007/978-3-642-14819-4_12].

Design Pattern Detection in Java Systems: A Dynamic Analysis Based Approach

ARCELLI FONTANA, FRANCESCA;RAIBULET, CLAUDIA;
2010

Abstract

In the context of reverse engineering, the recognition of design patterns provides additional information related to the rationale behind the design. This paper presents our approach to the recognition of the behavioral design patterns based on dynamic analysis of Java software systems. The idea behind our solution is to identify a set of rules capturing information necessary to identify a design pattern instance. Rules are characterized by weights indicating their importance in the detection of a specific design pattern. The core behavior of each design pattern may be described through a subset of these rules forming a macrorule. Macrorules define the main traits of a pattern. JADEPT (JAva DEsign Pattern deTector) is our software for design pattern identification based on this idea. It captures static and dynamic aspects through a dynamic analysis of the software by exploiting the JPDA (Java Platform Debugger Architecture). The extracted information is stored in a database. Queries to the database implement the rules defined to recognize the design patterns. The tool has been validated with positive results on different implementations of design patterns and on systems as JADEPT itself.
paper
reverse engineering, design pattern detection, rules, dynamic analysis, Java
English
ENASE 2008/2009, Communications in Computer and Information Science (CCIS) 69 Proceedings
2009
Evaluation of Novel Approaches to Software Engineering
3-642-14818-2
2010
69
163
179
none
ARCELLI FONTANA, F., Perin, F., Raibulet, C., Ravani, S. (2010). Design Pattern Detection in Java Systems: A Dynamic Analysis Based Approach. In Evaluation of Novel Approaches to Software Engineering (pp.163-179). Berlin : Springer [10.1007/978-3-642-14819-4_12].
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10281/35501
Citazioni
  • Scopus 11
  • ???jsp.display-item.citation.isi??? 8
Social impact