Results 1 - 10
of
28
Relaxing Claims: Coping With Uncertainty While Evaluating Assumptions at Run Time
"... Abstract. Self-adaptation enables software systems to respond to changing environmental contexts that may not be fully understood at design time. Designing a dynamically adaptive system (DAS) to cope with this uncertainty is challenging, as it is impractical during requirements analysis and design t ..."
Abstract
-
Cited by 9 (6 self)
- Add to MetaCart
(Show Context)
Abstract. Self-adaptation enables software systems to respond to changing environmental contexts that may not be fully understood at design time. Designing a dynamically adaptive system (DAS) to cope with this uncertainty is challenging, as it is impractical during requirements analysis and design time to anticipate every environmental condition that the DAS may encounter. Previously, the RELAX language was proposed to make requirements more tolerant to environmental uncertainty, and Claims were applied as markers of uncertainty that document how design assumptions affect goals. This paper integrates these two techniques in order to assess the validity of Claims at run time while tolerating minor and unanticipated environmental conditions that can trigger adaptations. We apply the proposed approach to the dynamic reconfiguration of a remote data mirroring network that must diffuse data while minimizing costs and exposure to data loss. Results show RELAXing Claims enables a DAS to reduce adaptation costs. 1
oro.open.ac.uk SOCIAL ADAPTATION When Software Gives Users a Voice
"... For guidance on citations see FAQs. ..."
(Show Context)
J.A.: Requirements and architectural approaches to adaptive software systems: A comparative study
- In: Proceedings of the 8th ACM/IEEE International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2013
, 2013
"... Abstract—The growing interest in adaptive software systems has resulted in a number of different proposals for the de-sign of adaptive systems. Some approaches adopt architectural models, whereas others model adaptation options, at the level of requirements. This dichotomy has motivated us to perfor ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
(Show Context)
Abstract—The growing interest in adaptive software systems has resulted in a number of different proposals for the de-sign of adaptive systems. Some approaches adopt architectural models, whereas others model adaptation options, at the level of requirements. This dichotomy has motivated us to perform a comparative study between two proposals for the design of adaptive systems: the Rainbow Framework (architecture-based) and our own proposal, Zanshin (requirements-based). This evaluation paper reports on our methodology and results. It also provides a comparison between the use of architectural and requirements models as centrepieces of adaptation, offering guidelines for the future research in the field of adaptive systems. Index Terms—Adaptive systems, adaptation, requirements, architecture, Zanshin, Rainbow, comparative study I.
Self-explanation in Adaptive Systems
"... Abstract—The behaviour of self adaptive systems can be emergent. The difficulty in predicting the system’s behaviour means that there is scope for the system to surprise its customers and its developers. Because its behaviour is emergent, a selfadaptive system needs to garner confidence in its custo ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
(Show Context)
Abstract—The behaviour of self adaptive systems can be emergent. The difficulty in predicting the system’s behaviour means that there is scope for the system to surprise its customers and its developers. Because its behaviour is emergent, a selfadaptive system needs to garner confidence in its customers and it needs to resolve any surprise on the part of the developer during testing and mainteinance. We believe that these two functions can only be achieved if a self-adaptive system is also capable of selfexplanation. We argue a self-adaptive system’s behaviour needs to be explained in terms of satisfaction of its requirements. Since self-adaptive system requirements may themselves be emergent, a means needs to be found to explain the current behaviour of the system and the reasons that brought that behaviour about. We propose the use of goal-based models during runtime to offer self-explanation of how a system is meeting its requirements, and why the means of meeting these were chosen. We discuss the results of early experiments in self-explanation, and set out future work. Index Terms—self-explanation, self-adaptive, goals, claims I.
Adapt cases: Extending use cases for adaptive systems
- In Proc. of the 6th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS ’11
, 2011
"... Adaptivity is prevalent in today’s software. Mobile devices self-adapt to available network connections, washing machi-nes adapt to the amount of laundry, etc. Current approaches for engineering such systems facilitate the specification of ad-aptivity in the analysis and the technical design. Howeve ..."
Abstract
-
Cited by 5 (2 self)
- Add to MetaCart
(Show Context)
Adaptivity is prevalent in today’s software. Mobile devices self-adapt to available network connections, washing machi-nes adapt to the amount of laundry, etc. Current approaches for engineering such systems facilitate the specification of ad-aptivity in the analysis and the technical design. However, the modeling of platform independent models for adaptivity in the logical design phase remains rather neglected causing a gap between the analysis and the technical design phase. To overcome this situation, we propose an approach called Adapt Cases. Adapt Cases allow the explicit modeling of adaptivity with domain-specific means, enabling adaptivity to gather attention early in the software engineering process. Since our approach is based on the concept of use cases it is easy adoptable in new and even running projects that use the UML as a specification language, and additionally, can be easily incorporated into model-based development environments.
Software Engineering Meets Control Theory
"... Abstract—The software engineering community has proposed numerous approaches for making software self-adaptive. These approaches take inspiration from machine learning and control theory, constructing software that monitors and modifies its own behavior to meet goals. Control theory, in particular, ..."
Abstract
-
Cited by 4 (4 self)
- Add to MetaCart
(Show Context)
Abstract—The software engineering community has proposed numerous approaches for making software self-adaptive. These approaches take inspiration from machine learning and control theory, constructing software that monitors and modifies its own behavior to meet goals. Control theory, in particular, has received considerable attention as it represents a general methodology for creating adaptive systems. Control-theoretical software implementations, however, tend to be ad hoc. While such solutions often work in practice, it is difficult to understand and reason about the desired properties and behavior of the resulting adaptive software and its controller. This paper discusses a control design process for software systems which enables automatic analysis and synthesis of a controller that is guaranteed to have the desired properties and behavior. The paper documents the process and illustrates its use in an example that walks through all necessary steps for self-adaptive controller synthesis. I.
From awareness requirements to adaptive systems: A control-theoretic approach
- In: Proceedings of the Second International Workshop on Requirements at Run Time
, 2011
"... Abstract—Several proposals for the design of adaptive sys-tems rely on some kind of feedback loop that monitors the system output and adapts in case of failure. Roadmap papers in the area advocate the need to make such feedback loops first class entities in adaptive systems design. We go further by ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
(Show Context)
Abstract—Several proposals for the design of adaptive sys-tems rely on some kind of feedback loop that monitors the system output and adapts in case of failure. Roadmap papers in the area advocate the need to make such feedback loops first class entities in adaptive systems design. We go further by adopting a Requirements Engineering perspective that is not only based on feedback loops but also applies other concepts from Control Theory to the design of adaptive systems. Our plans include a framework that reasons over requirements at runtime to provide adaptivity to a system proper. In this position paper, we argue for a control-theoretic view for adaptive systems and outline our long-term research agenda, briefly presenting work that we have already accomplished and discussing our plans for the future. Keywords-requirements; awareness; adaptive systems; feed-back loop; control theory I.
Requirements-Driven Qualitative Adaptation
"... Abstract. Coping with run-time uncertainty pose an ever-present threat to the fulfillment of requirements for most software systems (embedded, robotic, socio-technical, etc.). This is particularly true for large-scale, cooperative information systems. Adaptation mechanisms constitute a general solut ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
(Show Context)
Abstract. Coping with run-time uncertainty pose an ever-present threat to the fulfillment of requirements for most software systems (embedded, robotic, socio-technical, etc.). This is particularly true for large-scale, cooperative information systems. Adaptation mechanisms constitute a general solution to this problem, consisting of a feedback loop that monitors the environment and compensates for deviating system behavior. In our research, we apply a requirements engineering perspective to the problem of designing adaptive systems, focusing on developing a qualitative software-centric, feedback loop mechanism as the architecture that operationalizes adaptivity. In this paper, we propose a framework that provides qualitative adaptation to target systems based on information from their requirements models. The key characteristc of this framework is extensibility, allowing for it to cope with qualitative information about the impact of control (input) variables on indicators (output variables) in different levels of precision. Our proposal is evaluated with a variant of the London Ambulance System case study.
P.: Monitoring Fuzzy Temporal Requirements for Service Compositions: Motivations, Challenges and Experimental Results
- In: Proc. of the Workshop on Requirements Engineering for Systems, Services, and Systems of Systems. (2011
"... Abstract—Service compositions are an important family of self-adaptive systems, which need to cope with the variability of the environment (e.g., heterogeneous devices, changing context), and react to unexpected events (e.g., changing components) that may take place at runtime. To this aim, it is fu ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
(Show Context)
Abstract—Service compositions are an important family of self-adaptive systems, which need to cope with the variability of the environment (e.g., heterogeneous devices, changing context), and react to unexpected events (e.g., changing components) that may take place at runtime. To this aim, it is fundamental to continuously assess requirements while the system is executing and detect partial mismatches or handle uncertainty. Detecting the entity of a violation is very helpful, since it can guide the way applications adapt at runtime. This paper is based on the FLAGS language we already proposed in our previous work to represent requirements as fuzzy temporal formulas and identify partial violations at the temporal level. The paper illustrates the advantages of using the FLAGS language to express the requirements of service compositions, and proposes a technique to monitor them at runtime. The experimental evaluation demonstrates that the monitoring technique is feasible and the overhead introduced in the running system is negligible.
Monitoring Strategic Goals in Data Warehouses with Awareness Requirements
- In ACM Symposium on Applied Computing
, 2012
"... A data warehouse (DW) system stores data from multi-ple data sources in integrated form and provides capabili-ties for monitoring business operations to ensure compliance to strategic goals. As such, DWs constitute a fundamental building block for Business Intelligence (BI) operations. In this paper ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
(Show Context)
A data warehouse (DW) system stores data from multi-ple data sources in integrated form and provides capabili-ties for monitoring business operations to ensure compliance to strategic goals. As such, DWs constitute a fundamental building block for Business Intelligence (BI) operations. In this paper, we introduce the notion of Awareness Require-ments (AwReqs) in the requirements analysis and elicitation phase for DWs. In this context, AwReqs provide analysts with the means for eliciting and modeling requirements over performance measures (indicators) to appraise the success or failure of strategic goals. To demonstrate the benefit of our approach, we present a typical business example throughout the paper and show how we can establish in the early stages of DW design the adequacy of the design for BI operations.