Adaptation enables a reaction to a changing environment. For traditional software development, that means changing the design and implementation of the software in a potentially complex and expensive process. If requirements are not known until the runtime of a software system, this system must be able to cope with changes during its runtime. For this, self-adaptive systems (SAS) were created. They have internal knowledge about themselves and their environment to reason about changes and take appropriate actions. Many approaches aiming to build such systems have been published since the start of the research area at the beginning of the 21st century.
However, it is difficult to find an appropriate approach, even when all requirements of a scenario the system should be built for are known. If no suitable approach can be found, software developers have to built a new system leading to high development costs and potentially inefficient solutions due to the complexity of the system.
This thesis follows two goals: (1) To make approaches building SAS more comparable through a feature model describing features of SAS, and (2) to provide a novel way of specifying SAS concisely using reference attribute grammars (RAGs) providing efficient systems. RAGs originate from the research field of compiler construction and enable the concise description of parts of the internal knowledge mentioned above as well as of the computation of the actions to cope with recognised changes. To make RAGs fully usable, this thesis presents two extensions: Relational RAGs enable the efficient handling of relations required for knowledge graphs, and Connected RAGs let RAG-based system communicate with other external systems to both recognise changes and execute actions.
To evaluate the novel approaches, a classification of 30 approaches for the feature model and several case studies in the areas smart home, robotics, and system orchestration were conducted. It can be shown, that significantly less code is required to specify SAS. To specify the computation, 14.5 % to 28.7 % less code was required, whereas in another case study only 6.3 % of the total code was manually written and the rest was generated. The efficiency is similar to the best comparable approaches for graph queries. Furthermore, using additional optimizations (incremental evaluation), the execution time can be shown to be faster by a factor of 167.88 less albeit being sometimes by 50.0 % slower for very small workloads and specific queries. In a more realistic, extrapolated experiment, using incremental evaluation creates speed-up factors between 6.63 and 44.93.
With the contributions in this thesis, existing approaches can be selected more precisely, new approaches can classify themselves within the research area, and the development of self-adaptive systems is possible using RAG-based systems.
Identifer | oai:union.ndltd.org:DRESDEN/oai:qucosa:de:qucosa:88700 |
Date | 18 December 2023 |
Creators | Schöne, René |
Contributors | Aßmann, Uwe, Bencomo, Nelly, Castrillon, Jeronimo, Technische Universität Dresden |
Source Sets | Hochschulschriftenserver (HSSS) der SLUB Dresden |
Language | English |
Detected Language | English |
Type | info:eu-repo/semantics/publishedVersion, doc-type:doctoralThesis, info:eu-repo/semantics/doctoralThesis, doc-type:Text |
Rights | info:eu-repo/semantics/openAccess |
Relation | 10.5281/zenodo.6881226, info:eu-repo/grantAgreement/Deutsche Forschungsgemeinschaft/Collaborative Research Centres/164481002//SFB 912: HAEC - Highly Adaptive Energy-Efficient Computing/SFB 912: HAEC, info:eu-repo/grantAgreement/Bundesministerium für Bildung und Forschung/Photonik Forschung Deutschland/13N14051//Greifbares Licht durch Open Source und modulare Ansätze für intelligente Licht- und Beleuchtungssysteme/OpenLicht, info:eu-repo/grantAgreement/Deutsche Forschungsgemeinschaft/Exzellenzstrategie des Bundes und der Länder/390696704//Centre for Tactile Internet with Human-in-the-Loop/CeTI, info:eu-repo/grantAgreement/Bundesministerium für Bildung und Forschung/Souverän. Digital. Vernetzt./16KISK001K//6G-life |
Page generated in 0.0108 seconds