DynaMoose implements the Dynamix meta-model that describes behavior of object-oriented systems in the context of structural entities of the source code. The main purposes of DyanMoose are:
The goal of the object-oriented paradigm is to achieve an intuitive correspondence between static entities of a problem domain and those of the solution domain. Features denote units of behavior corresponding to well-understood abstractions of the problem domain, but they do not map directly to individual source code artefacts. We center our reverse engineering analyses around the notion of a feature as a dynamic entity. Our motivation is to enrich reverse engineering techniques by taking advantage of the semantic domain knowledge that features represent.
The feature analysis part of DynaMoose was developed by Orla Greevy as a validation for her PhD.
The object flow analysis part of DynaMoose is written by Adrian Lienhard as validation for his PhD.