ACM Home Page
Please provide us with feedback. Feedback
Crosscutting invariant and an efficient checking algorithm using program slicing
Full text PdfPdf (173 KB)
Source
ACM SIGPLAN Notices archive
Volume 43 ,  Issue 2  (February 2008) table of contents
Pages 12-20  
Year of Publication: 2008
ISSN:0362-1340
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 23,   Citation Count: 0
Additional Information:

abstract   references   index terms  

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

ABSTRACT

Owing to the characteristics of quantification and obliviousness, modular behavioral analysis and modular reasoning in aspect-oriented language are more difficult than that of traditional paradigms. Similar to the method of Design by Contract in object-oriented language, we annotate crosscutting modules and affected modules with pre-conditions and post-conditions. Because assigning blame for pre-condition and post-condition failures during the process of crosscutting is subtle and complex, we introduce a notion of crosscutting invariant and a checking algorithm based on this notion. Since there are some repeated contract checks in the original algorithm, we use the technology of program slicing to search those unnecessary repeat checks and delete them. We also represent an example to represent the algorithm and its improvement.


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
G Kiczales, J Lamping, A Mendhekar, C Maeda, C Lopes, J M Loingtier and J Irwin. Aspect-oriented Programming. ECOOP, 1997.
 
2
R E Filman, D P Friedman. Aspect-Oriented Programming is Quantification and Obliviousness. OOPSLA, 2000.
3
 
4
 
5
D Balzarotti and M Monga. Using program slicing to analyze aspect-oriented composition. AOSD, 2004.
6
 
7
B H Liskov and J M Wing. Behavioral subtyping using invariants and constraints. Technical Report CMU CS-99-156, School of Computer Science, Carnegie Mellon University, July 1999.
8
 
9
Dean Wampler. Contract4J for Design by Contract in Java:Design Pattern-Like Protocols and Aspect Interfaces. AOSD, 2006.
 
10
 
11
 
12
J. Zhao. Slicing aspect-oriented software. In Proceedings of the International Workshop on Principles of Software Evolution IWPSE 2002, Orlando, Florida, May 2002. ACM.
 
13
D Balzarotti, A Castaldo D'Ursi, L Cavallaro, and M Monga. Slicing Aspect Woven Code. AOSD, 2005.
 
14
J. Zhao. Applying program dependence analysis to java software. In Proc. Workshop on Software Engineering and Database Systems, pages 162--169, Taiwan, December 1998.
 
15
Y ICHISUGI, A TANAKA and T WATANABE. Extension Rules: Description Rules for Safely Composable Aspects. Technical Report AIST01-J00002-4, Feb 2003.
 
16
L Blair and M Monga. Reasoning on AspectJ programmes. In Proceedings of Workshop on Aspect-Oriented Software Development, pages 45--50, Essen, Germany, Mar. 2003.