Every bug has a storyβfrom the moment it’s discovered to the moment it’s fixed and closed. This journey is known as the Defect Life Cycle (or Bug Life Cycle).
Understanding the defect life cycle is critical for:
- Testers who log and manage bugs
- Developers who fix them
- Managers who track quality progress
In this post, weβll walk through each stage of the defect life cycle, what happens at each step, and who is involved.
β What Is the Defect Life Cycle?
The Defect Life Cycle defines the stages a defect goes through during its lifetime in the software development processβfrom detection to closure.
It ensures bugs are handled in a systematic, trackable, and transparent way.
π§Ύ Stages in the Defect Life Cycle
π 1. New
A tester finds a defect and logs it using a defect tracking tool like Jira, Bugzilla, or qTest.
- Bug is assigned a unique ID
- Details like steps to reproduce, environment, severity, and attachments are added
- Status is set to New
π Owner: QA
β 2. Assigned
The bug is reviewed by the QA lead or project manager and assigned to a developer.
π Owner: QA Lead β Developer
π¬ 3. Open
The developer acknowledges the bug and begins investigation. This stage means the issue is now being actively worked on.
π Owner: Developer
π 4. In Progress (Optional)
Some teams add this stage to show that the developer is currently fixing the issue.
π Owner: Developer
π§ͺ 5. Fixed
The developer applies the fix, builds the code, and marks the bug as Fixed. The issue is now ready for retesting.
π Owner: Developer
π 6. Retest
The QA tester retests the defect in the updated build using the original steps.
π Owner: QA
β 7. Verified / Ready for Closure
If the fix works as expected and the bug no longer exists, the tester marks it as Verified or Ready to Close.
π Owner: QA
π 8. Closed
Once verified, the QA or lead marks the defect as Closed.
π Owner: QA Lead / QA
π Alternate or Conditional Stages
π« Rejected / Not a Bug
If the developer or product owner determines itβs not a bug (e.g. working as designed), the status may be marked as Rejected.
π« Duplicate
The bug is already logged. QA updates the new ticket as Duplicate and links to the existing one.
π« Deferred / Postponed
The bug is acknowledged but wonβt be fixed in the current release due to low impact or priority.
π« Cannot Reproduce
The developer or tester cannot reproduce the issue with the given steps/data. More info may be requested.
π§ Visual Flow: Defect Life Cycle
plaintextCopyEditNew β Assigned β Open β In Progress β Fixed β Retest β Verified β Closed
β Rejected / Duplicate / Deferred / Cannot Reproduce β
π Tools That Support Defect Life Cycle
- Jira (most popular)
- Bugzilla
- qTest
- TestRail (linked with Jira)
- Azure DevOps
- Redmine
π Best Practices
- Provide clear, reproducible steps
- Attach screenshots or recordings
- Include environment and build version
- Track linked test cases
- Use consistent severity and priority definitions
- Communicate status changes with relevant team members
π§ Final Thoughts
The Defect Life Cycle helps QA and dev teams stay organized, efficient, and accountable. It ensures every bug is tracked, investigated, fixed, and verified before a product goes live.
By understanding this flow, youβll be able to:
- Improve your bug reporting and follow-up
- Coordinate better with developers
- Maintain high-quality testing documentation