Defect Management
Defect Management
DEFECT
MANAGEMENT
Defect :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 errors. These mistakes or errors
mean that there are flaws in the software. These are called
defects.
Defects in any system may arise in
various stages of development life cycle. At each stage, the
impact and cost of fixing defects are dependent on various
aspects including the defect arising stage.
DIFFERENT CAUSES OF SOFTWARE
DEFECTS
Miscommunication of requirements introduces error in code
Unrealistic time schedule for development
Defect Classification
1.Severity Wise
4.Status Wise
DEFECT CLASSIFICATION
Severity Wise:
Major: A defect, which will cause an observable product
failure or departure from requirements.
Minor: A defect that will not cause a failure in execution
of the product.
Fatal: A defect that will cause the system to crash or
close abruptly or effect other applications.
DEFECT CLASSIFICATION
Work product wise:
SSD: A defect from System Study document
Test Plan/ Test Cases: A defect from Test Plan/ Test Cases
Closed
Deferred
Cancelled
DEFECT MANAGEMENT PROCESS
The process of finding defects and reducing them at the
lowest cost is called as Defect Management Process
Defect Prevention -- Implementation of techniques, methodology
and standard processes to reduce the risk of defects.
Steps to Replicate Step by step description of the way to reproduce the defect. Number the steps.
Actual Result The actual result you received when you followed the steps.
Expected Results The expected results.
Attachments Attach any additional information like screenshots and logs.
Remarks Any additional comments on the defect.
Defect Severity Severity of the Defect.
Defect Priority Priority of the Defect.
Reported By The name of the person who reported the defect.
Assigned To The name of the person that is assigned to analyze/fix the defect.
Status The status of the defect.
Fixed Build Version Build version of the product where the defect was fixed (e.g. 1.2.3.9)
ESTIMATE EXPECTED IMPACT OF A
DEFECT
Defect Impact: The degree of severity that a defect has on the
development or operation of a component or system.
How to Estimate the defect impact
1. Once the critical risks are identified, the financial impact of each
risk should be estimated.
2. This can be done by assessing the impact, in dollars, if the risk
does become a problem combined with the probability that the
risk will become a problem.
3. The product of these two numbers is the expected impact of the
risk.
4. The expected impact of a risk (E) is calculated as
E = P * I, where:
P= probability of the risk becoming a problem and
I= Impact in dollars if the risk becomes a problem.
Once the expected impact of each risk is identified, the risks should be
prioritized by the expected impact and the degree to which the expected
impact can be reduced. While guess work will constitute a major role in
producing these numbers, precision is not important. What will be
important is to identify the risk, and determine the risk's order of
magnitude. Large, complex systems will have many critical risks.
Whatever can be done to reduce the probability of each individual
critical risk becoming a problem to a very small number should be done.
Doing this increases the probability of a successful project by increasing
the probability that none of the critical risks will become a problem.
One should assume that an individual critical risk has a low probability
of becoming a problem only when there is specific knowledge justifying
why it is low. For example, the likelihood that an important requirement
was missed may be high if developers have not involved users in the
project. If users have actively participated in the requirements definition,
and the new system is not a radical departure from an existing system or
process, the likelihood may be low.
For example:
o An organization with a project of 2,500 function points
and was about medium at defect discovery and removal
would have 1,650 defects remaining after all defect
removal and discovery activities.
o The calculation is 2,500 x 1.2 = 3,000 potential defects.
o The organization would be able to remove about 45%
of the defects or 1,350 defects.
o The total potential defects (3,000) less the removed
defects (1,350) equals the remaining defects of 1,650.
TECHNIQUES FOR FINDING DEFECTS
Defects are found either by preplanned activities specifically intended to uncover defects
(e.g., quality control activities such as inspections, testing, etc.) or by accident (e.g., users in
production).
Techniques to find defects can be divided into three categories:
Static techniques: Testing that is done without physically executing a program or system. A
code review is an example of a static testing technique.
Dynamic techniques: Testing in which system components are physically executed to
identify defects. Execution of test cases is an example of a dynamic testing technique.
Operational techniques: An operational system produces a deliverable containing a defect
found by users, customers, or control personnel -- i.e., the defect is found as a result of a
failure.
While it is beyond the scope of this study to compare and contrast the various static,
dynamic, and operational techniques, the research did arrive at the following conclusions:
Both static and dynamic techniques are required for an effective defect management
program. In each category, the more formally the techniques were integrated into the
development process, the more effective they were.
Since static techniques will generally find defects earlier in the process, they are more
efficient at finding defects.
REPORTING A DEFECT
Be specific
Be detailed
Be objective