The Fundamentals of Software Testing for Amateurs, Professionals, Novices and Experts. Welcome to the Glamorous World of Software Testing. Jim Morrison said, "Let's just say I was testing the bounds of society. I was just curious."

Bug Life Cycle

LIFE CYCLE of a Software Bug / Defect

Software Bug / Defect Life Cycle is the journey of a bug from its identification to its closure. The Life Cycle varies from organization to organization and is governed by the software testing process the organization / project follows and/or the Bug / Defect tracking tool being used.

Nevertheless, the life cycle in general resembles the following:


StatusAlternative Status
NEW
ASSIGNEDOPEN
DEFERRED
DROPPEDREJECTED
COMPLETEDFIXED, RESOLVED, TEST
REASSIGNEDREOPENED
CLOSEDVERIFIED

Bug Status Explanation

NEW: Tester finds a ‘bug’ and posts it with the status NEW. This bug is yet to be studied/approved. The fate of a NEW bug is one of ASSIGNED, DROPPED and DEFERRED.

ASSIGNED / OPEN: Test / Development / Project lead studies the NEW bug and if it is found to be valid it is assigned to a member of the Development Team. The assigned Developer's responsibility is now to fix the bug and have it COMPLETED.

Sometimes, ASSIGNED and OPEN can be different statuses. In that case, a bug can be open yet unassigned.

DEFERRED: If a valid NEW or ASSIGNED bug is decided to be fixed in upcoming releases instead of the current release it is DEFERRED. This bug is ASSIGNED when the time comes.

DROPPED / REJECTED: Test / Development/ Project lead studies the NEW bug and if it is found to be invalid, it is DROPPED / REJECTED. Note that the specific reason for this action needs to be given.

COMPLETED / FIXED / RESOLVED / TEST: Developer ‘fixes’ the bug that is ASSIGNED to him or her. Now, the ‘fixed’ bug needs to be verified by the Test Team and the Development Team ‘assigns’ the bug back to the Test Team. A COMPLETED bug is either CLOSED, if fine, or REASSIGNED, if still not fine.

If a Developer cannot fix a bug, some organizations may offer the following statuses:

Won’t Fix / Can’t Fix: The Developer will not or cannot fix the bug due to some reason.

Can’t Reproduce: The Developer is unable to reproduce the bug.

Need More Information: The Developer needs more information on the bug from the Tester.


REASSIGNED / REOPENED: If the Tester finds that the ‘fixed’ bug is in fact not fixed or only partially fixed, it is reassigned to the Developer who ‘fixed’ it. A REASSIGNED bug needs to be COMPLETED again.

CLOSED / VERIFIED: If the Tester / Test Lead finds that the bug is indeed fixed and is no more of any concern, it is CLOSED / VERIFIED. This is the happy ending.


Bug Life Cycle Implementation Guidelines
  • Make sure the entire team understands what each bug status exactly means. Also, make sure the bug life cycle is documented.
  • Ensure that each individual clearly understands his/her responsibility as regards each bug.
  • Ensure that enough detail is entered in each status change. For example, do not simply DROP a bug but provide a reason for doing so.
  • If a bug tracking tool is being used, avoid entertaining any ‘bug related requests’ without an appropriate change in the status of the bug in the tool. Do not let anybody take shortcuts. Or else, you will never be able to get up-to-date bug metrics for analysis.


PROBABLY RELATED POSTS



0 comments:

Post a Comment

Software Testing Fundamentals is dedicated to providing you relevant information on the basics of various aspects of software testing. The field of Software Testing, as opposed to Software Development, might not look glamorous to some but it is exciting to many of us and this site is devoted to share that excitement along with valuable information. Most of the articles here are compilations from various resources and experiences. In no way do we claim that we are the authoritative voice in this field and all our articles are open for discussion (See the open comment boxes). We advise you to apply the knowledge gained from this site at your own discretion. Nevertheless, we are committed to thorough research and we always welcome your contribution. And, of course, we will appreciate your reporting of any defects or enhancements you encounter on this site.