Design by Contract (DBC), originated in the Eiffel programming language, is generally accepted as a practical method for building reliable software. Currently, however, few languages have built-in support for it. In recent years, several methods have been proposed to support DBC in Java. We compare eleven DBC tools for Java by analyzing their impact on the developer's programming activities, which are characterized by seven quality attributes identified in this paper. It is shown that each of the existing tools fails to achieve some of the quality attributes. This motivates us to develop ezContract, an open source DBC tool for Java that achieves all of the seven quality attributes. ezContract achieves streamlined integration with the working environment. Notably, standard Java language is used and advanced IDE features that work for standard Java programs can also work for the contract-enabled programs. Such features include incremental compilation, automatic refactoring, and code assist.
The copyright of the original papers published on this site belongs to IEICE. Unauthorized use of the original or translated papers is prohibited. See IEICE Provisions on Copyright for details.
Copy
Chien-Tsun CHEN, Yu Chin CHENG, Chin-Yun HSIEH, "Contract Specification in Java: Classification, Characterization, and a New Marker Method" in IEICE TRANSACTIONS on Information,
vol. E91-D, no. 11, pp. 2685-2692, November 2008, doi: 10.1093/ietisy/e91-d.11.2685.
Abstract: Design by Contract (DBC), originated in the Eiffel programming language, is generally accepted as a practical method for building reliable software. Currently, however, few languages have built-in support for it. In recent years, several methods have been proposed to support DBC in Java. We compare eleven DBC tools for Java by analyzing their impact on the developer's programming activities, which are characterized by seven quality attributes identified in this paper. It is shown that each of the existing tools fails to achieve some of the quality attributes. This motivates us to develop ezContract, an open source DBC tool for Java that achieves all of the seven quality attributes. ezContract achieves streamlined integration with the working environment. Notably, standard Java language is used and advanced IDE features that work for standard Java programs can also work for the contract-enabled programs. Such features include incremental compilation, automatic refactoring, and code assist.
URL: https://global.ieice.org/en_transactions/information/10.1093/ietisy/e91-d.11.2685/_p
Copy
@ARTICLE{e91-d_11_2685,
author={Chien-Tsun CHEN, Yu Chin CHENG, Chin-Yun HSIEH, },
journal={IEICE TRANSACTIONS on Information},
title={Contract Specification in Java: Classification, Characterization, and a New Marker Method},
year={2008},
volume={E91-D},
number={11},
pages={2685-2692},
abstract={Design by Contract (DBC), originated in the Eiffel programming language, is generally accepted as a practical method for building reliable software. Currently, however, few languages have built-in support for it. In recent years, several methods have been proposed to support DBC in Java. We compare eleven DBC tools for Java by analyzing their impact on the developer's programming activities, which are characterized by seven quality attributes identified in this paper. It is shown that each of the existing tools fails to achieve some of the quality attributes. This motivates us to develop ezContract, an open source DBC tool for Java that achieves all of the seven quality attributes. ezContract achieves streamlined integration with the working environment. Notably, standard Java language is used and advanced IDE features that work for standard Java programs can also work for the contract-enabled programs. Such features include incremental compilation, automatic refactoring, and code assist.},
keywords={},
doi={10.1093/ietisy/e91-d.11.2685},
ISSN={1745-1361},
month={November},}
Copy
TY - JOUR
TI - Contract Specification in Java: Classification, Characterization, and a New Marker Method
T2 - IEICE TRANSACTIONS on Information
SP - 2685
EP - 2692
AU - Chien-Tsun CHEN
AU - Yu Chin CHENG
AU - Chin-Yun HSIEH
PY - 2008
DO - 10.1093/ietisy/e91-d.11.2685
JO - IEICE TRANSACTIONS on Information
SN - 1745-1361
VL - E91-D
IS - 11
JA - IEICE TRANSACTIONS on Information
Y1 - November 2008
AB - Design by Contract (DBC), originated in the Eiffel programming language, is generally accepted as a practical method for building reliable software. Currently, however, few languages have built-in support for it. In recent years, several methods have been proposed to support DBC in Java. We compare eleven DBC tools for Java by analyzing their impact on the developer's programming activities, which are characterized by seven quality attributes identified in this paper. It is shown that each of the existing tools fails to achieve some of the quality attributes. This motivates us to develop ezContract, an open source DBC tool for Java that achieves all of the seven quality attributes. ezContract achieves streamlined integration with the working environment. Notably, standard Java language is used and advanced IDE features that work for standard Java programs can also work for the contract-enabled programs. Such features include incremental compilation, automatic refactoring, and code assist.
ER -