Concepts and experiments in computational reflection
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Aspect-oriented programming using reflection and metaobject protocols
Communications of the ACM
The case for reflective middleware
Communications of the ACM - Adaptive middleware
Component Software: Beyond Object-Oriented Programming
Component Software: Beyond Object-Oriented Programming
SCAMP: Peer-to-Peer Lightweight Membership Service for Large-Scale Group Communication
NGC '01 Proceedings of the Third International COST264 Workshop on Networked Group Communication
Remote pointcut: a language construct for distributed AOP
Proceedings of the 3rd international conference on Aspect-oriented software development
A Dynamic Component and Aspect-Oriented Platform
The Computer Journal
Explicitly distributed AOP using AWED
Proceedings of the 5th international conference on Aspect-oriented software development
A distributed architecture meta-model for self-managed middleware
Proceedings of the 5th workshop on Adaptive and reflective middleware (ARM '06)
The case for aspect-oriented reflective middleware
Proceedings of the 6th international workshop on Adaptive and reflective middleware: held at the ACM/IFIP/USENIX International Middleware Conference
Aspect-oriented software development
Aspect-oriented software development
The Design and Implementation of Open ORB 2
IEEE Distributed Systems Online
Generic middleware substrate through modelware
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
True and transparent distributed composition of aspect-components
Proceedings of the ACM/IFIP/USENIX 2006 International Conference on Middleware
FASE'03 Proceedings of the 6th international conference on Fundamental approaches to software engineering
A model for developing component-based and aspect-oriented systems
SC'06 Proceedings of the 5th international conference on Software Composition
Support for distributed adaptations in aspect-oriented middleware
Proceedings of the 7th international conference on Aspect-oriented software development
The case for aspect-oriented reflective middleware
Proceedings of the 6th international workshop on Adaptive and reflective middleware: held at the ACM/IFIP/USENIX International Middleware Conference
Proceedings of the 8th International Workshop on Adaptive and Reflective MIddleware
MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
Hi-index | 0.02 |
Reflective middleware provides an effective way to support adaptation in distributed systems. However, as distributed systems become increasingly complex, certain drawbacks of the reflective middleware approach are becoming evident. In particular, reflective APIs are found to impose a steep learning curve, and to place too much expressive power in the hands of developers. Recently, researchers in the field of Aspect-Oriented Programming (AOP) have argued that 'dynamic aspects' show promise in alleviating these drawbacks. In this paper, we report on work that attempts to combine the reflective middleware and AOP approaches. We build an AOP support layer on top of an underlying reflective middleware substrate in such a way that it can be dynamically deployed/undeployed where and when required, and imposes no overhead when it is not used. Our AOP approach involves aspects that can be dynamically (un)weaved across a distributed system on the basis of pointcut expressions that are inherently distributed in nature, and it supports the composition of advice that is remote from the advised joinpoint. An overall goal of the work is to effectively combine reflective middleware and AOP in a way that maximises the benefits and minimises the drawbacks of each.