Design by contract uses a formal contractual approach to specify and implement the elements of a software system. Design by contract practice is not widely accepted in the software industry for a variety of reasons. Most notably, there is little research that demonstrates the efficacy of design by contract practices. A yearlong experiment compared design by contract practices with more traditional defensive programming practices. Sixteen software development teams independently designed and constructed an industrial-strength project for Brocade Corporation. The experiment gathered productivity data on each team and metrics on their software artifacts. Detailed analyses were performed on the data to compare and contrast the performance of the teams. This paper describes the project, data collection, analysis and results of the experiment.
%0 Conference Paper
%1 tantivongsathaporn_designByContract_2006
%A Tantivongsathaporn, J.
%A Stearns, D.
%B Software Engineering Conference, 2006. APSEC 2006. 13th Asia Pacific
%D 2006
%K approach;software by collection;design contract;formal contractual data development;software specification; system;formal
%P 335 -341
%R 10.1109/APSEC.2006.22
%T An Experience With Design by Contract
%X Design by contract uses a formal contractual approach to specify and implement the elements of a software system. Design by contract practice is not widely accepted in the software industry for a variety of reasons. Most notably, there is little research that demonstrates the efficacy of design by contract practices. A yearlong experiment compared design by contract practices with more traditional defensive programming practices. Sixteen software development teams independently designed and constructed an industrial-strength project for Brocade Corporation. The experiment gathered productivity data on each team and metrics on their software artifacts. Detailed analyses were performed on the data to compare and contrast the performance of the teams. This paper describes the project, data collection, analysis and results of the experiment.
@inproceedings{tantivongsathaporn_designByContract_2006,
abstract = {Design by contract uses a formal contractual approach to specify and implement the elements of a software system. Design by contract practice is not widely accepted in the software industry for a variety of reasons. Most notably, there is little research that demonstrates the efficacy of design by contract practices. A yearlong experiment compared design by contract practices with more traditional defensive programming practices. Sixteen software development teams independently designed and constructed an industrial-strength project for Brocade Corporation. The experiment gathered productivity data on each team and metrics on their software artifacts. Detailed analyses were performed on the data to compare and contrast the performance of the teams. This paper describes the project, data collection, analysis and results of the experiment.},
added-at = {2013-02-28T11:13:35.000+0100},
author = {Tantivongsathaporn, J. and Stearns, D.},
biburl = {https://www.bibsonomy.org/bibtex/2a3b2909c258e767c6cc2a3dfe3e1c6f7/fritzsolms},
booktitle = {Software Engineering Conference, 2006. APSEC 2006. 13th Asia Pacific},
doi = {10.1109/APSEC.2006.22},
interhash = {0dbf0e36806900c440a0594f8dd5999d},
intrahash = {a3b2909c258e767c6cc2a3dfe3e1c6f7},
issn = {1530-1362},
keywords = {approach;software by collection;design contract;formal contractual data development;software specification; system;formal},
month = {dec.},
pages = {335 -341},
timestamp = {2013-02-28T11:14:15.000+0100},
title = {An Experience With Design by Contract},
year = 2006
}