An Architectural Strategy for Self-Adapting Systems
Source: Katholieke Universiteit Leuven
Self-adaptation is the ability of a software system to adapt to dynamic and changing operating conditions autonomously. In this paper, the authors present an architectural strategy for self-adapting systems. An architectural strategy embodies architectural knowledge about a particular solution approach. The architectural strategy for self-adapting systems structures the software into a number of interacting autonomous entities (agents) that are situated in an environment. It integrates a set of architectural patterns that have proved to be valuable in the design of various self-adapting applications. The self-adapting properties of the approach are based on the agents' abilities to adapt their behavior to dynamic and changing circumstances.