On software quality and engineering

Alex Satrapa grail at goldweb.com.au
Mon Nov 4 22:33:37 EST 2002

Doug.Palmer at csiro.au wrote:
> "... formalize and
> communicate design decisions, and help to ensure that they are correctly
> carried out."
> -- C.A.R. Hoare, 1988

For those who program in Java, there is a tool called "iContract" which 
supports Design-By-Contract in Java (DBC was one of the foundation 
techniques behind Bertrand Meyer's "Eiffel" language, IIRC):


The preconditions and postconditions are expressed in "Object Constraint 
Language", and pre/post condition can be selectively compiled* in (for 
development/testing) or out (for production).

*This kind of thing can cause problems, especially when the constraints 
have inadvertent side-effects that make the code appear to function 

More information about the linux mailing list