3 research outputs found
Towards the decentralized coordination of multiple self-adaptive systems
When multiple self-adaptive systems share the same environment and have
common goals, they may coordinate their adaptations at runtime to avoid
conflicts and to satisfy their goals. There are two approaches to coordination.
(1) Logically centralized, where a supervisor has complete control over the
individual self-adaptive systems. Such approach is infeasible when the systems
have different owners or administrative domains. (2) Logically decentralized,
where coordination is achieved through direct interactions. Because the
individual systems have control over the information they share, decentralized
coordination accommodates multiple administrative domains. However, existing
techniques do not account simultaneously for both local concerns, e.g.,
preferences, and shared concerns, e.g., conflicts, which may lead to goals not
being achieved as expected. Our idea to address this shortcoming is to express
both types of concerns within the same constraint optimization problem. We
propose CoADAPT, a decentralized coordination technique introducing two types
of constraints: preference constraints, expressing local concerns, and
consistency constraints, expressing shared concerns. At runtime, the problem is
solved in a decentralized way using distributed constraint optimization
algorithms implemented by each self-adaptive system. As a first step in
realizing CoADAPT, we focus in this work on the coordination of adaptation
planning strategies, traditionally addressed only with centralized techniques.
We show the feasibility of CoADAPT in an exemplar from cloud computing and
analyze experimentally its scalability
A framework for engineering reusable self-adaptive systems
The increasing complexity and size of information systems result in an increasing effort for maintenance. Additionally, miniaturization of devices leads to mobility and the need for context-adaptation. Self-adaptive Systems (SASs) can adapt to changes in their environment or the system itself. So far, however, development of SASs is frequently tailored towards the requirements of use cases. The research for reusable elements — for implementation as well as design processes — is often neglected. Integrating reusable processes and implementation artifacts into a framework and offering a tool suite to developers would make development of SASs faster and less error-prone. This thesis presents the Framework for Engineering Self-adaptive Systems (FESAS). It offers a reusable implementation of a reference system, tools for implementation and design as well as a middleware for controlling system deployment. As a second contribution, this thesis introduces a new approach for self-improvement of SASs which complements the SAS with meta-adaptation