Ticket tracking is important in any software development project. Whether your project is small or large it’s important to know the story. It’s also nice to have a history so you can go back and know what you were thinking a year ago. Over the course of my career I have used many different ticket tracking systems. To name a few I have used Redmine, Bugzilla, Fogbugz, Github Issues and Pivotal Tracker. While using these tools I have noticed that they all can do the job just in different ways. I’ve started to wonder why is there so many ticket tracking systems out there and why isn’t one dominating the market. The simple answer is I don’t know because all of these tools can do the job each in their own way. I suppose the same question is raised with operating systems why isn’t everybody using a Mac or Window both can do the job right? I suppose with anything in life we all have our own preferences.
Redmine and Bugzilla require you to setup your own server (if you want the free edition). There is some Redmine or Bugzilla hosting out there. Both are able to do basic ticket tracking. Bugzilla uses a standard interface and doesn’t really do anything extra. The interface seems to be a little bit dated to what we expect of sites today. The same holds true for Redmine it’s a pretty basic interface to. Although the interface is modern it doesn’t look as flashy as other sites. One neat feature of redmine is that you to connect to a git or svn repository. Then you can view your source code and check out diff’s between commits. Other than that both do the same sort of create a ticket resolve a ticket flow. Of course with either solution you can modify the source to create your own flow.
The other tools I listed are all product based tools. They all come with a cost other than Github issues which is free for any open source projects. For the service based tools I have used I have found that they do not really add any more value than the open source ones. They might actually make your environment more limiting because you are not able to really customize them at all. The one benefit from a product based tool through as you are able to get the latest updates without having to manually add them yourself. Also you do not have to maintain or even have your own server setup to run them. Also their interfaces tend to be a little more flashy and a little more eye appealing.
At the end of the day the best tool depends on your situation. If your working on an open source project the best tool might be Github issues. That way everybody can use the same credentials they use to get into the repository. There would be no need to setup each developer with another account to another system.
If you are working on a private project my favorite tool would be Redmine. It’s a very stable project and does everything if not more than any of the product based tools. Also with the ability to customize the code to your needs you are able to do more with it. The product tools will be able to get the job done but at the same time come with a cost. That cost to me isn’t worth it when there are some great open source tools out there. Also with todays hosting server setup time is incredibly fast. Also if the project is using some type of source control probably git pull in updates is very easy also.
Of course this is only my opinion. I encourage you to try them out for yourself and pick the tool that best matches your needs.