By Peter Bell

Selecting Project Management Software

These days I'm starting to take on more consulting projects so in addition to the generated sites which typically only take a few man hours, I can get to play with some more interesting/custom projects which typically run 100-300 man hours (if you have any fun ones you might want some help with next year, feel free to comment and I'll email you offline!). It is great because I can still use the SPL to create well architected apps more quickly than hand coding, but I also get to write some more custom functionality and to spend the time to create a really great solution. However, I need some project management software to help, so I did a quick review of some of the alternatives - from Trac and LightHouse to Mingle and Rally Software. Here's how it turned out . . .

What Do I Want?
So, the starting point was to define my requirements. My objectives were to provide a visually appealing site where clients could easily see the state of play, the work performed, the hours spent, any notes related to the work and could log any bugs or feature requests. I needed a system that allowed me to see my tasks (ideally within Eclipse), where I could document time spent on each task and could upload documentation related to things like APIs that I'd researched. I also needed some concept of stories (this was for development - not just bug tracking) and some way of relating tasks to stories so we could see estimated vs actual effort. And because the clients are paying by the hour, I needed to put billable hours into the estimated and actual field - ideally rolled up from smaller level tasks that I created (so I'd have a story, start by listing 15 tasks required, put time one each task and be able to see the rolled up time for each task). So my requirements are (in no particular order):

  • Visually Pleasing, Simple, Intuitive Client Interface - As one of the few things my (remote) clients will ever see about me, the UI needs to be elegant, usable and well thought out. It needs to be focused on providing clients with just the information they want to see and should be intuitive to use.
  • SVN Integration - I wanted it to capture notes from svn commits so I didn't have to double enter when I made a commit that fixed a bug or implemented a story. I also wanted a system where svn would be hosted on the same server so I didn't have to create two different environments and then write the commit hooks into the svn install - I want to spend my time programming - not doing sys admin tasks.
  • IDE Integration or Desktop Widget - I'd really prefer to minimize context shifting by having either IDE integration or at least a desktop widget for my Mac for checking off tasks done, adding new tasks and tracking time. Ideally it'd work offline so I can code on the Ferry or at Starbucks (where in Oz the Internet access is prohibitively expensive). I'd love an AIR app, but didn't find the one I was looking for in the timeframe required for this project!
  • Stories Metaphor - This is primarily to track development - not just bugs. As such I want the idea of stories which are comprised of tasks, with hours roll up from tasks to stories and burn down charts so we can all see how well the project is progressing.
  • Bug tracker - That said, I also need the ability for the client to log bugs - ideally against stories so I'll be able to report at the end on the estimated vs actual effort for each story including the time taken to fix related bugs and to implement related enhancements. In the ideal world I'd see "build", "bugs" and "enhancements" numbers under each story with % figures as well as a total so I could give the client really good feedback on where the time was being spent and whether we should spend more time on tests to avoid bugs or less on adding new features until the other stories were done.
  • Workflow - Ideally I'd love a workflow which would allow me to set things like "requested features" and with the ability to add stages for prioritizing, estimating, approving estimates and then "to implement" lists as there is a long workflow between a client thinking of a feature, me estimating it, them prioritizing it and me actually putting it into the hopper to start working on.
  • Time Tracking - I want a simple widget where I can either click "start" and "stop" to get the clock running on a task (needs to allow returning to a task as there are often task interruptions) or can at least type in hours spent on it. This needs to be assigned to the task.
  • Hosted Solution - I'll install software if necessary, but I'd rather just pay a monthly fee and let someone take care of the hosting - especially while I'm just trying this out. Last thing I need is to waste a half day getting a server configured just to try something out for a project or two.
  • Email Interface - For both clients and myself, I really want a solution that allows replies to automated emails to be logged as comments against a ticket to keep the overhead of using the tool as low as possible.
  • Content Management - There needs to be some kind of baseline content management or wiki features so I can upload documentation to the site and make that available to clients.

The Candidates
There are LOTS of pieces of software out there. I decided to look at the following ones. Trac, LightHouse, Unfuddle, activeCollab, Mingle, Fogbuz, Rally, Retrospectiva and TargetProcess.

The Bug Trackers
Unfortunately, some of the contenders dropped out pretty quickly. I really need the story metaphor (or at very least support for hierarchical tasks with roll up - I don't care whether they are called stories). I also need integrated time logging and reporting with each task. As such, Trac and LightHouse fell at the first hurdle. Unfuddle has time tracking and while it didn't have stories or hierarchical tasks, it has time roll up per milestone so at a push it might work. Mingle wasn't really designed to implement hourly estimates, but it allows for estimated and actual effort for each card, so it could work.

Narrowing the Field
I really wanted to play with Mingle, but I've got a business to run and while I would like to give Buildix a try (Mingle + svn + Trac + CC), I just don't have the time to play with that on this project. Maybe next time! Similarly activeCollab requires an install.

Also, Retrospectiva seemed just a little early stage for us - even though it is nominally a 1.1.

I was really looking to minimizing context shifting for managing tasks as that would be the biggest time sink, so I checked for that in all of the remaining contenders. Unfuddle has a widget, Fogbugz has EclipseBugz (although I'd prefer if the IDE integration was part of the commercial offering and hence supported), Rally appears to have Eclipse integration, although I have no idea why I need to send an email to request information about this - it should be part of the download and I need this up and running today. Also it appears I need to speak to their sales team to get going with this. Fair enough for most cases, but I need up and running fast, so Rally is out of the running for this project. Anyone who has jumped through their sales hoops, please let me know how it worked out as the software looks cool. TargetProcess doesn't seem to have IDE integration or widgets, so that leaves me with an initial shortlist for this project of Unfuddle and Fogbugz.

I also just saw that (not surprisingly) FogBugz doesn't have svn as part of their hosted solution. Of course they support svn integration, so I could set up (or rent) a svn install, customize it, customize Fogbugz and get them playing nicely together, but it the best of all possible worlds that's a half day of unbillable wasted effort and it could easily be a day or two of messing around. For now I'm going to try Unfuddle, and if it's good enough that'll work for today. If not, I'll review my criteria and see if it's worth checking out Mingle or activeCollab instead.

Comments
http://www.teamworkpm.net/ is build on CF and the developers are active members of the CF community.
# Posted By David Buhler | 12/23/07 5:48 PM
Dang, looks like that is pretty much the same as Unfuddled, in CF and cheaper - unfortunately I just signed up for Unfuddled, but I'll definitely check them out for my next project as it'd be great to use a CF based solution.
# Posted By Peter Bell | 12/23/07 7:15 PM
Oh, wait - doesn't yet have svn integration. That's a baseline requirement for me. Will see if they have it when I'm looking for my next project.
# Posted By Peter Bell | 12/23/07 7:18 PM
Fogbuz has one very interesting feature:

http://www.fogcreek.com/FogBugz/LearnMore.html?sec...
# Posted By David Buhler | 12/23/07 7:20 PM
Topper from TeamWorkPM will be speaking at CF-United Europe

http://www.cftopper.com/
# Posted By David Buhler | 12/23/07 7:22 PM
Fogbugz has a bunch of interesting features - was really hoping to get to play with it, but without svn hosting it was a non-starter for this project. I do like a bunch of stuff Joel and the team do at Fogcreek . . .

And I'll be presenting at CF United Europe too, so I'll definitely find Topper and talk to him about TeamWorkPM to see if it's looking to add svn as that'd be great!
# Posted By Peter Bell | 12/23/07 7:28 PM
what about JIRA? Seems to have everything you're looking for...
# Posted By dave ross | 12/23/07 9:38 PM
Looking forward to more updates! Fogbugz looks interesting - too bad they don't do SVN...

My only other criteria would be I'd want to host it myself. I've been using Google Apps for my wife's new biz and it's great - and while it's very rare for it to do down - when it does - it's a mess. My wife missed a whole day of email once and it was a mess. I couldn't imagine my project mgmt app going down and not being able to access project data.
# Posted By Jim Priest | 12/23/07 9:57 PM
@Dave - thanks - can't believe I blanked on that. Someone down in Melbourne recommended it to me and then the next day I saw a link Chris made to the CS bug tracker and I noticed it was on JIRA.

BTW, the link to JIRA for anyone interested is:
http://www.atlassian.com/software/jira/

I've only heard great things about it as a step up from Trac or Bugzilla in terms of usability and reporting features.

Unfortunately, I needed a hosted app right now and while Atlassian are working on it, it's still in beta:
http://www.atlassian.com/hosted/

I will definitely look at it when I have the time to implement a self hosted solution. It even has time tracking.

Looks like some nice estimation updating and reporting features around it too.
# Posted By Peter Bell | 12/23/07 10:07 PM
@Jim,

Well, if you're going to self host there are detailed instructions for configuring Fogbugz to integrate with svn. I needed a zero setup solution as I had to find a piece of software in the morning and configure it so I could start knocking out features by the afternoon. As such, even downloading activeCollab or Fogbugz was more time/risk than I could take as sometimes installs work, and sometimes they can take a while.

It is a good point re: self hosting as you definitely own more of the elements in the risk chain (although there are still risks when you self host). I think once I find a solution I love I would host it in-house.
# Posted By Peter Bell | 12/23/07 10:12 PM
Always those pesky time constraints :)

I'm also getting into Mylyn which I think you mentioned in another post and I could see integration with that becoming important as well. Very neat idea if you use Eclipse based tools.

JIRA has some awesome suite of tools and if I had an unlimited budget I'd be shopping there :)
# Posted By Jim Priest | 12/23/07 11:39 PM
Mylyn integration would be nice, but as long as there is SOME kind of IDE integration, it's OK. Writing a plugin sn't supposed to be THAT hard! Also, I don't find popping out to a widget too ainful so I'd even live with an AIR app on my desktop and a little switching. Full IDE integration would be really nice though!
# Posted By Peter Bell | 12/24/07 12:40 AM
I want through the same thing a few months back. My problem was that it had to be free since my boss will not pay for something he almost sees as "not needed" or not my job.

I tried about 20 open source projects and some demos (such as JIRAA) and ended up with Redmine (http://www.redmine.org). It's not hosted but it's the best free, web based application I found.

Have you checked out Code Spaces: http://www.codespaces.com, seems to do a lot besides for the wideget you want.
# Posted By Boyan Kostadinov | 12/27/07 2:46 PM
I think you'll find that integrating FogBugz and SVN is a task that will take minutes, not hours. Here's the fogbugz documentation:
http://www.fogcreek.com/FogBugz/docs/40/Articles/S...

I'm the author of a free open source bug tracker, BugTracker.NET, (at http://ifdefined.com/bugtrackernet.html) which also has SVN integration. FogBugz documentation was a help to me as I was designing/coding my own app's approach, so that's how I'm familiar with it.
# Posted By Corey Trager | 12/27/07 10:17 PM
Hi Corey,

Thanks for providing the link. I agree and disagree. I think that if you're already hosting a svn repo and have FogBugz running, integrating them may well be simple (although you never know for sure until you follow the instructions!). However, if you need to provision a server, install svn, install Fogbugz, and then integrate the two, it *could* take minutes, but if you don't have a background in Linux admin it could take longer. I went with a hosted solution to scratch the immediate itch and it's working out great. When I have the time I will consider an in-house solution and then I'll definitely check FogBugz out again.
# Posted By Peter Bell | 12/27/07 10:37 PM
I've worked with Rally on two projects now. I haven't used their IDE or svn integration, but without those "extras" the sales process is painless. It's literally a signup online, get a confirmation email and go. The community edition for up to 10 developers is even free (though only one project).
# Posted By Jeremy French | 12/27/07 11:33 PM
@Boyan, Code spaces looks nice, but lacks the integrated time tracking that was a big requirement for me.

@Jeremy, Interesting. I'll have to play with Rally some more when I get time. Thanks for the heads up!
# Posted By Peter Bell | 12/28/07 4:07 AM
Very reasonable reqirements I should say. I came up with something very similar when I was looking for a PM solution for my team. What I settled on was Wrike www.wrike.com. It's web-based and hosted, it has e-mail integration, so that I can create and update tasks via e-mail, and it has the most important features for simple project management. It works as a bug tracker too, we e-mail screenshots to the system and they get listed as bugs that need to be fixed. We also set due dates for them. Wrike doesn't have ane desktop widget though, you work off-line by writing e-mails. Interface is very intuitive and easy to understand. Time-tracking feature is coming in a month or so. You might want to try this one too.
# Posted By Pete Jenkins | 1/9/08 7:02 AM
You might want to take a looks at http://www.comindwork.com. It doesn't meet all the requirements you specified but at the moment it is being actively developed and user feedbacks implemented.
# Posted By Free online project management software | 1/17/08 8:37 AM
Good choice. We subscribed to Unfuddle a month ago. It's very good. We highly recommend it.
# Posted By Unfuddle happy customer | 1/22/08 3:29 AM
For future reference another consideration is http://www.sharpforge.com.
SharpForge.com provides commercial hosting of SharpForge, the open source project ( http://sharpforge.org/p/SharpForge.aspx ).

SharpForge supports agile, lightweight, collaborative processes. Each project has a wiki, svn, forums as well as work item tracking & voting.

SharpForge is open source software so your data isn't locked in a proprietary format, you have more deployment / customisation options.
# Posted By Scott | 3/10/08 12:18 AM
Doh, don't put a full stop after your urls :)

http://www.sharpforge.com
# Posted By Scott | 3/10/08 12:19 AM
Hi Guys, Topper from Teamwork Project manager here.

Thanks to David Buhler for mentioning Teamwork Project Manager. Without wanting to make a sales pitch here, TWPM is 100% ColdFusion and has lots of nice features and is getting better every day. I think one of the key advantages of using ColdFusion over our Ruby competitors is how fast we can get things implemented and rolled out.

Regarding my talk at CF-United Europe, well it was my first time speaking in public and I was a little nervous but the comments on my blog indicate that I pulled it off - http://www.cftopper.com/index.cfm?page=blog&bl...

I'd love to get some of ye to come over and try the free version which allows up to 2 projects. All comments - feedback, suggestions, criticism and advise are welcome - www.teamworkpm.net.

Cheers,
Topper
# Posted By Peter Coppinger aka Topper | 5/14/08 6:30 AM
If I might I would suggest www.bananascrum.com ;) Just follow this link to learn more ...
# Posted By Marcin Swiatek | 8/21/08 7:59 AM
You should really try BUGtrack (http://www.bugtrack.net). It setisfies a whole lot of your requirements and the solution offers unlimited project, issue and bug entry. And there is no set up and cancellation fee:)
# Posted By Peter | 9/5/08 5:21 AM
Yeah, maybe, but BugTrack makes my eyes bleed.
# Posted By Tom | 9/5/08 6:14 AM
BlogCFC was created by Raymond Camden. This blog is running version 5.005.