Micro-controllers: Promoting Structurally Flexible Controllers in Self-Adaptive Software Systems
B. R. Siqueira, F. C. Ferrari, T. Vogel, R. De Lemos

TL;DR
This paper introduces a novel approach using service-specific micro-controllers to enhance the flexibility of self-adaptive software systems, demonstrated through a case study with dynamic runtime configuration.
Contribution
It proposes the use of micro-controllers for flexible control in self-adaptive systems, moving beyond traditional monolithic controllers, and demonstrates feasibility via a PhoneAdapter case study.
Findings
Micro-controllers enable dynamic, runtime configuration of self-adaptive controllers.
The approach improves flexibility and adaptability in changing environments.
Feasibility is demonstrated through a practical case study.
Abstract
To promote structurally flexible controllers in self-adaptive software systems, this paper proposes the use of micro-controllers. Instead of generic monolithic controllers, like Rainbow, we advocate the use of service-specific micro-controllers which can be based on microservices. Although traditional generic controllers can be configured parametrically according to system needs, their use and reuse are nevertheless restrictive because of the wide range of services expected from the different stages of the feedback control loop.The solution being advocated is to have structurally flexible controllers that can be composed from micro-controllers. Controlling the architectural configuration of these micro-controllers is a meta-controller that is able to configure the controller according to the services required for controlling the target system. The feasibility of the proposed approach of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Software Engineering Methodologies · Software System Performance and Reliability · Software Engineering Research
