Abstract

Component-based applications entail a composition of heterogeneous components often running in different contexts. The complexity and dynamic nature of their contexts result in an increasing maintenance efforts. Autonomic computing came to provide systems with an autonomic behavior based on predefined policies. However, in addition to being knowledge-intensive, the constructed policies may easily become obsolete due to context changes. Decision policies should be dynamically learned to self-adapt to context dynamics. However, currently built autonomic systems are tailored to specific management needs, neither reusable for other management concerns nor endowed with learning abilities. In this paper, we introduce a generic framework that facilitates building self-adaptive component-based applications. Unlike the existing initiatives, our framework provides means to transform an existing application by equipping it with a self-adaptive behavior to dynamically learn an optimal policy at runtime. To validate our approach, we have developed a realistic application and used the framework to render it self-adaptive. The experimental results have shown a negligible overhead and a dynamic adjustment of the transformed application to its changing context. They have also shown less frequent time spent in SLA (Service Level Agreement) violations during the learning phase and a better performing application after convergence.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.