83 research outputs found
Architecting Self-adaptive Software Systems
Peer reviewe
Adaptable transition systems
We present an essential model of adaptable transition systems inspired by white-box approaches to adaptation and based on foundational models of component based systems. The key feature of adaptable transition systems are control propositions, imposing a clear separation between ordinary, functional behaviours and adaptive ones. We instantiate our approach on interface automata yielding adaptable interface automata, but it may be instantiated on other foundational models of component-based systems as well. We discuss how control propositions can be exploited in the specification and analysis of adaptive systems, focusing on various notions proposed in the literature, like adaptability, control loops, and control synthesis
Adapting Quality Assurance to Adaptive Systems: The Scenario Coevolution Paradigm
From formal and practical analysis, we identify new challenges that
self-adaptive systems pose to the process of quality assurance. When tackling
these, the effort spent on various tasks in the process of software engineering
is naturally re-distributed. We claim that all steps related to testing need to
become self-adaptive to match the capabilities of the self-adaptive
system-under-test. Otherwise, the adaptive system's behavior might elude
traditional variants of quality assurance. We thus propose the paradigm of
scenario coevolution, which describes a pool of test cases and other
constraints on system behavior that evolves in parallel to the (in part
autonomous) development of behavior in the system-under-test. Scenario
coevolution offers a simple structure for the organization of adaptive testing
that allows for both human-controlled and autonomous intervention, supporting
software engineering for adaptive systems on a procedural as well as technical
level.Comment: 17 pages, published at ISOLA 201
A Graph based architectural (re)configuration language
For several different reasons, such as changes in the business or technological environment, the configuration of a system may need to evolve during the execution. Support for such evolution can be conceived in terms of a language for specifying the dynamic reconfiguration of systems. In this paper, continuing our work on the development of a formal platform for architectural design, we present a high-level language to describe architectures and for operating changes over a configuration (i.e., an architecture instance), such as adding, removing or substituting components or interconnections. The language follows an imperative style and builds on a semantic domain established in previous work. Therein, we model architectures through categorical diagrams and dynamic reconfiguration through algebraic graph rewriting
Context-aware healthcare adaptation model for COPD diseases
Nowadays, ubiquitous computing and mobile applications are controlling all our life’s aspects, from social media and entertainment to the very basic needs like commerce, learning, government, and health. These systems have the ability to self-adapt to meet changes in their execution environment and the user’s context. In the healthcare domain, information systems have proven their efficiency, not only by organizing and managing patients’ data and information but also by helping doctors and medical experts in diagnosing disease and taking precluding procedure to avoid serious conditions. In chronic diseases, telemonitoring systems provide a way to monitor the patient’s state and biomarkers within their usual life’s routine. In this article, we are combining the healthcare telemonitoring systems with the context awareness and self-adaptation paradigm to provide a self-adaptive framework architecture for COPD patients
Testing the robustness of controllers for self-adaptive systems
Self-Adaptive systems are software-intensive systems endowed with the ability to respond to a variety of changes that may occur in their environment, goals, or the system itself, by adapting their structure and behavior at run-time in an autonomous way. Controllers are complex components incorporated in self-adaptive systems, which are crucial to their function since they are in charge of adapting the target system by executing actions through effectors, based on information monitored by probes. However, although controllers are becoming critical in many application domains, so far very little has been done to assess their robustness. In this paper, we propose an approach for evaluating the robustness of controllers for self-adaptive software systems, aiming to identify faults in their design. Our proposal considers the stateful nature of the controller, and identifies a set of robustness tests, which includes the provision of mutated inputs to the interfaces between the controller and the target system (i.e., probes). The feasibility of the approach is evaluated on Rainbow, a framework for architecture-based self-adaptation, and in the context of the Znn.com case study
Towards an interactive architecture for web-based databases
World Wide Web has brought us a lot of challenges, such as infinite contents, resource diversity, and maintenance and update of contents. Web-based database (WBDB) is one of the answers to these challenges. Currently the most commonly used WBDB architecture is three-tier architecture, which is still somehow lack of flexibility to adapt to frequently changed user requirements. In this paper, we propose a hybrid interactive architecture for WBDB based on the reactive system concepts. In this architecture, we use sensors to catch users frequently changed requirements and use a decision making manager agent to process them and generate SQL commands dynamically. Hence the efficiency and flexibility are gained from this architecture, and the performance of WBDB is enhanced accordingly.<br /
- …