Skip to main content
Presentation
AspectJML: modular specification and runtime checking for crosscutting contracts
Proceedings of the 13th international conference on Modularity
  • Henrique Rebêlo, Federal University of Pernambuco
  • Gary T. Leavens, University of Central Florida
  • Mehdi Bagherzadeh, Iowa State University
  • Hridesh Rajan, Iowa State University
  • Ricardo Lima, Federal University of Pernambuco
  • Daniel M. Zimmerman, Harvey Mudd College
  • Marcio Cornelio, Feneral University of Perrnambuco
  • Thomas Thüm, University of Magdeburg
Document Type
Conference Proceeding
Conference
MODULARITY '14: The 13th international conference on Modularity
Publication Version
Submitted Manuscript
Publication Date
1-1-2014
DOI
10.1145/2577080.2577084
Conference Title
MODULARITY '14
Conference Date
April 22-26, 2014
Geolocation
(46.0036778, 8.951052000000004)
Abstract

Aspect-oriented programming (AOP) is a popular technique for modularizing crosscutting concerns. In this context, researchers have found that the realization of design by contract (DbC) is crosscutting and fares better when modularized by AOP. However, previous efforts aimed at supporting crosscutting contract modularity might actually compromise the main DbC principles. For example, in AspectJ-style, reasoning about the correctness of a method call may require a whole-program analysis to determine what advice applies and what that advice does relative to DbC implementation and checking. Also, when contracts are separated from classes a programmer may not know about them and may break them inadvertently. In this paper we solve these problems with AspectJML, a new specification language that supports crosscutting contracts for Java code. We also show how AspectJML supports the main DbC principles of modular reasoning and contracts as documentation.

Comments

This article is published as Rebêlo, Henrique, Gary T. Leavens, Mehdi Bagherzadeh, Hridesh Rajan, Ricardo Lima, Daniel M. Zimmerman, Márcio Cornélio, and Thomas Thüm. "AspectJML: modular specification and runtime checking for crosscutting contracts." In Proceedings of the 13th international conference on Modularity, pp. 157-168. ACM, 2014. 10.1145/2577080.2577084

Rights
© ACM, 2014 This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in Proceedings of the 13th international conference on Modularity, pp. 157-168. ACM, 2014. https://doi.org/10.1145/2577080.2577084
Copyright Owner
ACM
Language
en
File Format
application/pdf
Citation Information
Henrique Rebêlo, Gary T. Leavens, Mehdi Bagherzadeh, Hridesh Rajan, et al.. "AspectJML: modular specification and runtime checking for crosscutting contracts" Lugano, SwitzerlandProceedings of the 13th international conference on Modularity (2014) p. 157 - 168
Available at: http://works.bepress.com/hridesh-rajan/77/