The cost of defects can be measured by the impact of the defects and when we find them. Earlier the defect is found lesser is the cost of defect. For example if error is found in the requirement specifications then it is somewhat cheap to fix it. The correction to the requirement specification can be done and then it can be re-issued. In the same way when defect or error is found in the design then the design can be corrected and it can be re-issued. But if the error is not caught in the specifications and is not found till the user acceptance then the cost to fix those errors or defects will be way too expensive.
Because of the following reasons the software defects arise:
– The person using the software application or product may not have enough knowledge of the product.
– Maybe the software is used in the wrong way which leads to the defects or failures.
– The developers may have coded incorrectly and there can be defects present in the design.
– Incorrect setup of the testing environments.
Definition: A defect is an error or a bug, in the application which is created. A programmer while designing and building the software can make mistakes or error. These mistakes or errors mean that there are flaws in the software. These are called defects.
- When actual result deviates from the expected result while testing a software application or product then it results into a defect. Hence, any deviation from the specification mentioned in the product functional specification document is a defect. In different organizations it’s called differently like bug, issue, incidents or problem.
- When the result of the software application or product does not meet with the end user expectations or the software requirements then it results into a Bug or Defect. These defects or bugs occur because of an error in logic or in coding which results into the failure or unpredicted or unanticipated results.
Additional Information about Defects / Bugs:
While testing a software application or product if large number of defects are found then it’s called Buggy.
When a tester finds a bug or defect it’s required to convey the same to the developers. Thus they report bugs with the detail steps and are called as Bug Reports, issue report, problem report, etc.
This Defect report or Bug report consists of the following information:
- Defect ID – Every bug or defect has it’s unique identification number
- Defect Description – This includes the abstract of the issue.
- Product Version – This includes the product version of the application in which the defect is found.
- Detail Steps – This includes the detailed steps of the issue with the screenshots attached so that developers can recreate it.
- Date Raised – This includes the Date when the bug is reported
- Reported By – This includes the details of the tester who reported the bug like Name and ID
- Status – This field includes the Status of the defect like New, Assigned, Open, Retest, Verification, Closed, Failed, Deferred, etc.
- Fixed by – This field includes the details of the developer who fixed it like Name and ID
- Date Closed – This includes the Date when the bug is closed
- Severity – Based on the severity (Critical, Major or Minor) it tells us about impact of the defect or bug in the software application
- Priority – Based on the Priority set (High/Medium/Low) the order of fixing the defect can be made. (Know more about Severity and Priority)
Also see – Failure in software testing
Know more about From where do Defects and Failures arises?