-
Notifications
You must be signed in to change notification settings - Fork 1
Implementation Architecture
The implementation of the mRUBiS exemplar is structured into eleven plug-ins as shown by the following figure. Each node is an Eclipse plug-in project and the arrows represent the direct dependencies between the plug-ins (dependencies are transitive).
The Git repository of the exemplar is structured in the same way. Besides eleven folders for these plug-ins, the repository has one other folder, namely docs
that contains the Eclipse update site project and the update site itself for the mRUBiS exemplar, and it further contains the Java docs.
This plug-in defines the metamodel for the CompArch Modeling Language.
This plug-in defines edit operations for CompArch models. It is completely generated from the CompArch metamodel and used by the generated tree-based editor for CompArch models.
This plug-in implements a tree-based editor for CompArch models that uses the generated edit operations (see de.mdelab.comparch.edit
). It is completely generated from the CompArch metamodel.
This plug-in implements the graphical CompArch Modeling Editor and thus, defines the notation for CompArch models. The editor is based on Eclipse Sirius and only depends on the CompArch metamodel, that is, the de.mdelab.comparch
plug-in.
This plug-in implements the core of the simulator. This core is generic and does not any contain aspects that are specific to a managed system such as the mRUBiS system. Consequently, generic validators are implemented in this project. This plug-in only depends on the CompArch metamodel, that is, the de.mdelab.comparch
plug-in.
This plug-in extends the simulator core and thus, the de.mdelab.simulator
plug-in by implementing aspects that are specific to the mRUBiS system such as certain validators, the injectors for the issues, and the utility functions.
This plug-in just implements the UI for generating CompArch models for mRUBiS. It uses mRUBiS-specific knowledge defined in the de.mdelab.simulator.mrubis
plug-in to generate a CompArch model.
This plug-in projects implements example solutions for adaptation engines for the self-healing of mRUBiS. In this project, CompArch models can be generated (see de.mdelab.simulator.mrubis.ui
plug-in) and the simulator (see de.mdelab.simulator.mrubis
plug-in) is used to develop, test, and evaluate the solutions.
This plug-in projects implements the example solution for an adaptation engine for the self-optimization of mRUBiS. In this project, CompArch models can be generated (see de.mdelab.simulator.mrubis.ui
plug-in) and the simulator (see de.mdelab.simulator.mrubis
plug-in) is used to develop, test, and evaluate the solution.
This plug-in projects just bundles the two plug-ins de.mdelab.simulator.mrubis.examples.selfhealing
and de.mdelab.simulator.mrubis.examples.selfoptimization
to provide them as Eclipse examples.
This plug-in project is a so called Eclipse feature project that just bundles all other plug-ins to the feature "mRUBiS Exemplar". It eases generating a release of the Exemplar to the update site from which (a release of) the mRUBiS exemplar can be installed.
mRUBiS Exemplar by Thomas Vogel (2018)