ACM Home Page
Please provide us with feedback. Feedback
Measuring the dynamic behaviour of AspectJ programs
Full text PdfPdf (227 KB)
Source Conference on Object Oriented Programming Systems Languages and Applications archive
Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications table of contents
Vancouver, BC, Canada
SESSION: Aspects in the middle table of contents
Pages: 150 - 169  
Year of Publication: 2004
ISBN:1-58113-831-9
Also published in ...
Authors
Bruno Dufour  McGill University
Christopher Goard  McGill University
Laurie Hendren  McGill University
Oege de Moor  Oxford University
Ganesh Sittampalam  Oxford University
Clark Verbrugge  Oxford University
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 11,   Downloads (12 Months): 92,   Citation Count: 11
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1028976.1028990
What is a DOI?

ABSTRACT

This paper proposes and implements a rigorous method for studying the dynamic behaviour of AspectJ programs. As part of this methodology several new metrics specific to AspectJ programs are proposed and tools for collecting the relevant metrics are presented. The major tools consist of: (1) a modified version of the AspectJ compiler that tags bytecode instructions with an indication of the cause of their generation, such as a particular feature of AspectJ; and (2) a modified version of the *J dynamic metrics collection tool which is composed of a JVMPI-based trace generator and an analyzer which propagates tags and computes the proposed metrics. This dynamic propagation is essential, and thus this paper contributes not only new metrics, but also non-trivial ways of computing them.

We furthermore present a set of benchmarks that exercise a wide range of AspectJ's features, and the metrics that we measured on these benchmarks. The results provide guidance to AspectJ users on how to avoid efficiency pitfalls, to AspectJ implementors on promising areas for future optimization, and to tool builders on ways to understand the runtime behaviour of AspectJ.


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
André Arnes. Certificate revocations performance simulation project. http://www.pvv.ntnu.no/~andrearn/certrev/sim.html, 2000.
 
2
R. Dale Asberry. Aspect oriented programming (AOP): Using AspectJ to implement and enforce coding standards. http://www.daleasberry.com/newsletters/200210/20021002.shtml, 2002.
 
3
AspectJ Eclipse Home. The AspectJ home page. http://eclipse.org/aspectj/, 2003.
4
 
5
Curtis Clifton. MultiJava: Design, implementation and evaluation of a Java-compatible language supporting modular open classes and symmetric multiple dispatch. Technical Report 01-10, Department of Computer Science, Iowa State University, Ames, Iowa, 2001.
6
 
7
8
 
9
Gustav Evertsson. Tetris in AspectJ, 2003. http://www.guzzzt.com/coding/aspecttetris.shtml.
 
10
 
11
 
12
 
13
Youssef Hassoun, Roger Johnson, and Steve Counsell. Emprical validation of a dynamic coupling metric. Technical Report BBKCS-04-03, Birbeck College London, March 2004.
14
15
 
16
 
17
Gregor Kiczales, John Lamping, Anurag Menhdekar, Chris Maeda, Cristina Lopes, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In Mehmet Aksit and Satoshi Matsuoka, editors, European Conference on Object-oriented Programming, volume 1241 of Lecture Notes in Computer Science, pages 220--242. Springer, 1997.
 
18
 
19
Ramnivas Laddad. AspectJ in Action. Manning, 2003.
20
 
21
Karl Lieberherr, David H. Lorenz, and Pengcheng Wu. A case for statically executable advice: Checking the law of demeter with AspectJ. Code available from URL: http://www.ccs.neu.edu/home/lorenz/papers/aosd2003lod/, 2003.
 
22
Roberto E. Lopez-Herrejon and Don Batory. Using AspectJ to implement product-lines: A case study. Technical report, University of Texis at Austin, September 2002.
 
23
Hidehiko Masuhara, Gregor Kiczales, and Chris Dutchyn. A compilation and optimization model for aspect-oriented programs. In Compiler Construction, volume 2622 of Springer Lecture Notes in Computer Science, pages 46--60, 2003.
 
24
 
25
26
27
28
 
29
McGill University Sable Research Group. Soot: a Java optimization framework, 1998-2003.
30
31
 
32
 
33
Mitchell Wand, Gregor Kiczales, and Christopher Dutchyn. A semantics for advice and dynamic join points in aspect-oriented programming. In Foundations of Aspect-Oriented Languages (FOAL), Workshop at AOSD 2002, Technical Report TR #02-06, pages 1--8. Iowa State University, 2002.
 
34
Michalis Xenos, D. Stavrinoudis, K. Zikouli, and D. Christodoulakis. Object-oriented metrics -a survey.In Proceedings of the FESMA 2000, Federation of European Software Measurement Associations, 2000.
 
35
Xerox Corporation. Frequently asked questions about AspectJ, revision 1.8, 2003. http://dev.eclipse.org/viewcvs/indextech.cgi/aspectj-home/doc/faq.html.
 
36
37
 
38
Jianjun Zhao. Towards a metrics suite for aspect-oriented software. Technical Report SE-136-25, Information Processing Society of Japan (IPSJ), March 2002. http://citeseer.nj.nec.com/zhao02towards.html.

CITED BY  12

Collaborative Colleagues:
Bruno Dufour: colleagues
Christopher Goard: colleagues
Laurie Hendren: colleagues
Oege de Moor: colleagues
Ganesh Sittampalam: colleagues
Clark Verbrugge: colleagues