When software is being written or updated, it’s not uncommon for the odd flaw or error to creep in. In practice, the error or defect might not be noticed until the code is put under test (preferably before it hits the market), and it’s discovered that something doesn’t work as it was designed to.
This is where software testers come in, and to make sure no stage in the test is left undone, a useful strategy is used so everyone involved knows the exact stage or status of a each defect or bug at any time. This path for following a defect from when it’s found to when it’s marked closed is called the defect life cycle, or the bug life cycle.
Stages of the Defect Life Cycle
Below is a list of the most commonly used labels used to describe stages in the life of a bug or defect, although the descriptions used can vary, depending on which system or tools the team is using.
- New: This term is assigned to a defect as soon as it has been discovered.
- Assigned: This designation shows that the project leader has assigned the defect to a development team or individual tester who will now take responsibility for working on it.
- Open: Once a developer has started work on the defect, it is marked as being Open.
- Fixed: Providing the process is straightforward, the next label change will be to mark it as fixed, which indicates that it is ready to be retested.
- Retest: To validate the fix, the next step in the defect life cycle will be for the defect to be retested.
- Reopened: If the retest finds that the original defect is still present, the status is changed to Reopened, indicating that the stages Open, Fixed and Retest need to be repeated until the defect has been fixed.
- Closed: Once the developer is satisfied that the defect is no longer present, and the software functions according to design, it is marked as Closed.
Not all defects will follow this life cycle path precisely. Sometimes, the addition of extra labels are needed, depending on circumstance.
- Deferred: If a relatively benign defect is found late in the production cycle, or the defect does not apply to the current build, it will be marked Deferred to indicate that it will be Opened at a more convenient future time.
- Duplicate: This label is used if the same defect has been inadvertently raised more than once. The second finding will be marked as Duplicate.
- Rejected: Occasionally, something may be thought to be a defect in error so it will be rejected. Two other reason for using this label is to show that a duplicate defect has been discovered and rejected, or if a defect cannot be reproduced, making further progress impossible.
Before starting work on your defect life cycle workflow, make sure you are using one of the Top Defect Management Tools. From the many on offer, choose one that’s right for your requirements and budget. To further help with your planning, learn more about The Software Testing Life Cycle.