Free Republic
Browse · Search
News/Activism
Topics · Post Article

To: algol
I guess my point is that, unless you know absolutely all the possible uses your software will be put, you'd better write it as though somebody's life depended on it, because it might.

The fundamental problem with software design verification is that marginal reductions in the number of defects have an essentially exponential cost. The market has declared that it is unwilling to pay ten times as much for software as they do in exchange for not having to patch as many bugs. There are companies and applications that actually do a proper rigorous design verification, going as far as doing module level proofs of correctness, but this is extremely complicated and costs a fortune. The only people that can afford software applications that reliable is the military and similar. A defect in a single line of code can cause a million line application to subtly fail in ways that are nearly impossible to detect. Proving the correctness of an application that large is an exercise in the intractable.

So it boils down to economics. Virtually no one can afford to eliminate all defects in non-trivial software applications, certainly not for the consumer market. It is the nature of the beast. Comparing it to conventional engineering is apples and oranges.

62 posted on 03/30/2003 6:42:08 PM PST by tortoise
[ Post Reply | Private Reply | To 52 | View Replies ]


To: tortoise
Actually, if you write good code you don't have as many problems. It's also a lot easier to vigourously test code at the module level before it is integrated with the entire system.

It is very expensive to fix bugs after the system has been integrated.
63 posted on 03/30/2003 7:04:02 PM PST by luckystarmom
[ Post Reply | Private Reply | To 62 | View Replies ]

Free Republic
Browse · Search
News/Activism
Topics · Post Article


FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson