Popis: |
Self-adaptive approaches are a promising to address the dynamic and uncertain nature of the environments where today's complex systems operate. In particular, systems operating in military environments, during crises or under unexpected conditions need to address critical concerns related to resource sparsity and the unstable and uncertain nature of exchanged information. Despite a plethora of self-adaptive and autonomic approaches proposed in the last decade, very few have been designed for or evaluated in contested environments, where adversarial action in the communications domain leads to stale or incomplete information, or in resource-constrained environments, where resources are either limited or required by a large number of components. These conditions are where self-adaptability to aid human operators is needed the most. To better understand self-adaptation in contested and resource-constrained environments, we conducted a systematic literature review of publications over the last decade. We conduct our review through the lens of a military environment, where contention, both physical and from a resource, be it computational or communication based is at its peak. We followed the systematic literature review methodology and analysed 238 primary studies. We identified that the most frequent application domains are those where failures are frequent and costly, namely, cloud computing, web services and applications, and servers. Despite this, less than 3% of the papers considered constrained resources and stale or incomplete information and a significant focus was on developing centralised solutions instead of distributed ones throughout all papers. Very few papers (4.6%) considered environments where the information about the system components was not readily available. No papers evaluated the systems running in contested and resource-constrained environments. We present an analysis of the self-adaptive systems that consider incomplete or stale information and constrained resources, discuss their limitations and identify future areas of research. Critical research gaps include the lack of evaluation of self-adaptive approaches, including the lack of standards or formalisms to allow for the comparison of various approaches. In addition, there is a need to consider more self-* properties and non-functional requirements in order to make sure the designed system is resilient. This paper presents our review findings in detail, examines how self-adaptation happens in contested and resource-constrained environments, and discusses the identified research gaps. |