The Reassessment of Preferences of Non-functional Requirements for Better Informed Decision-Making in Self-Adaptation

Decision-making requires the quantification and trade-off of multiple non-functional requirements (NFRs) and the analysis of costs and benefits between alternative solutions. Different techniques have been used to specify utility preferences for NFRs and decision-making strategies of self-adaptive systems (SAS). These preferences are defined during design-time. It is well known that correctly identifying the weight of the NFRs is a major difficulty. In this paper we present initial results of a novel approach that provides a set of criteria to re-assess NFRs preferences given new evidence found at runtime using dynamic decision networks (DDNs). The approach use both conditional probabilities provided by DDNs and the concept of Bayesian surprise. The results show that our approach supports better informed decisions under uncertainty by identifying new situations where the current SAS preferences may need to be re-evaluated to improve the levels of satisfaction of NFRs.

[1]  Thomas L. Saaty,et al.  DECISION MAKING WITH THE ANALYTIC HIERARCHY PROCESS , 2008 .

[2]  Alessio Ishizaka,et al.  Multi-criteria Decision Analysis: Methods and Software , 2013 .

[3]  Nelly Bencomo,et al.  Supporting Decision-Making for Self-Adaptive Systems: From Goal Models to Dynamic Decision Networks , 2013, REFSQ.

[4]  Nelly Bencomo,et al.  Self-Explanation in Adaptive Systems , 2012, 2012 IEEE 17th International Conference on Engineering of Complex Computer Systems.

[5]  Mark Harman,et al.  Empirical Software Engineering and Verification , 2012, Lecture Notes in Computer Science.

[6]  Peter Norvig,et al.  Artificial intelligence - a modern approach: the intelligent agent book , 1995, Prentice Hall series in artificial intelligence.

[7]  Ladan Tahvildari,et al.  Self-adaptive software: Landscape and research challenges , 2009, TAAS.

[8]  Andres J. Ramirez,et al.  Automatic derivation of utility functions for monitoring software requirements , 2011, MODELS'11.

[9]  Rami Bahsoon,et al.  Managing Trade-offs in Self-Adaptive Software Architectures , 2017 .

[10]  Nelly Bencomo,et al.  A world full of surprises: bayesian theory of surprise to quantify degrees of uncertainty , 2014, ICSE Companion.

[11]  Nelly Bencomo,et al.  Minimizing Nasty Surprises with Better Informed Decision-Making in Self-Adaptive Systems , 2015, 2015 IEEE/ACM 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems.

[12]  S. Kullback,et al.  Information Theory and Statistics , 1959 .

[13]  Axel van Lamsweerde,et al.  Reasoning about partial goal satisfaction for requirements and design engineering , 2004, SIGSOFT '04/FSE-12.

[14]  Nelly Bencomo,et al.  Models@run.time , 2014, Lecture Notes in Computer Science.

[15]  Nelly Bencomo,et al.  A Survey on Preferences of Quality Attributes in the Decision-making for Self-adaptive and Self-managed Systems: the Bad, the Good and the Ugly , 2017, CIbSE.

[16]  Siobhán Clarke,et al.  Self-adaptation with End-User Preferences: Using Run-Time Models and Constraint Solving , 2013, MoDELS.

[17]  Sebastian VanSyckel,et al.  A survey on engineering approaches for self-adaptive systems , 2015, Pervasive Mob. Comput..

[18]  John Mylopoulos,et al.  Representing and reasoning about preferences in requirements engineering , 2011, Requirements Engineering.

[19]  Yijun Yu,et al.  Self-Tuning of Software Systems Through Goal-based Feedback Loop Control , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[20]  Matthias Ehrgott,et al.  Multiple Criteria Decision Analysis , 2016 .

[21]  Takeo Kanade,et al.  Software Engineering for Self-Adaptive Systems II , 2013, Lecture Notes in Computer Science.

[22]  Nelly Bencomo,et al.  Relaxing claims: coping with uncertainty while evaluating assumptions at run time , 2012, MODELS'12.

[23]  Sam Malek,et al.  A Systematic Survey of Self-Protecting Software Systems , 2014, ACM Trans. Auton. Adapt. Syst..

[24]  Eric S. K. Yu,et al.  Requirements trade-offs analysis in the absence of quantitative measures: a heuristic method , 2011, SAC.

[25]  David Garlan,et al.  User Guidance of Resource-Adaptive Systems , 2008, ICSOFT.

[26]  Liliana Pasquale,et al.  User-centric adaptation of multi-tenant services: preference-based analysis for service reconfiguration , 2014, SEAMS 2014.

[27]  Earl T. Barr,et al.  Uncertainty, risk, and information value in software requirements and architecture , 2014, ICSE.

[28]  Rajarshi Das,et al.  Utility functions in autonomic systems , 2004, International Conference on Autonomic Computing, 2004. Proceedings..