Towards a Plug-In Architecture to Enable Self-Adaptation through Middleware

Sharmin Jahan, Ian Riley, Alonzo Sabino, Rose Gamble · 2021

To be self-adaptive, a system must exhibit capabilities related to the monitoring, analyzing, planning, and executing adaptations. Often these activities require in-depth knowledge of the system's architecture, functionality, and requirements. Thus, the traditional design pattern for self-adaptive systems is the MAPE- K loop, which can be infeasible to implement into legacy systems. Popular approaches to incorporate self-adaptive behavior into legacy systems employ an external framework and/or middleware. These software applications require significant expertise in their choice of tools and can be unaccommodating to systems dependent on third-party vendors, i.e., enterprise systems. In this paper, we investigate the design of the Adapt! architecture as a plug-in architecture that operates as middleware to enable system self-adaptation. We discuss key challenges associated with middleware for self-adaptive system configuration, survey existing approaches, and characterize an extensible architecture that would be applicable to legacy systems. The Adapt! architecture is exemplified through two case studies that include a load balancer and a tele-assistance system.

Read the paper · More papers on PaperTik