| A generic and reflective debugging architecture to support runtime visibility and traceability of aspects |
| Full text |
Pdf
(730 KB)
|
Source
|
Aspect-oriented software development
archive
Proceedings of the 8th ACM international conference on Aspect-oriented software development
table of contents
Charlottesville, Virginia, USA
SESSION: Testing and verification
table of contents
Pages 173-184
Year of Publication: 2009
ISBN:978-1-60558-442-3
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 12, Downloads (12 Months): 90, Citation Count: 0
|
|
|
ABSTRACT
In this paper we present a generic, mirror-based debugging architecture that supports runtime visibility and traceability of aspect oriented (AO) software systems. Runtime visibility supports inspection of an executing AO-system in terms of AO programming abstractions and code artifacts such as (dynamic) aspects, advices, pointcuts, aspect instances and advice applications. Runtime traceability supports inspection of the stack to identify advices that could have been executed, that are being executed, or that may be executed later. Additionally, traceability supports identification and inspection of the pointcut that causes a specific advice. We have created a mirror based architecture that offers introspection support including an aspect-aware breakpoint model for AOP-related runtime events. We introduce the concept of hook frames to trace joinpoints and their advices on the stack. We validate the genericity of our architecture in two instantiations -- JBoss AOP and AspectJ/ABC -- and evaluate both instantiations by applying concrete debugging scenarios.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Pavel Avgustinov , Aske Simon Christensen , Laurie Hendren , Sascha Kuzins , Jennifer Lhoták , Ondřej Lhoták , Oege de Moor , Damien Sereni , Ganesh Sittampalam , Julian Tibble, abc: an extensible AspectJ compiler, Proceedings of the 4th international conference on Aspect-oriented software development, p.87-98, March 14-18, 2005, Chicago, Illinois
[doi> 10.1145/1052898.1052906]
|
 |
2
|
Gilad Bracha , David Ungar, Mirrors: design principles for meta-level facilities of object-oriented programming languages, Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 24-28, 2004, Vancouver, BC, Canada
|
| |
3
|
M. Eaddy, A. V. Aho, W. Hu, P. McDonald, and J. Burger. Debugging aspect-enabled programs. In Software Composition, pages 200--215, 2007.
|
| |
4
|
Eclipse Foundation. Aspectj development tools. http://www.eclipse.org/ajdt/. access: 23/05/08.
|
| |
5
|
P. Grace, B. Lagaisse, E. Truyen, and W. Joosen. A reflective framework for fine-grained adaptation of aspect-oriented compositions. In Software Composition, pages 215--230, 2008.
|
| |
6
|
|
 |
7
|
|
| |
8
|
K. Mehner and A. Rashid. Towards a standard interface for runtime inspection in aop environments. OOPSLA Workshop on Tools for AOSD, 2002.
|
| |
9
|
|
 |
10
|
|
 |
11
|
|
| |
12
|
|
 |
13
|
|
| |
14
|
Sun Microsystems. Java Platform Debugger Architecture, java se 6.0 edition. access: 23/05/08.
|
| |
15
|
E. Tanter. From Metaobject Protocols to Versatile Kernels for AOP. PhD thesis, University of Nantes, France, 2004.
|
 |
16
|
Z. Yang , B. H. C. Cheng , R. E. K. Stirewalt , J. Sowell , S. M. Sadjadi , P. K. McKinley, An aspect-oriented approach to dynamic adaptation, Proceedings of the first workshop on Self-healing systems, November 18-19, 2002, Charleston, South Carolina
[doi> 10.1145/582128.582144]
|
|