Archimetrix - Iterative Architecture Recovery and Reengineering

Archimetrix is a tool-supported reengineering process that combines different reverse engineering approaches to enable an iterative recovery and reengineering of component-based software architectures. It is developed by the Software Engineering Group at the University of Paderborn.

Archimetrix combines clustering and pattern detection techniques to recover the architecture of a software system from source code. While the clustering extracts a software architecture based on source code metrics, the pattern detection is used to detect design deficiencies in the architecture. Archimetrix supports the reengineer by identifying components that are especially relevant for the detection of design deficiencies. It also ranks the detected deficiencies so the reengineer can focus on the important problems. Once the deficiencies are removed, the clustering can be used again to get a clearer view of the now improved software architecture.

Archimetrix currently offers the following features:

  • Analysis of Java, C++, and Delphi code
  • Recovery of a component-based architecture from the code
  • Identification of components that are likely to contain deficiencies
  • Detection of design deficiencies
  • Ranking of deficiencies by their negative impact on the recovered architecture
  • Recommendation and automated execution of reengineering strategies to remove bad smells
  • Preview of the influence of selected reengineering strategies on the architecture.


Additional Resources

As additional resources to the official publications on Archimetrix, we provide a description of the different design deficiencies and the SoMoX configuration that we used in our validation.


Download

Please follow the intructions below to install Archimetrix.
  • Use the JDK 1.6.
  • Download and install the Eclipse Modeling Tools in version 3.6.1 (e.g. from [1])
    • Eclipse 3.6.2 (Helios SR2) is compatible but shows a selection issue in the multipage editor (see [2])
    • The Eclipse Indigo release (Eclipse 3.7) is incompatible at the moment

  • Go to Help -> Install New Software... and install Archimetrix from the update site [3].


[1] http://www.eclipse.org/downloads/packages/release/helios/sr1
[2] https://bugs.eclipse.org/bugs/show_bug.cgi?id=339360
[3]
http://dsd-serv.uni-paderborn.de/svn/updatesites/archimetrixhttps://bugs.eclipse.org/bugs/show_bug.cgi?id=339360

Publications related to Archimetrix


2012

M. Platenius, M. von Detten, S. Becker: Archimetrix: Improved Software Architecture Recovery in the Presence of Design Deficiencies. In Proceedings of the 16th European Conference on Software Maintenance and Reengineering. 2012

[Show Abstract] [Show BibTeX]

2011

O. Travkin, M. von Detten, S. Becker: Towards the Combination of Clustering-based and Pattern-based Reverse Engineering Approaches. In Proceedings of the 3rd Workshop of the GI Working Group L2S2 - Design for Future 2011 (Karlsruhe, Germany). February 2011

[Show Abstract] [PDF] [Show BibTeX]
M. von Detten, S. Becker: Combining Clustering and Pattern Detection for the Reengineering of Component-based Software Systems. In Proceedings of the 7th International Conference on the Quality of Software Architectures, QoSA 2011 (Boulder, Colorado, USA). ACM Press, 2011

[Show Abstract] [PDF] [Show BibTeX]
M. Platenius: Reengineering of Design Deficiencies in Component-Based Software Architectures. Master's thesis, University of Paderborn, October 2011

[PDF] [Show BibTeX]
O. Travkin: Kombination von Clustering- und musterbasierten Reverse-Engineering-Verfahren. Master's thesis, University of Paderborn, 2011 . In German.

[PDF] [Show BibTeX]

Imprint | Webmaster | Recent changes: 27.01.2012