Implementing Bounded Aspect Quantification in AspectJ

The integration of aspects into the methodology of stepwise software development and evolution is still an open issue. This paper focuses on the global quantification mechanism of nowadays aspect-oriented languages that contradicts basic principles of this methodology. One potential solution to this problem is to bound the potentially global effects of aspects to a set of local development steps. We discuss several alternatives to implement such bounded aspect quantification in AspectJ. Afterwards, we describe a concrete approach that relies on meta-data and pointcut restructuring in order to control the quantification of aspects. Finally, we discuss open issues and further work.

[1]  Ramnivas Laddad,et al.  Aspectj in Action: Practical Aspect-Oriented Programming , 2003 .

[2]  Alexander Sverdlov Review of David L. Parnas' "Designing Software for Ease of Extension and Contraction" , 2004 .

[3]  Hans-Arno Jacobsen,et al.  Resolving feature convolution in middleware systems , 2004, OOPSLA.

[4]  Andrew Clement,et al.  Large-scale AOSD for middleware , 2004, AOSD '04.

[5]  Thomas Leich,et al.  Aspect refinement and bounding quantification in incremental designs , 2005, 12th Asia-Pacific Software Engineering Conference (APSEC'05).

[6]  Thomas Leich,et al.  Aspectual mixin layers: aspects and features in concert , 2006, ICSE '06.

[7]  Sven Apel,et al.  On the Notion of Functional Aspects in Aspect-Oriented Refactoring , 2006 .

[8]  Roger T. Alexander,et al.  Distributing classes with woven concerns: an exploration of potential fault scenarios , 2005, AOSD '05.

[9]  David Lorge Parnas,et al.  Review of David L. Parnas' "Designing Software for Ease of Extension and Contraction" , 2004 .

[10]  Rémi Douence,et al.  A Framework for the Detection and Resolution of Aspect Interactions , 2002, GPCE.

[11]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[12]  Rémi Douence,et al.  Composition, reuse and interaction analysis of stateful aspects , 2004, AOSD '04.

[13]  Kris Gybels,et al.  On the Existence of the AOSD-Evolution Paradox , 2003 .

[14]  Thomas Leich,et al.  Mixin-Based Aspect Inheritance , 2005 .

[15]  Niklaus Wirth,et al.  Program development by stepwise refinement , 1971, CACM.

[16]  Colora,et al.  Improving Incremental Development in AspectJ by Bounding Quantification , 2005 .

[17]  Roberto Erick Lopez-Herrejon,et al.  A disciplined approach to aspect composition , 2006, PEPM '06.

[18]  Wolfgang Schröder-Preikschat,et al.  A quantitative analysis of aspects in the eCos kernel , 2006, EuroSys.

[19]  Don Batory,et al.  Improving Incremental Development in AspectJ by Bounding Quantification , 2005 .

[20]  Jörgen Hansson,et al.  Aspects and components in real-time system development: Towards reconfigurable and reusable software , 2005, J. Embed. Comput..