Analysing and modelling runtime architectural stability for self-adaptive software

Research output: Contribution to journalArticle

Standard

Analysing and modelling runtime architectural stability for self-adaptive software. / Salama, Maria; Bahsoon, Rami.

In: Journal of Systems and Software, Vol. 133, 01.11.2017, p. 95-112.

Research output: Contribution to journalArticle

Harvard

APA

Vancouver

Author

Bibtex

@article{7b3173a5c95c451bb026c1a2dbe3c53b,
title = "Analysing and modelling runtime architectural stability for self-adaptive software",
abstract = "With the increased dependence on software, there is a pressing need for engineering long-lived software. As architectures have a profound effect on the life-span of the software and the provisioned quality of service, stable architectures are significant assets. Architectural stability tends to reflect the success of the system in supporting continuous changes without phasing-out. For self-adaptive architectures, the behavioural aspect of stability is essential for seamless operation, to continuously keep the provision of quality requirements stable and prevent unnecessary adaptations that will risk degrading the system. In this paper, we introduce a systematic approach for analysing and modelling architectural stability. Specifically, we leverage architectural concerns and viewpoints to explicitly analyse stability attributes of the intended behaviour. Due to the probabilistic nature of systems{\textquoteright} behaviour, stability modelling is based on a probabilistic relational model for knowledge representation of stability multiple viewpoints. The model, empowered by the quantitative analysis of Bayesian networks, is capable to conduct runtime inference for reasoning about stability under runtime uncertainty. To illustrate the applicability and evaluate the proposed approach, we consider the case of cloud architectures. The results show that the approach increases the efficiency of the architecture in keeping the expected behaviour stable during runtime operation.",
keywords = "software architecture , architectural stability , self-adaptive architecture , sustainability , quality of service , cloud architecture",
author = "Maria Salama and Rami Bahsoon",
year = "2017",
month = nov
day = "1",
doi = "10.1016/j.jss.2017.07.041",
language = "English",
volume = "133",
pages = "95--112",
journal = "Journal of Systems and Software",
issn = "0164-1212",
publisher = "Elsevier",

}

RIS

TY - JOUR

T1 - Analysing and modelling runtime architectural stability for self-adaptive software

AU - Salama, Maria

AU - Bahsoon, Rami

PY - 2017/11/1

Y1 - 2017/11/1

N2 - With the increased dependence on software, there is a pressing need for engineering long-lived software. As architectures have a profound effect on the life-span of the software and the provisioned quality of service, stable architectures are significant assets. Architectural stability tends to reflect the success of the system in supporting continuous changes without phasing-out. For self-adaptive architectures, the behavioural aspect of stability is essential for seamless operation, to continuously keep the provision of quality requirements stable and prevent unnecessary adaptations that will risk degrading the system. In this paper, we introduce a systematic approach for analysing and modelling architectural stability. Specifically, we leverage architectural concerns and viewpoints to explicitly analyse stability attributes of the intended behaviour. Due to the probabilistic nature of systems’ behaviour, stability modelling is based on a probabilistic relational model for knowledge representation of stability multiple viewpoints. The model, empowered by the quantitative analysis of Bayesian networks, is capable to conduct runtime inference for reasoning about stability under runtime uncertainty. To illustrate the applicability and evaluate the proposed approach, we consider the case of cloud architectures. The results show that the approach increases the efficiency of the architecture in keeping the expected behaviour stable during runtime operation.

AB - With the increased dependence on software, there is a pressing need for engineering long-lived software. As architectures have a profound effect on the life-span of the software and the provisioned quality of service, stable architectures are significant assets. Architectural stability tends to reflect the success of the system in supporting continuous changes without phasing-out. For self-adaptive architectures, the behavioural aspect of stability is essential for seamless operation, to continuously keep the provision of quality requirements stable and prevent unnecessary adaptations that will risk degrading the system. In this paper, we introduce a systematic approach for analysing and modelling architectural stability. Specifically, we leverage architectural concerns and viewpoints to explicitly analyse stability attributes of the intended behaviour. Due to the probabilistic nature of systems’ behaviour, stability modelling is based on a probabilistic relational model for knowledge representation of stability multiple viewpoints. The model, empowered by the quantitative analysis of Bayesian networks, is capable to conduct runtime inference for reasoning about stability under runtime uncertainty. To illustrate the applicability and evaluate the proposed approach, we consider the case of cloud architectures. The results show that the approach increases the efficiency of the architecture in keeping the expected behaviour stable during runtime operation.

KW - software architecture

KW - architectural stability

KW - self-adaptive architecture

KW - sustainability

KW - quality of service

KW - cloud architecture

U2 - 10.1016/j.jss.2017.07.041

DO - 10.1016/j.jss.2017.07.041

M3 - Article

VL - 133

SP - 95

EP - 112

JO - Journal of Systems and Software

JF - Journal of Systems and Software

SN - 0164-1212

ER -