716 research outputs found

    The Reassessment of Preferences of Non-Functional Requirements for Better Informed Decision-making in Self-Adaptation

    Get PDF
    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

    A survey on preferences of quality attributes in the decision-making for self-adaptive systems:The bad, the good and the ugly

    Get PDF
    Different techniques have been used to specify preferences for quality attributes and decision-making strategies of self-adaptive systems (SAS). These preferences are defined during requirement specification and design time. Further, it is well known that correctly identifying the preferences associated with the quality attributes is a major difficulty. This is exacerbated in the case of SAS, as the preferences defined at design time may not apply to contexts found at runtime. This paper aims at making an exploration of the research landscape that have addressed decision-making and quality attribute preferences specification for selfadaptation, in order to identify new techniques that can improve the current state-of-the-art of decision-making to support self-adaptation. In this paper we (1) review different techniques that support decisionmaking for self-adaptation and identify limitations with respect to the identification of preferences and weights (i.e. the research gap), (2) identify existing solutions that deal with current limitations

    Self-Learning Cloud Controllers: Fuzzy Q-Learning for Knowledge Evolution

    Get PDF
    Cloud controllers aim at responding to application demands by automatically scaling the compute resources at runtime to meet performance guarantees and minimize resource costs. Existing cloud controllers often resort to scaling strategies that are codified as a set of adaptation rules. However, for a cloud provider, applications running on top of the cloud infrastructure are more or less black-boxes, making it difficult at design time to define optimal or pre-emptive adaptation rules. Thus, the burden of taking adaptation decisions often is delegated to the cloud application. Yet, in most cases, application developers in turn have limited knowledge of the cloud infrastructure. In this paper, we propose learning adaptation rules during runtime. To this end, we introduce FQL4KE, a self-learning fuzzy cloud controller. In particular, FQL4KE learns and modifies fuzzy rules at runtime. The benefit is that for designing cloud controllers, we do not have to rely solely on precise design-time knowledge, which may be difficult to acquire. FQL4KE empowers users to specify cloud controllers by simply adjusting weights representing priorities in system goals instead of specifying complex adaptation rules. The applicability of FQL4KE has been experimentally assessed as part of the cloud application framework ElasticBench. The experimental results indicate that FQL4KE outperforms our previously developed fuzzy controller without learning mechanisms and the native Azure auto-scaling

    A Methodology for Eliciting and Ranking Control Points for Adaptive Systems

    Get PDF
    Designing an adaptive system to meet its quality constraints in the face of environmental uncertainties, such as variable demands, can be a challenging task. In cloud environment, a designer has to also consider and evaluate different control points, i.e., those variables that affect the quality of the software system. This thesis presents a method for eliciting, evaluating and ranking control points for web applications deployed in cloud environments. The proposed method consists of several phases that take a high-level stakeholders' adaptation goal and transform it into lower level MAPE-K loop control points. The MAPE-K loop is then activated at runtime using an adaptation algorithm. We conducted several experiments to evaluate the different phases of the methodology and we report the results and the lesson learnt
    corecore