Abstract
Design by Contract (DbC) is a technique for developing and improving functional software correctness through defi- nition of “contracts‿ between client classes and their suppliers. Such contracts are enforced during runtime and if any of them is violated a runtime error should occur. Runtime assertions checkers (RACs) are a well-known technique that enforces such contracts. Although they are largely used to implement the DbC technique in contemporary languages, like Java, studies have shown that characteristics of contem- porary exception handling mechanisms can discard contract violations detected by RACs. As a result, a contract violation may not be reflected in a runtime error, breaking the supporting hypothesis of DbC. This paper presents an error recovery technique for RACs that tackles such limitations. This technique relies on aspect-oriented programming in order to extend the functionalities of existing RACs stop- ping contract violations from being discarded. We applied the recovery technique on top of five Java-based contemporary RACs (i.e., JML/jml, JML/ajml, JContractor, CEAP, and Jose). Preliminary results have shown that the pro- posed technique could actually prevent the contract violations from being discarded regardless of the characteristics of the exception handling code of the target application.
Original language | Undefined |
---|---|
Title of host publication | Proceedings of the 13th Workshop on Formal Techniques for Java-like Programs, FTfJP 2011 |
Editors | S. Freund |
Place of Publication | New York |
Publisher | Association for Computing Machinery |
Pages | 7:1-7:6 |
Number of pages | 6 |
ISBN (Print) | 978-1-4503-0893-9 |
DOIs | |
Publication status | Published - 26 Jul 2011 |
Event | 13th Workshop on Formal Techniques for Java-like Programs, FTfJP 2011 - Lancaster, United Kingdom Duration: 26 Jul 2011 → 26 Jul 2011 Conference number: 13 http://www.cs.williams.edu/FTfJP2011/index.html |
Publication series
Name | |
---|---|
Publisher | ACM |
Workshop
Workshop | 13th Workshop on Formal Techniques for Java-like Programs, FTfJP 2011 |
---|---|
Abbreviated title | FTfJP |
Country/Territory | United Kingdom |
City | Lancaster |
Period | 26/07/11 → 26/07/11 |
Internet address |
Keywords
- IR-77605
- EWI-16994
- METIS-277394