Aspects and Exception Handling: The Case of Explicit Join Points

Kevin J. Hoffman, Patrick Th. Eugster · Purdue e-Pubs (Purdue University System) · 2007

Several authors have debated the modularity and obliviousness of aspects in AOP and the links between these two notions, noting that obliviousness is not always desirable or achievable.Many proposals have appeared, mainly in the context of AspectJ, to mitigate these issues by restricting upfront, or "inferring" and documenting, where aspects can apply.As pointed out, sacrificing certain facets of obliviousness can not only increase safety but even increase modularity.This paper presents and evaluates a simple extension to As-pectJ, consisting in explicit join points (EJPs) which denote potential occurrences of aspects in the base code and enable information passing between base code and aspects.The evaluation takes place in the context of exception handling; by picking up on a recent study of the use of aspects for the same purpose, we quantifg the benefits of our extensions for various common measures of code quality in the context of AOP, such as separation of concerns or coupling.

Read the paper · More papers on PaperTik