Improving impact of self-adaptation and self-management research through evaluation methodology
Proceedings of the 2010 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems
Adaptation in open systems: giving interaction its rightful place
ER'10 Proceedings of the 29th international conference on Conceptual modeling
Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
System identification for adaptive software systems: a requirements engineering perspective
ER'11 Proceedings of the 30th international conference on Conceptual modeling
Dynamic reconfiguration in self-adaptive systems considering non-functional properties
Proceedings of the 27th Annual ACM Symposium on Applied Computing
Journal of Systems and Software
Managing non-functional uncertainty via model-driven adaptivity
Proceedings of the 2013 International Conference on Software Engineering
Automated diagnosis of software configuration errors
Proceedings of the 2013 International Conference on Software Engineering
Engineering adaptation with zanshin: an experience report
Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Requirements-driven software evolution
Computer Science - Research and Development
Uncertainty handling in goal-driven self-optimization - Limiting the negative effect on adaptation
Journal of Systems and Software
Hi-index | 0.00 |
High variability software systems can deliver their functionalities in multiple ways by reconfiguring their components. High variability has become important because of current trends towards software systems that come in product families, offer high levels of personalization, and fit well within a service-oriented architecture. The purpose of our research is to propose a framework that exploits such variability to allow a software system to self-repair in cases of failure. We propose an autonomic architecture that consists of monitoring, diagnosis, reconfiguration and execution components. This architecture uses requirements models as a basis for monitoring, diagnosis, and reconfiguration. We illustrate our proposal with a medium-sized publicly available case study (an Automated Teller Machine (ATM) simulation), and evaluate its performance through a series of experiments. Our experimental results demonstrate that it is feasible to scale our approach to software systems with medium-size requirements.