A Service Based Approach to Self-Adaptive Software Systems Based on Constructing a Group of Autonomic Elements

As requirements and environments become much more complex, the need for self-adaptive and self-healing software system grows. There are several existing works which present such systems by using different approaches. Using alternative solutions to provide a service or requirement is one of the most important approaches among existing works. In this paper an alternative-based approach for adding self-adaptive capabilities to software systems is proposed. In this approach a group of autonomic elements will be constructed based on different design or implementations that could be considered for a specific service or requirement. By using this approach, a highly adaptive software system could be built based on autonomic elements, so that it needs much less memory and processing resources in comparison to similar existing works.