Multitasking without comprimise: a virtual machine evolution
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The Vision of Autonomic Computing
Computer
JAsCo: an aspect-oriented approach tailored for component based software development
Proceedings of the 2nd international conference on Aspect-oriented software development
Reconfiguration in the Enterprise JavaBean Component Model
CD '02 Proceedings of the IFIP/ACM Working Conference on Component Deployment
Computer
Self-adaptive multithreaded applications: a case for dynamic aspect weaving
ARM '05 Proceedings of the 4th workshop on Reflective and adaptive middleware systems
Integrating aspect-orientation and structural annotations to support adaptive middleware
MAI '07 Proceedings of the 1st workshop on Middleware-application interaction: in conjunction with Euro-Sys 2007
AAOP-based dynamically reconfigurable monitoring system
Information and Software Technology
An Analysis of Language-Level Support for Self-Adaptive Software
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Hi-index | 0.00 |
This paper presents a new approach to implementing an adaptability loop in Autonomic Computing (AC) systems, which is based on adaptable aspects. The approach utilizes the concept of adaptable aspect-oriented programming (AAOP) in which a set of AOP aspects is used to run an application in the manner specified by its adaptability strategy. We present a model execution environment based on this concept, enabling the execution of applications with applied adaptability strategies. In the AAOP-based AC system, the application is instrumented with aspects selected by the system from a set of all available aspects (sensors, effectors, and goal aspects) in such a way that the system can monitor and manage the application. This model can be used to implement systems that are able to monitor an application and its execution environment, and perform actions such as changing the current set of non-functional constraints in response to changes in the application or its environment. The model can be used for various types of non-functional goals, in various programming languages, both in centralized and distributed environments. This paper describes its Java-based implementation and non-functional goals referring to resource management. As a consequence, the application uses resources in a way specified in its adaptability strategy. Resource consumption management logic is transparent for the application, meaning that no modifications in the application source code are needed. Copyright © 2010 John Wiley & Sons, Ltd.