Bugzilla Bug Tracking System Using Bugzilla
It's not just for developers. Customers like it too.

Bugs are a natural part of the product development process. What typically goes wrong in the development process is that bugs are improperly managed. Does any of this sound familiar to you?

  • A bug is reported and never followed-up on.
  • A bug with lesser priority is fixed before more important bugs.
  • A bug ends up on a post-it-note and gets lost.
  • A bug resurfaces but no one can remember what was done to fix it the first time.
  • A developer thought someone else was fixing that bug.
  • A developer can't reproduce a bug you see every time you start the software.

By tracking the lifecycle of a bug, the above problems can be prevented. Tracking bugs improves communication, ensures accountability and increases productivity.

Is team productivity, high quality products and happy customers important to you? Customers expect their products to perform as promised. Tracking and resolving bugs is an important process that heavily affects customer satisfaction, developer productivity and product quality.

Enhancing the Customer Experience with Bugzilla
Bugzilla is an easy-to-use bug-tracking tool from Bugzilla.org. Bugzilla is a web-based interface that is easily configured for internal and external access. On the back end, Bugzilla hooks into a database to store, manage and query bugs. Typically, the database is hosted on your web server. And best of all, Bugzilla is FREE!

At RightHand, we allow customers to access our password-protected bug reporting database to thoroughly track bugs from submission to resolution. It helps improve communication between customers and developers so that nothing falls through the cracks.

The Voting feature of Bugzilla lets customers place a level of personal importance to a particular bug. During crunch time, this feature could be turned on to help determine which bugs get fixed. The Voting feature also comes in handy when helping to set priorities for new features. This is an optional feature that RightHand uses depending upon the nature of the project. If you don't see this feature and you want it, ask for it.

Developers know that the toughest bugs to fix are the bugs that can't be reproduced. You can't fix it if it isn't broken. Bugzilla guides customers in the bug submission process to gather facts so developers have enough information to reproduce a bug. Bugzilla will prompt the submitter to provide certain information that is of key importance to the developer (i.e. With what version of the software did the bug occur?). Improved fact gathering results in timelier bug reproduction and resolution.

Bugzilla also provides a mechanism for information to be efficiently communicated between tester and developer. As a bug moves through the process, the testing team may need further explanation of features to thoroughly test a product. Bugzilla facilitates this communication and keeps a history record of the communication. This can be helpful if a bug resurfaces and someone different has been assigned to the project.

Bugzilla is for everyone. The database can be run on most operating systems, although most installations are on a UNIX compatible machine running the Apache web server, Perl and MySQL. While Bugzilla uses JavaScript and Cookies, it can also be run without it if your browser has these features disabled.

Any customer with access to a browser and an Internet connection can report a bug - assuming of course, they've been given permissions to access the system.

The Flexibility of Bugzilla's Features

Bugzilla is a full-featured bug reporting system that runs quickly and efficiently. The feature list is quite extensive, but here are some of the key features that make it a powerful tool.

  • A Logical Process for Bug Resolution - Bugzilla can streamline the process of a bug's resolution: bug confirmation, assignment, resolution and verification/testing.
  • Bug Dependency View - The resolution of a bug might depend on the resolution of a preceding bug; therefore, Bugzilla also supports resolution dependencies. You can easily view these dependencies to see where a hold up is occurring.
  • Time Tracking - Track the time spent fixing a bug and whether time spent meets or exceeds the original estimate.
  • Email Notifications - Emails can be sent to alert you to changes that interest you. You can configure who you want an email to go to and for what reasons they are sent.
  • Customer Input (optional) - You can let customers access Bugzilla so they can vote for which tickets are the most important to them. This helps set bug priorities.
  • Restricted Access - Access can be restricted to either a single ticket or to a group of engineers.
  • Three-Dimensional Reports - Reports can be configured up to three dimensions. A two-dimensional report might show the status of the ticket in order of priority. Reports may be generated that indicate the rate bugs are filed, the rate bugs are fixed and the number of outstanding bugs. Reports are particularly helpful in tracking a project's status and helping a project manager decide when to take developers off a project and move from a bug fixing period to maintenance mode.
  • Saved Searches - Bug searches can be saved for easy reuse.
    Search in any combination of:
    • OS
    • Bug Severity
    • Platform
    • Priority
    • Assigned Engineer
    • Software Version
    • Software Component
    • Date
    • Email Address
    • Keyword in Ticket Text
    And yes, wildcards and substrings can be used to search too.
  • Ticket Attachments - Attachments can be added to a ticket, such as trace or input data that caused the error to occur.

How Does Bugzilla Work?
New bugs are created within Bugzilla and then they move through a series of states, based upon actions that are taken by the developer or clients. Each state change can record data within the bug record that can be reviewed or reported at a later date. This internal history will make sure issues do not fall through the cracks.

While this submitting and resolving a bug sounds ominous, don't worry. Bugzilla makes this easy.

  • Bugs start out as New.
  • They are then Assigned or Resolved.
  • Assigned bugs are then either Resolved or the ownership is changed.
  • Resolved bugs can be Re-opened, Verified, or Closed.
  • The developer takes possession of a re-opened bug and the bug is Assigned again or the developer fixes it again and it’s Resolved.
  • Verified bugs can be Re-opened (the bug isn’t fixed), Unconfirmed (The bug is sporadic), or Closed (fixed!)
  • Bugs that have been closed can be Re-opened or Unconfirmed (hard to trigger error case).
  • Unconfirmed bugs can be confirmed and New, Assigned, or Resolved.

Following Image is from Bugzilla.org

Bugzilla Bug Process Flow

In Summary
Improved customer-developer communication, ensured accountability and increased productivity are an outcome of a well-managed bug lifecycle, from submission to resolution. Satisfied customers, a productive team and a quality product will result when bugs are properly administered.

With access to a browser and an Internet connection, customers can easily report and track bugs to the Bugzilla database. Developers can track, manage and more easily reproduce bugs so nothing gets lost through the cracks.

Bugzilla's feature-rich bug reporting system assists customer and developers in reaching their goals to deliver a timely and quality product.