Test-Based Pointcuts for Robust and Fine-Grained Join Point Specification (bibtex)
by Kouhei Sakurai and Hidehiko Masuhara
Abstract:
We propose test-based pointcuts, a novel pointcut mechanism for AspectJ-like aspect-oriented programming languages. The idea behind the test-based pointcuts is to specify join points through unit test cases associated with the target program. The test-based pointcuts improve robustness and precision of pointcut languages. The test-based pointcuts are more robust against software evolution because they do not directly rely on identifier names in a target program. The test-based pointcuts are more precise because they can distinguish fine grained execution histories including conditional branches by comparing the runtime execution histories with recorded for ones of the unit test cases. This paper presents design and implementation of the test-based pointcuts as an extension of an AspectJ compiler. We evaluated robustness and runtime efficiency of test-based pointcuts through case studies that applied test-based pointcuts to several versions of practical application programs.
Reference:
Test-Based Pointcuts for Robust and Fine-Grained Join Point Specification (Kouhei Sakurai and Hidehiko Masuhara), In Proceedings of the 7th International Conference on Aspect-Oriented Software Development (AOSD'08) (Mira Mezini, ed.), ACM Press, 2008.
Bibtex Entry:
@inproceedings{sakurai2008aosd,
  acceptanceratio = {22% (17/79)},
  month = apr,
  address = {New York, NY, USA},
  publisher = {ACM Press},
  location = {Vrije Universiteit Brussel, Brussels, Belgium},
  isbn = {978-1-60558-044-9},
  year = 2008,
  booktitle = {Proceedings of the 7th International Conference on
		  Aspect-Oriented Software Development (AOSD'08)},
  editor = {Mira Mezini},
  author = {Kouhei Sakurai and Hidehiko Masuhara},
  pdf = {aosd2008.pdf},
  title = {Test-Based Pointcuts for Robust and Fine-Grained Join Point Specification},
  pages = {96--107},
  doi = {10.1145/1353482.1353494},
  keywords = {AspectJ},
  abstract = {We propose test-based pointcuts, a novel pointcut mechanism for AspectJ-like aspect-oriented programming languages. The idea behind the test-based pointcuts is to specify join points through unit test cases associated with the target program. The test-based pointcuts improve robustness and precision of pointcut languages. The test-based pointcuts are more robust against software evolution because they do not directly rely on identifier names in a target program. The test-based pointcuts are more precise because they can distinguish fine grained execution histories including conditional branches by comparing the runtime execution histories with recorded for ones of the unit test cases. This paper presents design and implementation of the test-based pointcuts as an extension of an AspectJ compiler. We evaluated robustness and runtime efficiency of test-based pointcuts through case studies that applied test-based pointcuts to several versions of practical application programs.}
}
Powered by bibtexbrowser