% $Id: related.tex,v 1.16 2005/12/06 14:04:08 gokhale Exp $
\section{Related Work}
\label{sec:related}

% Jeff, et al could you please add more related work based on reviewer
% suggestions - Andy
The object-oriented and structured paradigms each had their genesis at the
implementation level, and were applied afterward to earlier phases of the
software lifecycle.  A similar trend has occured in the investigation
of aspect-oriented concepts.  Although the initial emphasis has been on
aspect-oriented {\em programming}, there is a growing body of research that is 
focused on applying aspects and other new separation of concerns
ideas to non-code artifacts~\cite{Batory:04}.  Over the past decade, AOSD techniques 
have been investigated at all levels of the development lifecycle~\cite{Clemente:04}, 
including requirements engineering and early design~\cite{Rashid:03}, and detailed 
analysis and design~\cite{Clarke:05}.  

Several researchers have investigated the application of AOSD concepts within the
context of the UML~\cite{Clarke:01,France:04,Elrad:04}.  In fact, a very successful
workshop on aspect-oriented modeling (now in its 8th edition) has served as a
common venue for researchers working in the new aspect modeling area~\cite{AOM:06}.
These efforts have yielded guidelines for describing crosscutting concerns at higher 
levels of abstraction.  A focal point of these efforts is the development of 
notational conventions that assist in the documentation of concerns that
crosscut a design.  Such notational conventions improve the ability to modularize
a design that is described as a UML model.  Moreover, the initial aspect modeling
contributions have the important trait of improving the traceability of crosscutting
concerns from design to implementation.  From this perspective, the general goals
of aspect modeling are similar to the objectives presented in this paper.

Many of the UML aspect modeling efforts have done much to improve the applicability 
of AOSD at the modeling level, but they generally tend to treat the concept of
aspect-oriented design as an {\em adjective}; i.e., the focus has been on the notational
and decorative attributes concerned with aspects and their representation within UML.  
The majority of aspect modeling research differs from the approach presented in this
paper.  The application of C-SAW is much more than a notational abstraction.  The
research into C-SAW has concentrated on the idea of building actual weavers
for domain models; i.e., aspect modeling is approached as a specific application of
model transformation, where models are evolved to specify crosscutting properties. 
The contribution of C-SAW, and the application to component-based distributed systems,
is to consider aspect modeling as a {\em verb}.  That is, viewing AOSD as a mechanism 
to improve the modeling task, itself, by providing the ability to quantify properties 
across a model during the system modeling process.  This action is performed by utilizing a weaver
that has been constructed with the concepts of modeling in mind.  A
research effort that also appears to have this goal in mind can be found
in~\cite{Maria:05b}, which is focused on UML models, but provides transformation
capabilities in addition to notational abstractions to represent aspects.


%%% Local Variables:
%%% mode: latex
%%% TeX-master: "IJSEKE05"
%%% End:
