Tuesday, October 28, 2008

Bugs As Records

A bug in a defect tracking system has a lifecycle:
  • it's logged
  • it's triaged
  • it's discussed
  • it's fixed
  • it's verified
  • it's (maybe) reopened
Most of the time, after a bug is fixed and verified, no one ever looks at it again.


There is one other major use of a bug, and that's as a record.

When you don't know what's going on, and don't know where to start debugging an issue, the defect tracking system can be a great reference. Look up the error message you're getting and see if it sparks anything. Look at all the things you might find:
  • Maybe you have to reopen the bug (oh no!)
  • Maybe you find out that the bug was fixed a bit later than you remembered and the fix is in the next release, so you've just found another occurrence of the problem
  • Maybe it didn't happen quite that way, but it points you toward another log that has some interesting information
  • Maybe that module didn't throw the error, but another one did and the calling module is the same
  • Maybe you find out that this really has never happened before (at least that your defect tracking system knows about)
The point isn't that looking at the defect tracking system may help find a duplicate. The point is that even if it doesn't find a duplicate, looking at the defect tracking system may help you think about the bug a bit differently.  It's another way to think about solving the issue.

So when you're puzzled by a problem, don't forget that closed bugs are a resource, too.

No comments:

Post a Comment