Resolving Feature Convolution with Horizontal Decomposition in Middleware

Charles Zhang and Hans-Arno Jacobsen.

In Object-oriented Programming Systems, Languages, and Applications (OOPSLA), pages 188-205, Vancouver, BC, May 2004.
Acceptance rate: 16%. Number of submissions: 173.


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.


Related Projects

Tags: aspect-oriented middleware, aspect-oriented programming

Readers who enjoyed the above work, may also like the following:

  • Mining Crosscutting Concerns Through Random Walks.
    Charles Zhang and Hans-Arno Jacobsen.
    IEEE Transactions on Sofware Engineering, 2011.
    Accepted July 2011.
    Tags: aspect mining, aspect-oriented programming, aspect-oriented middleware
  • Externalizing Java Server Concurrency with CAL.
    Charles Zhang and Hans-Arno Jacobsen.
    In European Conference on Object-oriented Processing 2008 (ECOOP), pages 362-386, July 2008.
    Acceptance rate: 19%.
    Tags: aspect-oriented middleware, aspect-oriented programming, concurrency
  • Efficiently Mining Crosscutting Concerns Through Random Walks.
    Charles Zhang and Hans-Arno Jacobsen.
    In AOSD 2007: 6th International Conference on Aspect Oriented Systems and Design, pages 226-238, Vancouver, BC, Canada, March 2007.
    Acceptance rate: 18%.
    Tags: aspect mining, aspect-oriented middleware, aspect-oriented programming