2,447 research outputs found
Efficient Utility-Driven Self-Healing Employing Adaptation Rules for Large Dynamic Architectures
Self-adaptation can be realized in various ways. Rule-based approaches
prescribe the adaptation to be executed if the system or environment satisfy
certain conditions and result in scalable solutions, however, with often only
satisfying adaptation decisions. In contrast, utility-driven approaches
determine optimal adaptation decisions by using an often costly optimization
step, which typically does not scale well for larger problems. We propose a
rule-based and utility-driven approach that achieves the beneficial properties
of each of these directions such that the adaptation decisions are optimal
while the computation remains scalable since an expensive optimization step can
be avoided. The approach can be used for the architecture-based self-healing of
large software systems. We define the utility for large dynamic architectures
of such systems based on patterns capturing issues the self-healing must
address and we use patternbased adaptation rules to resolve the issues.
Defining the utility as well as the adaptation rules pattern-based allows us to
compute the impact of each rule application on the overall utility and to
realize an incremental and efficient utility-driven self-healing. We
demonstrate the efficiency and optimality of our scheme in comparative
experiments with a static rule-based scheme as a baseline and a utility-driven
approach using a constraint solver
mRUBiS: An Exemplar for Model-Based Architectural Self-Healing and Self-Optimization
Self-adaptive software systems are often structured into an adaptation engine
that manages an adaptable software by operating on a runtime model that
represents the architecture of the software (model-based architectural
self-adaptation). Despite the popularity of such approaches, existing exemplars
provide application programming interfaces but no runtime model to develop
adaptation engines. Consequently, there does not exist any exemplar that
supports developing, evaluating, and comparing model-based self-adaptation off
the shelf. Therefore, we present mRUBiS, an extensible exemplar for model-based
architectural self-healing and self-optimization. mRUBiS simulates the
adaptable software and therefore provides and maintains an architectural
runtime model of the software, which can be directly used by adaptation engines
to realize and perform self-adaptation. Particularly, mRUBiS supports injecting
issues into the model, which should be handled by self-adaptation, and
validating the model to assess the self-adaptation. Finally, mRUBiS allows
developers to explore variants of adaptation engines (e.g., event-driven
self-adaptation) and to evaluate the effectiveness, efficiency, and scalability
of the engines
Towards Highly Scalable Runtime Models with History
Advanced systems such as IoT comprise many heterogeneous, interconnected, and
autonomous entities operating in often highly dynamic environments. Due to
their large scale and complexity, large volumes of monitoring data are
generated and need to be stored, retrieved, and mined in a time- and
resource-efficient manner. Architectural self-adaptation automates the control,
orchestration, and operation of such systems. This can only be achieved via
sophisticated decision-making schemes supported by monitoring data that fully
captures the system behavior and its history.
Employing model-driven engineering techniques we propose a highly scalable,
history-aware approach to store and retrieve monitoring data in form of
enriched runtime models. We take advantage of rule-based adaptation where
change events in the system trigger adaptation rules. We first present a scheme
to incrementally check model queries in the form of temporal logic formulas
which represent the conditions of adaptation rules against a runtime model with
history. Then we enhance the model to retain only information that is
temporally relevant to the queries, therefore reducing the accumulation of
information to a required minimum. Finally, we demonstrate the feasibility and
scalability of our approach via experiments on a simulated smart healthcare
system employing a real-world medical guideline.Comment: 8 pages, 4 figures, 15th International Symposium on Software
Engineering for Adaptive and Self-Managing Systems (SEAMS2020
A survey of self organisation in future cellular networks
This article surveys the literature over the period of the last decade on the emerging field of self organisation as applied to wireless cellular communication networks. Self organisation has been extensively studied and applied in adhoc networks, wireless sensor networks and autonomic computer networks; however in the context of wireless cellular networks, this is the first attempt to put in perspective the various efforts in form of a tutorial/survey. We provide a comprehensive survey of the existing literature, projects and standards in self organising cellular networks. Additionally, we also aim to present a clear understanding of this active research area, identifying a clear taxonomy and guidelines for design of self organising mechanisms. We compare strength and weakness of existing solutions and highlight the key research areas for further development. This paper serves as a guide and a starting point for anyone willing to delve into research on self organisation in wireless cellular communication networks
10431 Abstracts Collection -- Software Engineering for Self-Adaptive Systems
From 24.10. to 29.10.2010, the Dagstuhl Seminar 10431 ``Software Engineering for Self-Adaptive Systems\u27\u27 was held in Schloss Dagstuhl~--~Leibniz Center for Informatics.
During the seminar, several participants presented their current
research, and ongoing work and open problems were discussed. Abstracts of
the presentations given during the seminar as well as abstracts of
seminar results and ideas are put together in this paper. The first section
describes the seminar topics and goals in general.
Links to extended abstracts or full papers are provided, if available
Integration of decentralized economic models for resource self-management in application layer networks
Resource allocation is one of the challenges for self-management of large scale distributed applications running in a dynamic and heterogeneous environment. Considering Application Layer Networks (ALN) as a general term for such applications including computational Grids, Content Distribution Networks and P2P applications, the characteristics of the ALNs and the environment preclude an efficient resource allocation by a central instance. The approach we propose integrates ideas from decentralized economic models into the architecture of a resource allocation middleware, which allows the scalability towards the participant number and the robustness in very dynamic environments. At the same time, the pursuit of the participants for their individual goals should benefit the global optimization of the application. In this work, we describe the components of this middleware architecture and introduce an ongoing prototype.Peer Reviewe
Recommended from our members
Kinesthetics eXtreme: An External Infrastructure for Monitoring Distributed Legacy Systems
Autonomic computing - self-configuring, self-healing, self-optimizing applications, systems and networks - is widely believed to be a promising solution to ever-increasing system complexity and the spiraling costs of human system management as systems scale to global proportions. Most results to date, however, suggest ways to architect new software constructed from the ground up as autonomic systems, whereas in the real world organizations continue to use stovepipe legacy systems and/or build 'systems of systems' that draw from a gamut of new and legacy components involving disparate technologies from numerous vendors. Our goal is to retrofit autonomic computing onto such systems, externally, without any need to understand or modify the code, and in many cases even when it is impossible to recompile. We present a meta-architecture implemented as active middleware infrastructure to explicitly add autonomic services via an attached feedback loop that provides continual monitoring and, as needed, reconfiguration and/or repair. Our lightweight design and separation of concerns enables easy adoption of individual components, as well as the full infrastructure, for use with a large variety of legacy, new systems, and systems of systems. We summarize several experiments spanning multiple domains
Recommended from our members
Retrofitting Autonomic Capabilities onto Legacy Systems
Autonomic computing - self-configuring, self-healing, self-optimizing applications, systems and networks - is a promising solution to ever-increasing system complexity and the spiraling costs of human management as systems scale to global proportions. Most results to date, however, suggest ways to architect new software constructed from the ground up as autonomic systems, whereas in the real world organizations continue to use stovepipe legacy systems and/or build 'systems of systems' that draw from a gamut of disparate technologies from numerous vendors. Our goal is to retrofit autonomic computing onto such systems, externally, without any need to understand, modify or even recompile the target system's code. We present an autonomic infrastructure that operates similarly to active middleware, to explicitly add autonomic services to pre-existing systems via continual monitoring and a feedback loop that performs, as needed, reconfiguration and/or repair. Our lightweight design and separation of concerns enables easy adoption of individual components, independent of the rest of the full infrastructure, for use with a large variety of target systems. This work has been validated by several case studies spanning multiple application domains
- …