|
ABSTRACT
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.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
AOP-Alliance, http://sourceforge.net/projects/aopalliance, 07.
|
 |
2
|
Luis Daniel Benavides Navarro , Mario Südholt , Wim Vanderperren , Bruno De Fraine , Davy Suvée, Explicitly distributed AOP using AWED, Proceedings of the 5th international conference on Aspect-oriented software development, March 20-24, 2006, Bonn, Germany
[doi> 10.1145/1119655.1119665]
|
| |
3
|
Blair, G., et al., "The Design and Implementation of OpenORB v2", IEEE DS Online Reflective Middleware, '01.
|
| |
4
|
Bouraqadi, N. and Ledoux T., Aspect-Oriented Software Development, Chapter 12-Supporting AOP using Reflection, pages 261--282. Addison-Wesley, 2005.
|
| |
5
|
Burke, B., "JBoss AOP Tutorial", 3rd International Conference on AOSD, Lancaster UK, 2004.
|
| |
6
|
Colyer, A., et al., "Managing Complexity in Middleware", Patterns for Infrastructure Software, AOSD, 2004.
|
| |
7
|
Coulson, G., Blair, G, Grace et al., "A Component Model for Building Systems Software", Proc. IASTED SEA, USA, '04.
|
| |
8
|
Filman, R., Elrad, T., Clarke, S., and Aksit, M., Aspect Oriented Software Development, Addison Wesley, 2004.
|
| |
9
|
|
 |
10
|
Paul Grace , Eddy Truyen , Bert Lagaisse , Wouter Joosen, 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, p.1-6, November 26-30, 2007, Newport Beach, CA
[doi> 10.1145/1376780.1376782]
|
 |
11
|
Paul Grace , Geoff Coulson , Gordon S. Blair , Barry Porter, A distributed architecture meta-model for self-managed middleware, Proceedings of the 5th workshop on Adaptive and reflective middleware (ARM '06), p.3, November 27-December 01, 2006, Melbourne, Australia
[doi> 10.1145/1175855.1175858]
|
| |
12
|
Grace, P., Blair, G., "Reflective Middleware", In Handbook of Mobile Middleware, CRC Press, 2006.
|
| |
13
|
Grace, P., et al, "GridKit: Pluggable Overlay Networks for Grid Computing", .In Proceedings of DOA, October 2004.
|
| |
14
|
Greenwood, P., et al., "Interactions in AO Middleware", Proc. Workshop on ADI, ECOOP 2007.
|
| |
15
|
Harrop, P., Colyer, A., "AOP in Spring", AOSD 2005.
|
| |
16
|
"IDL to Java Language Mapping Specification," The Object Management Group, www.omg.org, 2007.
|
| |
17
|
Kiczales, G., Lamping, J., et al., "Aspect Oriented Programming", Proceedings of ECOOP, 1997.
|
 |
18
|
|
| |
19
|
Lagaisse, B. et al., "True and Transparent Distributed Composition of Aspect-Component", Middleware, '06.
|
| |
20
|
Loughran, L., et al, "Survey of Aspect-Oriented Middleware", AOSD-Europe Deliverable D8, June 2005.
|
| |
21
|
Loughran, N., et al "Requirements and Definition of AO Middleware", AOSD-Europe, Project Deliverable, Aug 2005.
|
 |
22
|
|
 |
23
|
|
| |
24
|
Pawlak, R., Seinturier, L., "JAC: A Flexible Solution for AOP in Java". In Proc. Reflection 2001.
|
| |
25
|
Pessemier, N., Seinturier, et al., "Component-based and Aspect-oriented Systems", Conf. Software Composition, '06.
|
| |
26
|
|
| |
27
|
Sadjadi, M. and McKinley, P. K, "A survey of adaptive middleware". Technical Report MSU-CSE-03-35, 2003.
|
| |
28
|
Smith, B., "Reflection and Semantics in a Procedural Programming Language", PhD thesis, MIT, January 1982.
|
| |
29
|
Stefani, J., et al., "Fractal Component Tutorial" ECOOP, '06.
|
 |
30
|
|
| |
31
|
|
| |
32
|
Tanter, E., "From Metaobject Protocols to Versatile Kernels for Aspect-Oriented Programming", PhD Thesis - University of Nantes, November 2004.
|
| |
33
|
Vanderperren et al., "A visual component composition environment with advanced aspect separation features", Conference on FASE Poland, 2003.
|
| |
34
|
Zhang, C., et al., "Generic Middleware Substrate through Modelware". 6th Middleware Conference, France 2005.
|
CITED BY 2
|
|
Paul Grace , Eddy Truyen , Bert Lagaisse , Wouter Joosen, 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, p.1-6, November 26-30, 2007, Newport Beach, CA
|
|
|
|
|