The Marple Project: A tool for Design Patterns Detection and Software Architecture Reconstructiion
Francesca Arcelli Fontana, C Tosi, Marco Zanoni, Stefano Maggioni · 2008
It is well known that software maintenance and evolution are expensive activities, both in terms of invested time and money. Reverse engineering activities support the obtainment of abstractions and views from a target system that should help the engineers to maintain, evolve and eventually re-engineer it. Two important tasks pursued by reverse engineering are design pattern detection and software architecture reconstruction, whose main objectives are the identication of the design patterns that have been used in the implementation of a system as well as the generation of views placed at dierent levels of abstractions, that let the practitioners focus on the overall architecture of the system without minding at the programming details it has been implemented with. In this context we propose an Eclipse plug-in called MARPLE (Metrics and Architecture Reconstruction Plug-in for Eclipse), which supports both the detection of design patterns and software architecture reconstruction activities through the use of basic elements and metrics that are mechanically extracted from source code. The development of this platform is mainly based on the exploitation of the Eclipse framework and plug-ins as well as of dierent Java