Skip to main content

Research Repository

Advanced Search

RaM: Causally-Connected and Requirements-Aware Runtime Models using Bayesian Learning

Bencomo, Nelly; Paucar, Luis Hernán García

Authors

Luis Hernán García Paucar



Contributors

Marouane Kessentini
Editor

Tao Yue
Editor

Alexander Pretschner
Editor

Sebastian Voss
Editor

Loli Burgueño
Editor

Abstract

[Context/Motivation] A model at runtime can be defined as an abstract representation of a system, including its structure and behaviour, which exist alongside with the running system. Runtime models provide support for decision-making and reasoning based on design-time knowledge but, also based on information that may emerge at runtime and which was not foreseen before execution. [Questions/Problems] A challenge that persists is the update of runtime models during the execution to support up-to-date information for reasoning and decision-making. New techniques based on machine learning (ML) and Bayesian Learning offer great potential to support the update of runtime models during execution. Runtime models can be updated using these new techniques to, therefore, offer better-informed decision-making based on evidence collected at runtime. The techniques we use in this paper are based on a novel implementation of Partially Observable Markov Decision Processes (POMDPs). [Contribution] In this paper, we demonstrate how given the requirements specification, a Requirements-aware runtime model based on POMDPs (RaM-POMDP) is defined. We study in detail the nature of such runtime models coupled with consideration of the Bayesian inference algorithms and tools that provide evidence of unexpected/surprising changes in the environment. We show how the RaM-POMDPs and the MAPE-K loop offer the basis of the software architecture presented and how the required casual connection of runtime models is realized. Specifically, we demonstrate how according to evidence of changes in the systems, collected by the monitoring infrastructure and using Bayesian inference, the runtime models are updated and inferred (i.e. the first aspect of the causal connection). We also demonstrate how the running system changes its runtime model, producing therefore the corresponding self-adaptations. These self-adaptations are reflected on the managed system (i.e. the second aspect of the causal connection) to better satisfice the requirements specifications and improve conformance to its service level agreements (SLAs). The experiments have been applied to a real case study for the networking application domain.

Presentation Conference Type Conference Paper (Published)
Conference Name 22nd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2019
Start Date Sep 15, 2019
End Date Sep 20, 2019
Online Publication Date Nov 21, 2019
Publication Date 2019
Deposit Date Sep 25, 2022
Publisher Institute of Electrical and Electronics Engineers
Pages 216-226
DOI https://doi.org/10.1109/models.2019.00005
Public URL https://durham-repository.worktribe.com/output/1135242