managing change in self-adaptive software systems
Self-adaptive software systems are expected to deal with change during their execution with limited or no human interaction. Therefore a better understanding of change and how it could be managed is a crucial step for achieving self-adaptation. Most of the research in self-adaptive software systems is focused on managing change, which is critical for the system in terms of sustaining its efficiency and operation. The work in this paper takes new direction and introduces the idea of exploratory change, heavily used in many other disciplines to successfully achieve self-adaptation. It proposes a new classification model of change in self-adaptive software systems, which extends the existing taxonomies in the research literature with five new criteria: change motif, change trigger, change adoption, change frequency and change speed. The purpose of this classification model is to aid the distinction between three different approaches for self-adaptation: exploitative, exploratory and mixed approaches.
self-adaptive software systems evolutionary biology strategic management