Various quality assurance alternatives may be considered as a concerted effort to operate with defects, faults, or failures, in order to reach the general purpose of quality assurance and betterment.
Software bug averting and reduction activities exactly deal with the competing processes of bug injection and removal.
They affect the defect parts in the completed software by operating to reduce the pre-release defect injections or to remove as many software bugs as possible before product release.
The faults left in the completed software are usually called “dormant bugs”, which may stay dormant for some period of time, but have the potential of causing troubles to clients and users.
After product release, the noticed failures and troubles reported by clients and users also need to be corrected. This in turn can lead to reduced bugs and improved product quality.
Nevertheless you cannot bank on these post-release reports and give up pre-release bug averting and reduction activities. The reason is that price of correcting software bugs after product release is emphatically higher than before product release due to the multitudinous installations.
You also should take into account that harm to software vendors’ reputation may be destroying.
Software bug containment activities aim at minimizing the bad influence of these remaining faults during operational use after product release.
Nevertheless the majority of the bug containment techniques involves redundancies or duplications, and requires emphatically more development effort to design and implement related features.
Consequently, they are generally limited to the cases where in-field failures are associated with substantial harm, such as in corporate-wide database for critical data, global telecommunication networks, and different computer-controlled safety critical systems.