tags:

views:

806

answers:

14

The main goal of this question is to generate a list of reasons why you should use bug tracking software.

I have some of the basics

  1. track bugs (ok, that's easy)
  2. defects don't get lost or forgotten
  3. Monitoring trends can tell you a lot about your product
  4. Can get a better idea of the state of your product

I know there are other, probably better reasons, so what are they?

+10  A: 

Bug tracking software is also useful for setting milestones and accepting feature requests.

aleemb
+2  A: 

Collaborating with team members to assign responsibility, track progress, get estimates and liaise with clients is a great function of many bug tracking products.

Tim Sullivan
+1  A: 
  • Checking the progress of your software
  • Have a measurable way to decide the status of your software (eg: alpha: high priority bugs still open, beta: only minor bugs open, RC: no reported bugs open)
  • assignment of bugs to the appropriate developer/team/department
Stefano Borini
A: 

Customer relations

Tracking bugs might be good for internal purposes it also gives a platform for customers to vent frustrations straight after finding bugs without said frustrations bottling up inside them to a point of no return. It also boosts a company profile if you offer such services to your clients.

Martijn Laarman
A: 

While others have given the enterprisey/servicey answer, the reason I have used a bug tracking software in my personal project is simply because to have something to taunt me. Each of the tickets remind me that there's still much to do, and it's not time to quit, because the software isn't "complete."

Oh, and it beats post-its and in-code comments as todo reminders.

Henrik Paul
+1  A: 
  • You might be able to identify a pattern in the bugs that suggests a broader fix than just patching the individual bugs. Refactoring might be indicated.
  • It can help to identify which developers are creating the most bugs, which might lead to suggestions about mentoring or encouraging more testing of their own work by those individuals. Conversely, developers with few bugs are obviously doing a better job of testing their work.
DOK
+6  A: 

Stats, Accountability, Progress Tracking, Automation.

We use our bug databases to track stats such as:

  • Find rate (per tester) - how good are your testers x how buggy is your code)
  • Fix rate (per dev) - how good are your devs x how nasty are your bugs
  • Bucketing - which features are the buggiest / who's writing the most bugs?
  • Estimation of when milestones will be hit based on bug slope
  • Work Items & Suggestions - we put this stuff in our databases as well, not just bugs.

Other nice bits of data you can get out of your DB:

  • What's being tested?
  • List of fixed issues to perform regression testing against.
  • Historical data! We track all of our projects, and compare their respective bug slopes.
  • One source for all communication about bugs

Also, without a bug database, where do you store automated bug reports? Any project with some reach will generate thousands of user bug reports / automated crash reports. Automatically stuff this stuff into your database so you're not spending tons of time juggling emails.

John Noonan
A: 

Another minor benefit of bug tracking. When a user reports a problem, you can search the bug database to see whether it's a known problem in an unusual guise, or a completely new problem. Raymond Chen has an example in this story.

MarkJ
A: 

See Joel Spolsky's article about Painless Bug Tracking.

Bill Karwin
A: 

It's a great way for feedback from users. They report what they really find important about your software (not always exactly what you would).

Besides, it can be used for automating things such as Known Bugs, Roadmap, managing responsibilities etc. And a living bug database means the software is being actively developed, which definitely enhances the image of a project.

thSoft
+2  A: 

What is the alternative you plan to use? E-mail? A white board? Your short-term memory? It will help if you compare with the alternative rather than in a vacuum.

In addition to those benefits which you have noted, using bug tracking software allows for a shared sense of the product.

  • Everyone can look at the software to understand how many bugs are left to fix.
  • People seeing issues can look to see if they have already been found.
  • A common source of bug data can make triaging the bugs as a group easier.
  • Bug tracking software allows people at all levels of the product (dev, test, pm, management) to see a common view of the world.

I can't imagine working on a non-trivial piece of software without some form of bug tracking.

Steve Rowe
A: 

The better bug trackers integrate nicely with your version control too, and they really complement each other. VC commit logs tell you who and what, bug tracker comments tell you why.

A good bugtracker really fosters cooperation between testing and debugging too, and it makes it much easier to "throw" bugs from one developer to another because the information is all there instead of in a hundred odd little emails and post-it notes.

I use and recommend Redmine by the way .. very nice CVS and Subversion integration.

Sharkey
A: 

Now that is clear why, we should talk about which one!!!!

I recommend Assembla's bug tracking tool. It's really easy to use (as easy as using gmail stars system) and has a lot of cool features!

http://www.assembla.com/features/bug-tracking

Desiree
A: 

[Desiree] - I can't agree with you more. I love Assembla.com and Bontq.com, they're just awesome.

Alex Shultz