2018 · 26 citations · 16 references
EngineeringSystems EngineeringAdaptive ReuseCloud ArchitectureSystems ArchitectureMicroservices ArchitectureModel ReuseService-oriented ArchitectureSoftware ReuseAdaptation MechanismsAdaptive Component ReuseAdaptive SystemsMismatchReusable Software ArchitectureSelf-adaptationService ReusabilityService Reuse
Why is it so difficult to build self-adaptive systems by reusing existing self-adaptation services and frameworks? In this paper, we argue that one possible explanation is that there is a fundamental mismatch between the adaptation needs of modern software systems, and the architectural models and adaptation mechanisms supported by current self-adaptation solutions. We identify and discuss the main reasons leading to this problem by looking into a number of representative self-adaptation solutions that have been proposed in recent years, including open source frameworks and cloud-based services, from two perspectives: generality, i.e., their ability to support a variety of architectural models and adaptation mechanisms, and reusability, i.e., their ability to be reused without requiring substantial effort from software developers. We then make the case that recent industry progress toward microservices and their enabling technologies can open the way to the development of more general and reusable self-adaptation solutions.
16
The vision of autonomic computing
Jeffrey O. Kephart, David M. Chess · Computer · 2003 · 6.4K citations
Rainbow: architecture-based self-adaptation with reusable infrastructure
David Garlan, Shang-Wen Cheng, Aixin Huang et al. · Computer · 2004 · 992 citations
Rainbow: architecture-based self-adaptation with reusable infrastructure
Shang-Wen Cheng, Ancheng C. Huang, David Garlan et al. · 2004 · 913 citations
Microservices: The Journey So Far and Challenges Ahead
Pooyan Jamshidi, Claus Pahl, Nabor C. Mendonça et al. · IEEE Software · 2018 · 533 citations · Full text
Engineering, Information Technology, Systems Engineering +16