Results 1 -
9 of
9
Supporting decision-making for selfadaptive systems: From goal models to dynamic decision networks
- in 9th International Working Conference on Requirements Engineering: Foundation for Software Quality (REFSQ
, 2013
"... Abstract. [Context / Motivation] Different modeling techniques have been used to model requirements and decision-making of self-adaptive systems (SASs). Specifically, goal models have been prolific in support-ing decision-making depending on partial and total fulfilment of func-tional (goals) and no ..."
Abstract
-
Cited by 9 (5 self)
- Add to MetaCart
(Show Context)
Abstract. [Context / Motivation] Different modeling techniques have been used to model requirements and decision-making of self-adaptive systems (SASs). Specifically, goal models have been prolific in support-ing decision-making depending on partial and total fulfilment of func-tional (goals) and non-functional requirements (softgoals). Different goal-realization strategies can have different effects on softgoals which are specified with weighted contribution-links. The final decision about what strategy to use is based, among other reasons, on a utility function that takes into account the weighted sum of the different effects on softgoals. [Questions/Problems] One of the main challenges about decision-making in self-adaptive systems is to deal with uncertainty during run-time. New techniques are needed to systematically revise the current model when empirical evidence becomes available from the deployment. [Principal ideas/results] In this paper we enrich the decision-making supported by goal models by using Dynamic Decision Networks (DDNs). Goal realization strategies and their impact on softgoals have a corre-spondence with decision alternatives and conditional probabilities and expected utilities in the DDNs respectively. Our novel approach allows the specification of preferences over the softgoals and supports reasoning about partial satisfaction of softgoals using probabilities. We report re-sults of the application of the approach on two different cases. Our early results suggest the decision-making process of SASs can be improved by using DDNs.
Dynamic decision networks for decision-making in self-adaptive systems: A case study
- in Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, ser. SEAMS ’13. Piscataway
, 2013
"... Abstract—Bayesian decision theory is increasingly applied to support decision-making processes under environmental vari-ability and uncertainty. Researchers from application areas like psychology and biomedicine have applied these techniques successfully. However, in the area of software engineering ..."
Abstract
-
Cited by 6 (3 self)
- Add to MetaCart
(Show Context)
Abstract—Bayesian decision theory is increasingly applied to support decision-making processes under environmental vari-ability and uncertainty. Researchers from application areas like psychology and biomedicine have applied these techniques successfully. However, in the area of software engineering and specifically in the area of self-adaptive systems (SASs), little progress has been made in the application of Bayesian decision theory. We believe that techniques based on Bayesian Networks (BNs) are useful for systems that dynamically adapt themselves at runtime to a changing environment, which is usually uncer-tain. In this paper, we discuss the case for the use of BNs, specifically Dynamic Decision Networks (DDNs), to support the decision-making of self-adaptive systems. We present how such a probabilistic model can be used to support the decision-making in SASs and justify its applicability. We have applied our DDN-based approach to the case of an adaptive remote data mirroring system. We discuss results, implications and potential benefits of the DDN to enhance the development and operation of self-adaptive systems, by providing mechanisms to cope with uncertainty and automatically make the best decision. Index Terms—self-adaptive systems, dynamic decision net-works, bayesian networks, uncertainty modeling. I.
A world full of surprises: Bayesian theory of surprise to quantify degrees of uncertainty
- in Companion Proceedings of the 36th International Conference on Software Engineering, ser. ICSE Companion 2014
"... In the specific area of software engineering (SE) for self-adaptive systems (SASs) there is a growing research awareness about the synergy between SE and artificial intelligence (AI). However, just few significant results have been published so far. In this paper, we propose a novel and formal Bayes ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
(Show Context)
In the specific area of software engineering (SE) for self-adaptive systems (SASs) there is a growing research awareness about the synergy between SE and artificial intelligence (AI). However, just few significant results have been published so far. In this paper, we propose a novel and formal Bayesian definition of surprise as the basis for quantitative analysis to measure degrees of uncertainty and deviations of self-adaptive systems from normal behavior. A surprise measures how observed data affects the models or assump-tions of the world during runtime. The key idea is that a “sur-prising ” event can be defined as one that causes a large divergence between the belief distributions prior to and posterior to the event occurring. In such a case the system may decide either to adapt ac-cordingly or to flag that an abnormal situation is happening. In this paper, we discuss possible applications of Bayesian theory of sur-prise for the case of self-adaptive systems using Bayesian dynamic decision networks.
Living with uncertainty in the age of runtime models,” in Models@run.time
"... Abstract. Uncertainty can be defined as the difference between infor-mation that is represented in an executing system and the information that is both measurable and available about the system at a certain point in its life-time. A software system can be exposed to multiple sources of uncertainty p ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
(Show Context)
Abstract. Uncertainty can be defined as the difference between infor-mation that is represented in an executing system and the information that is both measurable and available about the system at a certain point in its life-time. A software system can be exposed to multiple sources of uncertainty produced by, for example, ambiguous requirements and unpredictable execution environments. A runtime model is a dynamic knowledge base that abstracts useful information about the system, its operational context and the extent to which the system meets its stake-holders ’ needs. A software system can successfully operate in multiple dynamic contexts by using runtime models that augment information available at design-time with information monitored at runtime. This chapter explores the role of runtime models as a means to cope with uncertainty. To this end, we introduce a well-suited terminology about models, runtime models and uncertainty and present a state-of-the-art summary on model-based techniques for addressing uncertainty both at development- and runtime. Using a case study about robot systems we discuss how current techniques and the MAPE-K loop can be used to-gether to tackle uncertainty. Furthermore, we propose possible extensions of the MAPE-K loop architecture with runtime models to further handle uncertainty at runtime. The chapter concludes by identifying key chal-lenges, and enabling technologies for using runtime models to address uncertainty, and also identifies closely related research communities that can foster ideas for resolving the challenges raised. 2 Holger Giese, Nelly Bencomo, Liliana Pasquale, et. al. 1
QuantUn: Quantification of Uncertainty for the Reassessment of Requirements
"... Abstract—Self-adaptive systems (SASs) should be able to adapt to new environmental contexts dynamically. The uncertainty that demands this runtime self-adaptive capability makes it hard to formulate, validate and manage their requirements. QuantUn is part of our longer-term vision of requirements re ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
(Show Context)
Abstract—Self-adaptive systems (SASs) should be able to adapt to new environmental contexts dynamically. The uncertainty that demands this runtime self-adaptive capability makes it hard to formulate, validate and manage their requirements. QuantUn is part of our longer-term vision of requirements reflection, that is, the ability of a system to dynamically observe and reason about its own requirements. QuantUn’s contribution to the achievement of this vision is the development of novel techniques to explicitly quantify uncertainty to support dynamic re-assessment of requirements and therefore improve decision-making for self-adaption. This short paper discusses the research gap we want to fill, present partial results and also the plan we propose to fill the gap. Index Terms—uncertainty, self-adaptation, requirements re-flection, requirements assessment, Bayesian Surprise
Using Models at Runtime to Address Assurance for Self-Adaptive Systems
, 2014
"... A self-adaptive software system modifies its behavior at runtime in response to changes within the system or in its execution environment. The ful-fillment of the system requirements needs to be guaranteed even in the presence of adverse conditions and adaptations. Thus, a key challenge for self-a ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
A self-adaptive software system modifies its behavior at runtime in response to changes within the system or in its execution environment. The ful-fillment of the system requirements needs to be guaranteed even in the presence of adverse conditions and adaptations. Thus, a key challenge for self-adaptive software systems is assurance. Traditionally, confidence in the correctness of a system is gained through a variety of activities and processes performed at de-velopment time, such as design analysis and testing. In the presence of self-adaptation, however, some of the assurance tasks may need to be performed at runtime. This need calls for the development of techniques that enable contin-uous assurance throughout the software life cycle. Fundamental to the develop-
3.2.2. Beyond Middleware-based Architectures for Interoperability 4
"... Activity Report 2012 Project-Team ARLES Software architectures and distributed ..."
Abstract
- Add to MetaCart
Activity Report 2012 Project-Team ARLES Software architectures and distributed
Requirements-aware Systems for Self-adaptation under Uncertainty Research Statement
"... The development of software-intensive systems is driven by their requirements. Traditional requirements engineering (RE) methods focus on resolving ambiguities in requirements and advocate specifying require-ments in sufficient detail so that the implementation can be checked against them for confor ..."
Abstract
- Add to MetaCart
(Show Context)
The development of software-intensive systems is driven by their requirements. Traditional requirements engineering (RE) methods focus on resolving ambiguities in requirements and advocate specifying require-ments in sufficient detail so that the implementation can be checked against them for conformance. In an ideal world, this way of thinking can be very effective. Requirements can be specified clearly, updated as necessary, and evolutions of the software design can be made with the requirements in mind. Increasingly, however, it is not sufficient to fix requirements statically because they will change at runtime as the operating environment changes. Furthermore, as software systems become more pervasive, there is growing uncertainty about the environment and so requirements changes cannot be predicted at design-time [12, 24, 39, 1, 20]. It is considerations such as these that have led to the development of self-adaptive systems (SASs) [11], which have the ability to dynamically and autonomously reconfigure their behavior to respond to changing external conditions. Consider a scenario involving a robot vacuum cleaner for domestic apartments. The vacuum cleaner has goals clean apartment, avoid tripping hazard and minimize energy costs. Further, it has the domain assumption energy is cheapest at night. To satisfy the avoid tripping hazard goal, a requirement is derived that it should stop operating as soon as any human activity is detected. Night operation satisfies the
Uncertainty Handling in Goal-Driven Self-Optimization – Limiting the Negative Effect on Adaptation
"... and other research outputs Uncertainty handling in goal-driven self-optimization – limiting the negative effect on adaptation ..."
Abstract
- Add to MetaCart
(Show Context)
and other research outputs Uncertainty handling in goal-driven self-optimization – limiting the negative effect on adaptation