SoMoX Documentation
SoMoX Installation
SoMoX is part of the Q-ImPrESS tooling. The easiest way to install SoMoX is to follow the Q-ImPrESS tooling installation. The Q-ImPrESS tooling includes complementing features such as:
- Graphical and Tree-based Model Editors
- Performance Prediction (Palladio)
- Reliability Prediction
- Maintainability and Cost Estimation Tooling
- Architecture Alternatives Design Evaluation
- All-In-One Eclipse Update Site
SoMoX is based on Eclipse 3.5 and integrated with the Q-ImPrESS toolchain.
Using SoMoX
Intepreting the results
If you are interested in the top-most composite components only, simply open the last composite component entries from the "model/internal_architecture_model.samm_repository" file. The more to the end of the list of composite components a component is, the later was the iteration it was created it. Thus, it is a more abstract component.
Limit the reverse engineering scope
You have one major option to limit the information present in the reverse engineered model. You can blacklist classes and packages in the run configuration of SoMoX ("Launch Simple Model Analyzer") and the run configuration tab of "Q-Impress Reverse Engineering" in the "Metrics Configuration > Blacklist" tab. Here you can either specify a regular expression or in case of the "Launch Simple Model Analyzer" additionally pick blacklisted items in the package tree. A blacklist regular expression is for example of the format "java.*|javax.*" to exclude tha Java Libraries.
Blacklisting Settings
Default Blacklist Setting for Java-based systems:
java\..*|javax\..*
Other common libraries to exclude:
junit\..*|org\.apache\..*
Details on metric results and intermediate steps
In case you want more insights into the metrics calculation, you can switch on the "ALL" logging level in the "Common" tab of the run configuration. If enabled, the console output contains the metric details. Furthermore, in the "model/dotClusterTrace" folder graphs of the different iterations are present in the dot format. The dotty viewer can open that graph format.
Related Publications
- SoMoX Metric Documentation (PDF) (Thanks to Henning Hager for providing the documentation)
- "Reverse Engineering Component Models for Quality Predictions" Publication on SoMoX BibTeX
- Publication on ArchiRec (the predecessor of SoMoX)BibTeX
- Screencasts on the Q-ImPrESS reverse engineering approach
SoMoX Wiki
The actual documentation in the Wiki of the Chair of Software Design and Quality by Prof. Reussner at the Karsruher Institute for Technology: http://sdqweb.ipd.kit.edu/wiki/SoMoX#Documentation

