Software Practices Lab Homepage
Information Fragments
Registration-Based Abstraction
Summarizing Software Artifacts
past projects...
Reading Group
SPL Wiki [local access]

Use Case Level Pointcuts

Jonathan Sillito Christopher Dutchyn Andrew Eisenberg Kris De Volder

Proceedings of European Conference on Object-Oriented Programming, June 2004, to appear.



Software developers create a variety of artifacts that model the behaviour of applications at different levels of abstraction; e.g. use cases, sequence diagrams, and source code. Aspect-oriented programming languages, such as AspectJ, support the modularization of crosscutting concerns at the source code level. However, crosscutting concerns also arise in other behavioural models of software systems. We provide a new aspect language, AspectU, which supports modularization of crosscutting concerns in the use-case model. Further, we provide a prototype tool that partially translates AspectU aspects into AspectJ aspects. To facilitate this translation we introduce a third aspect language, AspectSD, which targets the sequence-diagram model. AspectU together with our translation tool allows developers to express advice using use case level concepts while still affecting the runtime behaviour of a system, yielding a natural and intensional expression of some concerns.

ACM Copyright Notice: Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee.