Management: 4 Defect
Management: 4 Defect
Defect Management
4.1
* Concept Map
Software Test
Testing Basics Management
Defect
Management
2) Defect Prevention.
It is the best method to eliminate the defects in the early stage of testing instead of
finding the defects in the later stage and then fixing it.
This method is also cost effective as the cost required for fixing the defects found
in the early stages of testing is very low.
However, it is not possible to remove all the defects but at least you can minimize
the impact of the defect and cost to fix the same.
The major steps involved in Defect Prevention are as follow:
Identify Critical Risk :-Identify the critical risks in the system which will
impact more if occurred during testing or in the later stage.
Estimate Expected Impact :-For each critical risk, calculate how much
would be the financial impact if the risk actually encountered.
Minimize expected impact :- Once you identify all critical risks, take the
topmost risks which may be harmful to the system if encountered and try to
minimize or eliminate the risk. For risks which cannot be eliminated, it reduces
the probability of occurrence and its financial impact.
3) Deliverable Baseline.
When a deliverable (system, product or document) reaches its pre-defined
milestone then you can say a deliverable is a baseline.
In this process, the product or the deliverable moves from one stage to another
and as the deliverable moves from one stage to another, the existing defects in the
system also gets carried forward to the next milestone or stage.
For Example, consider a scenario of coding, unit testing and then system testing.
If a developer performs coding and unit testing then system testing is carried out
by the testing team. Here coding and Unit Testing is one milestone and System
Testing is another milestone.
So during unit testing, if the developer finds some issues then it is not called as a
defect as these issues are identified before the meeting of the milestone deadline.
Once the coding and unit testing have been completed, the developer hand-overs
the code for system testing and then you can say that the code is “baselined” and
ready for next milestone, here, in this case, it is “system testing”.
Now, if the issues are identified during testing then it is called as the defect as it is
identified after the completion of the earlier milestone i.e. coding and unit testing.
Basically, the deliverables are baselined when the changes in the deliverables are
finalized and all possible defects are identified and fixed. Then the same
deliverable passes on to the next group who will work on it.
4) Defect Discovery.
It is almost impossible to remove all the defects from the system and make a
system as a defect-free one.
But you can identify the defects early before they become costlier to the project.
We can say that the defect discovered means it is formally brought to the attention
of the development team and after analysis of that the defect development team
also accepted it as a defect.
Steps involved in Defect Discovery are as follows:
Find a Defect :-Identify defects before they become a major problem to the
system.
Report Defect :- As soon as the testing team finds a defect, their responsibility
is to make the development team aware that there is an issue identified which
needs to be analyzed and fixed.
Acknowledge Defect :- Once the testing team assigns the defect to the
development team, its the development team’s responsibility to acknowledge the
defect and continue further to fix it if it is a valid defect.
5) Defect Resolution.
Prioritize the risk :- Development team analyzes the defect and prioritizes
the fixing of the defect. If a defect has more impact on the system then they make
the fixing of the defect on a high priority.
Fix the defect :- Based on the priority, the development team fixes the defect,
higher priority defects are resolved first and lower priority defects are fixed at the
end.
Report the Resolution :- Its the development team's responsibility to
ensure that the testing team is aware when the defects are going for a fix and how
the defect has been fixed i.e. by changing one of the configuration files or making
some code changes. This will be helpful for the testing team to understand the
cause of the defect.
6) Process Improvement.
Though in the defect resolution process the defects are prioritized and fixed, from
a process perspective, it does not mean that lower priority defects are not
important and are not impacting much to the system.
From process improvement point of view, all defects identified are same as a
critical defect.
Even these minor defects give an opportunity to learn how to improve the process
and prevent the occurrences of any defect which may impact system failure in the
future.
Identification of a defect having a lower impact on the system may not be a big
deal but the occurrences of such defect in the system itself is a big deal.
For process improvement, everyone in the project needs to look back and check
from where the defect was originated.
Based on that you can make changes in the validation process, base-lining
document, review process which may catch the defects early in the process which
are less expensive.
7) Management Reporting.
Defect Reporting in software testing is a process in which test managers prepare
and send the defect report to the management team for feedback on defect
management process and defects’ status.
Then the management team checks the defect report and sends feedback or
provides further support if needed.
Defect reporting helps to better communicate, track and explain defects in detail.
The management board has right to know the defect status.
4.3
1) Estimate Expected Impact of a Defect.
Once the critical risks are identified, the financial impact of each risk should be
estimated.
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.
The product of these two numbers is the expected impact of the risk.
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.
3) Defect Report.
DEFECT REPORT, also known as Bug Report, is a document that identifies and
describes a defect detected by a tester.
The purpose of a defect report is to state the problem as clearly as possible so that
developers can replicate the defect easily and fix it.