What is Defect Age?
Defect age is a measure of the time span between when the bug was detected and resolved.
You can measure defect age in time or phases; the purpose of both is to gauge the team's responsiveness and efficiency.
Why use Defect Age?
Let's look at a real-world example.
From past data, a UI defect took around 72 hours on average to resolve. Now imagine if UI issues start taking about 100 hours to resolve. There is something wrong - maybe somebody is slacking, a new process is slowing things down, or the new developer is not skilled enough.
You can use the defect age to bring such discrepancies to light and get things back on track.
Some bug tracking tools allow such bugs to stand out, making them easier to track.
Defect Age in Time
Defect Age is the period between the time the defect is detected and the time it was resolved. Resolved means the bug was fixed and tested.
Suppose the defect was detected on 1st of Jan at 1 pm and was resolve on 3rd of Jan at 11 am. Its age will be 70 hours.
Instead of the elapsed time, it is better to use the team's working time. For example, if a team works, 8 am to 5 pm, Monday through Friday, then a bug reported at 4 pm on Friday and resolved at 4 pm on the following Monday would have an age of 8 hours, not 72 hours, which is unusually large because of the weekend.
Defect Age by Phase
Defect age (by phase) is the difference between the phases in which the defect was introduced and in which it was resolved.
Let's say you are developing an application and you have the following phases in your software development life cycle.
- Requirement Analysis
- Design
- Coding
- Unit testing
- Integration testing
- System Testing
- Regression testing
- Acceptance testing
If a defect is created in the coding phase and resolved during system testing, its age will be equal to 6 - 3 = 3.
A word of caution
Defect age is only useful when you compare the same kinds of defects. Comparing a UI defect with a security defect would not give correct results.