I see them all the time. Defect tracking systems with hundreds or thousands of defects. With a rising trend. Non-blocking defects end up in the defect tracker. “We’ll fix that later”, the team says. It is delayed work.
Every defect contributes to technical debt. Not paying off technical debt works like debt in a bank account. It will only increase and over time it becomes harder to add new features.
Pay off debt immediately. Fix defects immediately before implementing new features.
This practice will make you go fast and keep you going fast.
In your defect tracking systems you may discover:
- Items nobody understands anymore.
- Items with high severity levels that are aged.
- Items that reflect cosmetic preferences.
- Items that serve as reminders for developers.
- Items that describe code that can be improved.
Clean the clutter:
- Remove all items that nobody understands.
- Remove all items that don’t have any real impact.
- Remove all ‘critical/severe’ items that are aged or update their severity level.
- Remove all items related to unsupported versions.
- Remove reminders. If it is really important, it will come back again.
- Remove all code improvement suggestions. These are mostly subjective anyway.
- Plan for fixing real defects that have an impact and put them in your product backlog.
A software defect is an error, flaw, failure or fault that causes your software to produce an incorrect or unexpected result or cause it to behave in unintended ways. If an entry doesn’t fit this definition it does not deserve space in your defect tracker.
But maybe you don’t need a defect tracker at all. Features are not considered DONE when there are known defects. Fix known defects before releasing. Defects found after a release can be added to the product backlog and prioritized just like any other feature.
This approach also leads to delayed work, but allows a more enterpreneurial approach to defects. When a defect is regularly de-prioritized it can be removed from the product backlog. The product backlog also does not serve as a reminder list.