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 design patterns based on dynamic analysis of Java software. The idea behind our approach 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 design patterns. The tool has been validated with positive results on different academic implementations of design patterns and on systems as JADEPT itself
Ravani, S., Raibulet, C., Perin, F., ARCELLI FONTANA, F. (2009). JADEPT: Dynamic Analysis for Behavioural Design Pattern. In Evaluation of Novel Approaches to Software Engineering: 3rd and 4th International Conference, Enase 2008 / 2009, Funchal, Madeira, (pp.95-106). Springer.
JADEPT: Dynamic Analysis for Behavioural Design Pattern
RAIBULET, CLAUDIA;ARCELLI FONTANA, FRANCESCA
2009
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 design patterns based on dynamic analysis of Java software. The idea behind our approach 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 design patterns. The tool has been validated with positive results on different academic implementations of design patterns and on systems as JADEPT itselfI documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.