|
ABSTRACT
Middleware provides simplicity and uniformity for the development of distributed applications. However, the modularity of the architecture of middleware is starting to disintegrate and to become complicated due to the interaction of too many orthogonal concerns imposed from a wide range of application requirements. This is not due to bad design but rather due to the limitations of the conventional architectural decomposition methodologies. We introduce the principles of horizontal decomposition (HD) which addresses this problem with a mixed-paradigm middleware architecture. HD provides guidance for the use of conventional decomposition methods to implement the core functionalities of middleware and the use of aspect orientation to address its orthogonal properties. Our evaluation of the horizontal decomposition principles focuses on refactoring major middleware functionalities into aspects in order to modularize and isolate them from the core architecture. New versions of the middleware platform can be created through combining the core and the flexible selection of middleware aspects such as IDL data types, the oneway invocation style, the dynamic messaging style, and additional character encoding schemes. As a result, the primary functionality of the middleware is supported with a much simpler architecture and enhanced performance. Moreover, customization and configuration of the middleware for a wide-range of requirements becomes possible.
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
|
|
 |
2
|
|
| |
3
|
|
| |
4
|
L. Bergmans and M. Aksit. Aspects and crosscutting in layered middleware systems. Reflective Middleware (RM 2000) workshop held in conjunction with the IFIP/ACM Intl. Conf. on Distributed System Platforms and Open Distributed Processing (Middleware 2000)., April 2000.
|
| |
5
|
Gordon S. Blair, Geoff Coulson, Anders Andersen, Lynne Blair, Michael Clarke, Fabio Costa, Hector Duran-Limon, Tom Fitzpatrick, Lee Johnston, Rui Moreira, Nikos Parlavantzas, and Katia Saikoski. The design and implementation of Open ORB 2. IEEE Distributed Systems Online Journal 2(6), 2001.
|
| |
6
|
Joey Caron, Scott Herscher, and Ann Marie O'Connor. CORBA in the palm of your hand whitepaper. Vertel Corporation.
|
| |
7
|
|
 |
8
|
|
| |
9
|
|
 |
10
|
|
| |
11
|
Louis DiPalma and Robert Kelly. Applying CORBA in a contemporary embedded military combat system. OMG's Second Workshop on Real-time and Embedded Distributed Object Computing, June 2001.
|
 |
12
|
Gary Duzan , Joseph Loyall , Richard Schantz , Richard Shapiro , John Zinky, Building adaptive distributed applications with middleware and aspects, Proceedings of the 3rd international conference on Aspect-oriented software development, p.66-73, March 22-24, 2004, Lancaster, UK
[doi> 10.1145/976270.976280]
|
| |
13
|
Robert Filman. Achieving ilities. URL:http://ic.arc.nasa.gov/~filman/text/oif/wcsa-achieving-ilities.pdf, 1999.
|
| |
14
|
|
| |
15
|
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns. Addison-Wesley, 1995.
|
 |
16
|
Steffen Göbel , Christoph Pohl , Simone Röttger , Steffen Zschaler, The COMQUAD component model: enabling dynamic selection of implementations by weaving non-functional aspects, Proceedings of the 3rd international conference on Aspect-oriented software development, p.74-82, March 22-24, 2004, Lancaster, UK
[doi> 10.1145/976270.976281]
|
| |
17
|
Object Management Group. The Common Object Request Broker: Architecture and Specification. Technical report, December 2001.
|
 |
18
|
Jan Hannemann , Gregor Kiczales, Design pattern implementation in Java and aspectJ, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
| |
19
|
Frank Hunleth, Ron Cytron, and Christopher Gill. Building customizable middleware using aspect oriented programming. In Workshop at OOPSLA, 2001.
|
| |
20
|
|
| |
21
|
Hans-Arno Jacobsen. Middleware architecture design based on aspects, the open implementation metaphor and modularity. In Workshop on Aspect-Oriented Programming and Separation of Concerns, Lancaster, UK, August 2001.
|
 |
22
|
Mik Kersten , Gail C. Murphy, Atlas: a case study in building a web-based learning environment using aspect-oriented programming, Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.340-352, November 01-05, 1999, Denver, Colorado, United States
|
| |
23
|
Gregor Kiczales, John Lamping, Anurag Menhdhekar, Chris Maeda, Cristina Lopes, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In Mehmet Akşit and Satoshi Matsuoka, editors, Proceedings European Conference on Object-Oriented Programming, volume 1241, pages 220--242. Springer-Verlag, Berlin, Heidelberg, and New York, 1997.
|
| |
24
|
Fabio Kon , Manuel Román , Ping Liu , Jina Mao , Tomonori Yamane , Claudio Magalhã , Roy H. Campbell, Monitoring, security, and dynamic configuration with the dynamicTAO reflective ORB, IFIP/ACM International Conference on Distributed systems platforms, p.121-143, April 03-07, 2000, New York, New York, United States
|
| |
25
|
|
| |
26
|
Joseph P. Loyall , David E. Bakken , Richard E. Schantz , John A. Zinky , David A. Karr , Rodrigo Vanegas , Kenneth R. Anderson, QoS Aspect Languages and Their Runtime Integration, Selected Papers from the 4th International Workshop on Languages, Compilers, and Run-Time Systems for Scalable Computers, p.303-318, May 28-30, 1998
|
 |
27
|
|
 |
28
|
|
| |
29
|
Christian Prehofer. Feature-oriented programming: A fresh look at objects. In ECOOP, volume 1241 of Lecture Notes in Computer Science, page 419 ff, 1997.
|
| |
30
|
|
| |
31
|
|
| |
32
|
L. Teboul, R. Pawlak, L. Seinturier, E. Gressier-Soudan, and E. Becquet. AspectTAZ: A new approach based on aspect-oriented programming for object-oriented industrial messaging services design. In WFCS 2002, August 2002.
|
| |
33
|
Petr Tuma and Adam Buble. Open CORBA Bench Marking. SPECTS 2001. URL:http://nenya.ms.mff.cuni.cz/~bench.
|
| |
34
|
|
 |
35
|
Robert J. Walker , Elisa L. A. Baniassad , Gail C. Murphy, An initial assessment of aspect-oriented programming, Proceedings of the 21st international conference on Software engineering, p.120-130, May 16-22, 1999, Los Angeles, California, United States
[doi> 10.1145/302405.302458]
|
 |
36
|
|
| |
37
|
|
| |
38
|
Edward Yourdon and Larry L. Constantine. Structured Design. Prentice-Hall, Inc., 1979.
|
| |
39
|
|
| |
40
|
|
 |
41
|
|
| |
42
|
Charles Zhang and Hans-Arno Jacobsen. Refactoring Middleware Systems: A Case Study. In International Symposium on Distributed Objects and Applications (DOA 2003), Catania, Sicily (Italy), 2003. Lecture Notes in Computer Science, Springer Verlag.
|
| |
43
|
Charles Zhang and Hans-Arno Jacobsen. Refactoring Middleware with Aspects. IEEE Transactions on Parallel and Distributed Systems, 14(11):1058--1073, November 2003.
|
| |
44
|
Charles Zhang and Hans-Arno Jacobsen. TinyC 2 - towards a dynamic weaving aspect language based on C. In Foundation of Aspect Oriented Languages (FOAL) jointly held with the 2nd International Conference on Aspect Oriented Systems and Design, Boston, MA, March 17th 2003.
|
CITED BY 21
|
|
|
|
|
Charles Zhang , Hans-Arno Jacobsen, PRISM is research in aSpect mining, Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, October 24-28, 2004, Vancouver, BC, CANADA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Martin Kuhlemann , Marko Rosenmüller , Sven Apel , Thomas Leich, On the duality of aspect-oriented and feature-oriented design patterns, Proceedings of the 6th workshop on Aspects, components, and patterns for infrastructure software, p.5-es, March 12-16, 2007, Vancouver, British Columbia, Canada
|
|
|
|
|
|
|
|
|
Claudio Sant'Anna , Cidiane Lobato , Uira Kulesza , Alessandro Garcia , Christina Chavez , Carlos Lucena, On the modularity assessment of aspect-oriented multiagent architectures: a quantitative study, International Journal of Agent-Oriented Software Engineering, v.2 n.1, p.34-61, January 2008
|
|
|
|
|
|
|
|
|
|
|