Model driven engineering of self adaptive software The development of self adaptive software requires the engineering of an adaptation engine that controls the underlying adaptable software by a feedback loop. State of the art approaches prescribe the feedback loop in terms of numbers how the activities (e.g. monitor analyze plan and execute (MAPE)) and the knowledge are structured to a feedback loop and the type of knowledge. Moreover the feedback loop is usually hidden in the implementation or framework and therefore not visible in the architectural design. Additionally an adaptation engine often employs runtime models that either represent the adaptable software or capture strategic knowledge such as reconfiguration strategies. State of the art approaches do not systematically address the interplay of such runtime models which would otherwise allow developers to freely design the entire feedback loop. This thesis presents ExecUtable RuntimE MegAmodels (EUREMA) an integrated model driven engineering (MDE) solution that rigorously uses models for engineering feedback[…]