-
Notifications
You must be signed in to change notification settings - Fork 1
Example Solutions
We provide example solutions of adaptation engines for self-healing and self-optimizing mRUBiS. These solutions can be obtained as Eclipse examples.
In Eclipse: File > New > Example. This opens the following dialog where the examples can be obtained as Eclipse projects.
The mRUBiS Self-Healing Example contains three different adaptation engines:
- A monolithic state-based feedback loop that processes the CompArch model in batch mode to realize self-adaptation (see
StateBasedFeedbackLoop.java
). - A state-based feedback loop decomposed into the four MAPE activities that analyze the CompArch model in batch mode and that use annotations in the model to exchange knowledge with each other to realize self-adaptation (see
StateBasedMapeFeedbackLoop.java
). - An event-based feedback loop that use event-condition-action rules to process the CompArch model and to realize self-adaptation (see
ECAFeedbackLoop.java
).
The mRUBiS Self-Optimization Example contains one adaptation engine:
- An event-based feedback loop that is decomposed into four MAPE activities that analyze the CompArch model based on change events and that use annotations in the model to exchange knowledge with each other to realize self-adaptation (see
EventBasedMapeFeedbackLoop.java
).
Each solution provides a main method in the corresponding class (see referenced classes in the previous section) to run the exemplar (as described here) and the solution in Eclipse. The simulation results are stored in the folder results
of the project (refresh the folder in Eclipse after the simulation to see the created files containing the results).
All solutions are realized with plain Java to avoid any dependency to other tools, frameworks, and libraries. However, mRUBiS allows developers to use any EMF-compatible technology to process the architectural runtime model.
mRUBiS Exemplar by Thomas Vogel (2018)