On software quality and engineering
Ben Elliston
bje at redhat.com
Sat Nov 2 18:11:53 EST 2002
Tomasz> and has some safety margins built in. In most cases of
Tomasz> software desing I am yet to see doco on a module that states
Tomasz> that: "this module implements function X, it has these input
Tomasz> ranges, these output ranges and produces this error
Tomasz> otherwise".
Documentation in this sense is largely useless. It communicates these
ideas in natural language, which is open to misinterpretation and
ambiguity. A practical form of a software contract is an agreed upon,
machine readable, testsuite.
If the software passes a testsuite that the customer and the vendor
have agreed to, both have some reassurances about the quality of the
software produced. The customer knows their needs have probably been
met. On the vendor's side, the testsuite helps them quantify how
close they are to completion.
Ben
More information about the linux
mailing list