This paper describes and evaluates a framework that allows adaptive behaviour to be applied to systems by using a combination of dynamic Aspect-Oriented Programming (AOP), parameterisation and policies. Our approach allows the operator to create policies to define adaptive behaviour based on Event-Condition-Action rules. The combination of dynamic AOP with parameterisation aids reuse and allows aspects to be generated to suit the current system conditions; these aspects can then be woven at run time to adapt the application behaviour. This approach is evaluated in two ways; firstly performance measurements are presented to show that such behaviour does not add a substantial overhead to the target system. Secondly, Aspect-Oriented software metrics are applied to the adaptations applied to illustrate their reusability and flexibility.
This paper describes work that pulls together significant technologies (dynamic aspect-oriented programming, frame technologies, policies, and reflection) to provide a comprehensive framework for auto-adaptive systems. In addition to the framework itself, what is critical is that the paper contains a thorough and detailed evaluation, providing guidance not only for developers of dynamically adaptable systems, but also any developer using dynamic AOP. The results go a long way to dispelling the myth that dynamic aspects are synonymous with a high performance overhead. This work was published in the leading outlet for AOSD research where the acceptance rate for regular papers is only 10%. RAE_import_type : Journal article RAE_uoa_type : Computer Science and Informatics