Re:Bug free certification coming to a theater near you
by kazinator on Wednesday July 02, 2014 @06:23PM
(#7980184)
You will be put out of business when someone finds a bug, and your credibility balloon bursts.
There can be no "bug free certification", because some bugs are a matter of opinion: instances in which the system behaves exactly according to how the engineers interpreted some requirements, but not how the customer intended the requirement. So, buggy according to the user; not buggy according to the developers.
Many users all over the world use software to whose requirement specification have no access, and so are not even able to judge whether some behavior is or is not a bug, other than obviously broken or nonworking functionality and crashes. They just explore the software to learn what it does, or rely on very scanty user documentation that lacks details. Even if something that used to work in a prior version does not work any more, that is not necessarily a regression: not if it was never specified in any documentation as a feature.
You will also crumble due to the overwhelming expense of proving that whatever you're making is bug-free, and the crippling effects of "cheating" to make it simpler to do.
Failing that, you will crumble due to having to specify every single aspect of your software formally, and publish that to everyone who needs proof that it's bug-free because part of what bug-free means is: "implements every aspect of a detailed, rigorous specification". That specification is a treasure to a competitor who wants to clone your system's features, so you will have to enforce NDA's for anyone viewing this documentation, which requires armies of expensive lawyers.
There can be no "bug free certification", because some bugs are a matter of opinion: instances in which the system behaves exactly according to how the engineers interpreted some requirements, but not how the customer intended the requirement. So, buggy according to the user; not buggy according to the developers.
Many users all over the world use software to whose requirement specification have no access, and so are not even able to judge whether some behavior is or is not a bug, other than obviously broken or nonworking functionality and crashes. They just explore the software to learn what it does, or rely on very scanty user documentation that lacks details. Even if something that used to work in a prior version does not work any more, that is not necessarily a regression: not if it was never specified in any documentation as a feature.
You will also crumble due to the overwhelming expense of proving that whatever you're making is bug-free, and the crippling effects of "cheating" to make it simpler to do.
Failing that, you will crumble due to having to specify every single aspect of your software formally, and publish that to everyone who needs proof that it's bug-free because part of what bug-free means is: "implements every aspect of a detailed, rigorous specification". That specification is a treasure to a competitor who wants to clone your system's features, so you will have to enforce NDA's for anyone viewing this documentation, which requires armies of expensive lawyers.