Architecture-based runtime software evolution
Proceedings of the 20th international conference on Software engineering
Guide to the Software Engineering Body of Knowledge - SWEBOK
Guide to the Software Engineering Body of Knowledge - SWEBOK
The Vision of Autonomic Computing
Computer
Software Architecture in Practice
Software Architecture in Practice
Feedback Control of Computing Systems
Feedback Control of Computing Systems
Empirical studies of agile software development: A systematic review
Information and Software Technology
Software Engineering for Self-Adaptive Systems: A Research Roadmap
Software Engineering for Self-Adaptive Systems
FORMS: Unifying reference model for formal specification of distributed self-adaptive systems
ACM Transactions on Autonomous and Adaptive Systems (TAAS) - Special section on formal methods in pervasive computing, pervasive adaptation, and self-adaptive systems: Models and algorithms
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Do external feedback loops improve the design of self-adaptive systems? a controlled experiment
Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Evolving an adaptive industrial software system to use architecture-based self-adaptation
Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Hi-index | 0.00 |
Engineering the upcoming generation of software systems and guaranteeing the required qualities is complex due to the inherent uncertainties at design time, such as new user needs and changing availability of resources. Architecture-based self-adaptation is a promising approach to tackle these challenges. In this approach, a system maintains a model of itself and adapts itself to realize particular quality objectives using a feedback loop. Despite a vast body of work, no systematic study has been performed on the claims associated with architecture-based self-adaptation and the evidence that exists for these claims. As such insight is important for researchers and engineers, we performed a systematic literature review covering 20 leading software engineering conferences and journals in the field, resulting in 121 studies used for data collection. The review shows that self-adaptation is primarily used to improve performance, reliability, and flexibility. The tradeoffs implied by self-adaptation have not received much attention, and evidence is mainly obtained from simple examples. From the study, we derive a number of recommendations for future research in architecture-based self-adaptive systems.