A UML-based aspect-oriented design notation for AspectJ

Dominik Stein, Stefan Hanenberg, Rainer Unland
2002 Proceedings of the 1st international conference on Aspect-oriented software development - AOSD '02  
Aapect] is a well-established programming language for the implementation of aspect-oriented progr~m~ It supports the aspectoriented programming paradigm by providing a special unit, called "aspect", which encapsulates crosscutting code. While with Aspect] a suitable aspect-oriented programming language is at hand, no feasible modeling language is available that supports the design of AspectJ progr,m,. In this work, such a design notation for AspectJ program~ is presented based 'on the UML. It
more » ... rovides representations for all language constructs in AspectJ and specifies an UML implementation of AspectJ's weaving mechanism. The design notation eases the perception of aspect-orientation and Aspect] programs. It carries over the advantages of aspectorientation to the design level. poin~ut designators (such as this, target, args, cflow, cflowbelow, or if) select join points based on the dynamic context they come to pass in. Advice defines code to be executed whenever a join point of a particular set of join points is reached. It is part of the advice declaration to specify this set of join points (in terms of pointcut designators). As "control passes through each join point twice"
doi:10.1145/508386.508399 dblp:conf/aosd/SteinHU02 fatcat:wqy3wygoljczphye6zgbcrql3e