In the field of software testing, the terminologies 'defect' and 'failure are used to measure the quality of the software product. Number of defects found in the software product imparts its poor quality, which may be controlled and resolve whereas, the failure of the software product throws light on its degraded quality which may not be controlled, now.
Defects may be seen as the elements, introduce in the software product through various entry points, which may obstruct its proper and desired working. Here, entry points may comprise of following
Any type of deviation occurring in the actual results from the expected or desired results reflects the presence of defect(s) in the software product. If these are not fixed or removed, they may catalyse the process of quality degradation, and ultimately, may result into failure.
Defects are occurred on the development site, generally prior and during the software development, and may be corrected on their itself before releasing it to the client or customer.
To identify and remove defects and other potential issues, testing team is being deployed by the organizations, so as to attain the maximum quality in the released software product.
In context of software engineering, the word 'failure' may be defined as the inefficiency of the software product, to exhibit its expected & desired functioning, for which it is developed, in order to satisfy the needs of the customers or end users.
Generally, failure of the software product occurs on the client or customer site, which may not be corrected. Thus, it may be inferred that the failure is the 'defect' explored by the users.
It may now be understood from the concept of defect and failure that the defects in the software product are responsible for its failure. However, it is, pertinent to mention that defects causes failure, but all failures are not based on the defects.
The reasons for the failure of the software product, other than the defects, may comprise of the following factors
Until the defects are inactive and not brought to the execution, they are unable to produce failure. Further, it is noteworthy to state that the expenditure incurred in the removal of the defects from the software is much lesser than its cost of failure.