Is Zero defect software Achievable??Explained.

Thumsi Herath
3 min readApr 17, 2020

Have you ever heard about this phrase “Z E R O D E F E C T ” ? Did you ever wanted to know what does it actually mean? This article will help you to find a solution for it.

Testing is required because these systems and applications are man made. Human make mistakes all the time.When we check it by our own it is possible to have blind spots. Due to this reason we need more outsiders other than developers to test.We need someone else to check.

What is a zero defect software? Is it a software where there are no bugs or defects as the name suggests?Is it possible to remove each an every bug from a software?????

Testing shows that there are defects available in an application.But can testing prove that there are no defects in it?Definitely the answer is “NO!” testing can minimize the possibility of undiscovered defects remaining in the software.

This is explained in ISTQB Foundation guide using a cool example.

This principle arises from the theory of the process of scientific experimenta-tion and has been adopted by testers; you’ll see the idea in many testing books. While you are not expected to read the scientific theory [Popper] the analogy used in science is useful; however many white swans we see, we cannot say ‘All swans are white’. However, as soon as we see one black swan we can say ‘Not all swans are white’. In the same way, however many tests we execute without finding a bug, we have not shown ‘There are no bugs’. As soon as we find a bug, we have shown ‘This code is not bug-free’.

Can we say All swans are white? NO! because as soon as see a black one we know that black ones exists too.Therefore we can say Not all swans are white.In the same way, We cannot say there are NO BUGS!! because as soon as we see a one we have to accept that there may be undiscovered ones.

And also if no defects are found, it is not a proof of correctness.Think of an instance where your customer wants to purchase a small car to use it just for daily run. Will your customer accept a lamborghini Huracan ? No!! Why should he purchase something that doesn’t meet his expectations?? If the user requirements and expectations are not fulfilled it is useless though you made something with zero bugs. No defects doesn’t mean that you have achieved the correct thing.

Try to reduce the amount of bugs that exists while keeping all the user expectations and requirements achieved. Quality should be there in the process from the beginning. Don’ t wait till the last minute.

If you can provide what the customer expected, fulfilling his requirements within the scheduled time, remaining in the estimated budget, and then you are as close to perfection as possible.Bugs do exist always. If you have understood that the correctness is not judged according to the number of bugs you are there closer to zero defect perfection.

-Can a system be fault-free? (zero faults, right first time) — N O!!

-Can a software system be reliable but still have faults? — Y E S !

-Is a “fault-free” software application always reliable? — Hell N O!!

--

--