Weaving Multiple Aspects in Sequence Diagrams

Abstract : Handling aspects within models looks promising for managing crosscutting concerns early in the software life-cycle, up from programming to design, analysis and even requirements. At the modeling level, even complex behavioral aspects can easily be described for instance as pairs of sequence diagrams: one for the pointcut specifying the behavior to detect, and the second one for an advice representing the wanted behavior at the join point. While this is fine for informal documentation purposes, or even intuitive enough when a single aspect has to be woven, a more precise semantics of both join point detection and advice weaving is needed for using these modeling artifacts for Model Driven Engineering activities such as code generation or test synthesis. This paper proposes various interpretations for pointcuts that allow multiple behavioral aspects to be statically woven. The idea is to allow join points to match a pointcut even when some extra-messages occur in between. However, with this new way of specifying join points, the composition of the advice with the detected part cannot any longer be just a replacement of the detected part by the advice. We have to consider the events (or the messages) of the join point, but also the events which occur between them, and merge them with the behavior specified within the advice. We thus also propose a formal definition of a new merge operator, and describe its implementation on the Kermeta platform.
Document type :
Journal articles
Complete list of metadatas

Cited literature [27 references]  Display  Hide  Download

https://hal.inria.fr/inria-00505223
Contributor : Didier Vojtisek <>
Submitted on : Friday, July 23, 2010 - 9:26:44 AM
Last modification on : Friday, November 16, 2018 - 1:30:53 AM
Long-term archiving on : Monday, October 25, 2010 - 12:11:31 PM

File

Klein07a.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : inria-00505223, version 1

Citation

Jacques Klein, Franck Fleurey, Jean-Marc Jézéquel. Weaving Multiple Aspects in Sequence Diagrams. Transactions on Aspect-Oriented Software Development (TAOSD), Springer, 2007, LNCS 4620, pp.167-199. ⟨inria-00505223⟩

Share

Metrics

Record views

481

Files downloads

291