Nowadays, software systems are leveraging upon an aggregation of dedicated solutions, which leads to the design of large scale, distributed, dynamic systems. The need to evolve and update such systems after delivery is often inevitable, for example, due to changes in the requirements, maintenance, or needs for advancing the quality of services such as scalability and performances.
Dynamically adaptive systems (DAS) have emerged to cope with this challenge by enabling the continuous design and adaptation of complex software systems. DAS facilitates handling short-term changes in the execution environment as well as long-term changes in the system requirements. In order to facilitate reasoning, simulation and enactment of adaptation actions, DAS typically rely on a runtime model that provides an abstract representation of the running system. These models are often based on a predefined and fixed set of concepts that describe the current system?s hardware infrastructure and services. However, with the recent advances in the miniaturization of computer hardware, these infrastructures and services can dynamically evolve due to arbitrary node mobility or failures. An interesting challenge is thus to provide support for the dynamic modification of these runtime models on the basis of the appearance or disappearance of devices and services. A particular focus will be given to the integration of such new devices and services within the runtime model on the basis of their similarities at a semantic level (e.g., a newly accessible smartphone can be integrated and considered as a display within the runtime model).
The intention of this AURORA project is to combine ours experience and tooling in the design of DAS (SINTEF) and in dynamic discovery (I3S), and to transform them it into a pivot to co-organise our research efforts based on our pre-existing results and thus to build a sustainable collaboration focusing on addressing the research challenge previously described.