A Comparison of Jiazzi and AspectJ for Feature-wise Decomposition

Bin Xin, Sean McDirmid, Eric Eide, and Wilson C. Hsieh
{xinb,mcdirmid,eeide,wilson}@cs.utah.edu

University of Utah, School of Computing
http://www.cs.utah.edu/flux/
Technical Report UUCS-04-001
March 23, 2004

Abstract

Feature-wise decomposition is an important approach to building configurable software systems. Although there has been research on the usefulness of particular tools for feature-wise decomposition, there are not many informative comparisons on the relative effectiveness of different tools. In this paper, we compare AspectJ and Jiazzi, which are two different systems for decomposing Java programs. AspectJ is an aspect-oriented extension to Java, whereas Jiazzi is a component system for Java. To compare these systems, we reimplemented an AspectJ implementation of a highly configurable CORBA Event Service using Jiazzi. Our experience is that Jiazzi provides better support for structuring the system and manipulating features, while AspectJ is more suitable for manipulating existing Java code in non-invasive and unanticipated ways.


Bin Xin <xinb@cs.utah.edu>
Last modified: Thu Mar 25 11:55:23 2004