software to manage development processes of a website - bugs, features and security issues
I’m beginning a new hunt. This time I’m doing some research with the aim of choosing an ‘issue tracker’ to manage all those little things that need doing during the ongoing development of our in-house website. There are a million-and-one little things that need to be changed to improve the site - so it makes sense to install some software that will help my staff and myself to insert, track, prioritise and tick-off all these issues.
This blog post acts, mainly, as ‘my personal bookmark collection + notes’ as I trawl through the net to dig up some answers - it may be of use to you too.
During previous internet research efforts, I have learned that it takes a few rounds of googling before answers and options start to appearing in the search results.
Keywords
The first round of research is really about discovering the correct terminology to use to get the best search results - so here are the key words and phrases that i have tried:
feature request bug report software that integrates with subversion, issue trackers,SCM, Source Code Management, open source,project management software
Dream Features
An attempt to identify the features that my ideal issue tracking solution will offer:
- Easy to use for non-technical people
- Easy to install / maintain by IT staff
- Solution’s ‘minimum requirements’ should not mean we have to make drastic changes to our existing set-up
- Security - Granular Authorisation Levels - e.g although mainly to be used in-house by staff. Potential to allow limited read write access to the outside world would be a bonus too.
- Integration with Tigris Subversion - to open up ‘commit notes’
- Robust and Reliable
Notes
Ok, so here it goes:
Bugzilla
The first issue tracking software that springs to mind is Bugzilla:
http://www.bugzilla.org/
Has natural sheep-like kudos because it is a Mozilla thang.
Also spotted a list of local (UK) consultants that might just make the whole set-up process easy to outsource
http://www.bugzilla.org/support/consulting.html
Seems to focus on bugs (not surprisingly due to the name), but I envisagemy chosen system will be used mainly for feature requests by non-technical staff.
a CTRL+F of the features page has no mention of svn or subversion…sonot sure if it integrates yet.
I read lots of comments saying its particularly tricky to install
—-
Trac
Also I have been skimming through the book, Prototype and script.aculo.us (The Pragmatic Programmers), and they mention that the projects’ issues are tracked by a solution called Trac http://trac.edgewall.org/
If the guys at Prototype have chosen it then it must be good!
This page offers some resons / links-to-reasons why Trac is so good.
http://trac.edgewall.org/wiki/AboutTrac
of note, is the fact that a book has been written about it - always a good sign (plus Packt Publishing publish great books!)
plus link to an issue tracking system comparison article
(p.s. this article lead me to the concept of ‘continuous integration tools’ or ‘CI tools’ - something i will need to learn about some day, i’m sure)
One downside to Trac, for me anyway, is the fact that it requires python - which is currently out of the realms of my skill-set. Is it time to learn python, should I just choose a different tracking system or should i pay someone else to set it up for me? - Zat iz ze qvestion! i found these guys from trac web site - they look like they know what they are doing http://www.hosted-projects.com/index.php
Another negative for subversion integration - based on a quick scan of their documentation it seems that it needs to be installed on the same machine as the svn repository. Which is pain. I just want to be able to view the svn history - which i would have thought could have just been handled by a svn client over a network.
—
Mantis
A few recommendations for Mantis, http://www.mantisbt.org/ : “a tenor in the Bug Tracker category ” - JW User Quote
people say its easy to install - so this looks like it might fit the bill. I’ve seen it before somewhere, can’t remember whether i remember it for good or bad reasons. Update: I remember now, it was mentioned by nearlygeek who used to offer an InstantMantis download on his, now extinct, website. Also the user manual is quite php-like (user comments on every page) which is nice.
This is also a useful page: Its regarding integrating mantis with subversion: http://alt-tag.com/blog/archives/2006/11/integrating-mantis-and-subversion/
—
Others
Here is a list of bug trackers picked up from a google search
http://verticals.botw.org/Software/Application-Development/Bug-Tracking/
–a few suggestion by people who commented on the javaworld site and suggested a look at:
comparison chart on wikipedia
redMine http://redmine.rubyforge.org
Eventum from Mysql
eventum.mysql.org
Scarab - “It seems to be centered around having a completely customizable workflow. Perhaps this is over-ambitous.” - JW User Quote
Project Dune: http://sourceforge.net/projects/pdune - promises alot more than just issue tracking - e.g integrates with a SCRUM task management module (whatever that is)
Track+ is another one, http://www.trackplus.com - although it seems to be a Windows thing. Could not find any “system requirements” mentioned anywhere on the site. (although i probably did not investigate for long enough. ) Also appears to be a paid-for solution - that’s not the end of the world, but i did not see any obvious prices mentioned anywhere either.
RequestTracker -http://bestpractical.com/rt/ - home page blurb ticks all the boxes for me - will look into this one more
—-
Appraisal of the research so far…
After that little research stint - I’m wondering if i should be reconsidering the type of solution / or features that I require.
My main concern is that I am in effect developing proprietary software - a website- and i seem to have been looking at solutions designed for those who don’t seem to mind if an unwanted eye gets a glimpse of the code - as is the nature of an open source project. I will therefore try to look for some more solutions when i have more time.
Having said that, the two solutions thatseem to tick the boxes, so far, are Mantis and Eventum from Mysql. Simply because they look easest to install. However, Trac looks pretty and I would have leapt to it if i had been able to understand the installation instructions with out having to consult a manual on how to use linux.
–UPDATE 6th Jan 2008…
Conclusion
After the hours of research that I did yesterday, I ended up simply paying about £40′ish for 12 months Trac/Subversion/Web Dav hosting with http://www.hosted-projects.com/
Because, as they say:
“Why use hosted-projects.com instead of host myself?
Using hosted-projects.com has many advantages, which, in most cases, outweigh the disadvantages by far.
Pros:
* Cost-effective. A similar hardware and software setup would cost a lot more when you host your projects yourself.
* You can concentrate on your actual work instead of having to do administrative work
* Ideal for geographically spread out teams who need fast network access from anywhere in the world
* Fast and competent support available to help you with any issues you may have
* We handle backups for you
Cons:
* Source code leaves your office
* Access through the Internet is inherently slower than LAN access ”
I have left the svn repository on my own server - so the only con for me is “Access through the Internet is inherently slower than LAN access”.
This means I could quickly get the main priority resolved in a matter of hours - (allowing non-technical staff to submit tracking issues). Furthermore the option is there, in the future, should I wish to let my source code leave the office and sit in a remote repository.
After setting up my first Trac project - which was incredibly easy using the hosted-projects admin panel and instruction manual - I was pleased to see that it did indeed offer “Granular Authorisation Levels” thus allowing the whole system to become password protected.
I guess, if I want to allow customers to submit tickets (without seeing our internal tickets) I could write some code to collect them on my site and automatically submit them into the trac system via cURL or something.
—
Other notes - alternatives
I was extremely close to installing Mantis on my server. The only thing that stopped me doing this was:
- Limited time. Although you can install it and having running within 60 minutes or so. I would also have to factor in the time it takes me to read the code and understand exactly what it does on my server - I’m 3rd-party-code-paranoid, don’t you know.
- Design snobbery. The default set-up for Trac looks prettier than that of Mantis. Although I can cope with that, our non-technical staff are not so forgiving (they are of the generation that has grown up with beautifully designed websites like facebook, faceparty etc).
I guess once they have all got used to the concepts of ticketing it may be possible to introduce them to an installation of Mantis on our own server.
——–