What is a Defect Life Cycle or a Bug life cycle in software testing?
The bug has different states in the Life Cycle. The Life cycle of the bug can be shown diagrammatically as follows:
Bug or defect life cycle includes following steps or status:
New: When a defect is logged and posted for the first time. It’s state is given as new.
Assigned: After the tester has posted the bug, the
lead of the tester approves that the bug is genuine and he assigns the
bug to corresponding developer and the developer team. It’s state given
as assigned.
Open: At this state the developer has started analyzing and working on the defect fix.
Fixed: When developer makes necessary code changes
and verifies the changes then he/she can make bug status as ‘Fixed’ and
the bug is passed to testing team.
Pending retest: After fixing the defect the
developer has given that particular code for retesting to the tester.
Here the testing is pending on the testers end. Hence its status is
pending retest.
Retest: At this stage the tester do the retesting
of the changed code which developer has given to him to check whether
the defect got fixed or not.
Verified: The tester tests the bug again after it got fixed by the developer. If thebug is not present in the software, he approves that the bug is fixed and changes the status to “verified”.
Reopen: If the bug still exists even after the bug
is fixed by the developer, the tester changes the status to “reopened”.
The bug goes through the life cycle once again.
Closed: Once the bug is fixed, it is tested by the
tester. If the tester feels that the bug no longer exists in the
software, he changes the status of the bug to “closed”. This state means
that the bug is fixed, tested and approved.
Duplicate: If the bug is repeated twice or the two bugs mention the same concept of the bug, then one bug status is changed to “duplicate“.
Rejected: If the developer feels that the bug is not genuine, he rejects the bug. Then the state of the bug is changed to “rejected”.
Deferred: The bug, changed to deferred state means
the bug is expected to be fixed in next releases. The reasons for
changing the bug to this state have many factors. Some of them are
priority of the bug may be low, lack of time for the release or the bug
may not have major effect on the software.
Not a bug: The state given as “Not a bug” if there
is no change in the functionality of the application. For an example:
If customer asks for some change in the look and field of the
application like change of colour of some text then it is not a bug but
just some change in the looks of the application.
Thanks for sharing this article on software defect life cycle. Here are a few useful links for software testers,
ReplyDeleteDefect Life Cycle
QA Job Board
Search QA Jobs