Up until now, I've avoided project management tools. Constant communication, forum posts and quick todo lists used to serve us just fine in managing Party of Sin. We've been using that method for about 3 years now and things are getting done. The project management tools always seemed useful in streamlining the process, but I tried a few with Eternal Silence and this is what I found:
- Buy-in for any tool is extremely difficult, especially if your team is distributed. You pretty much have to force it down everyone's throat until they get used to it. During Eternal Silence, I installed 2 or 3 different systems, none of which stood the test of time.
- Even once they start using it, it's not always clear what benefit your team members are getting out of logging things on the system. As a project manager it's great for you, but what's in it for them?
- Usually by the time you need a project management system, you've got a whole backlog of issues that need to be entered in, this can take hours.
- You probably have a workflow you've developed (probably organically) and this inevitably isn't what the tool maker had in mind.
That last point is probably the most critical. Most people don't want to change the way they work, and unless the system can be adapted to your exact workflow, people will just skip using it completely. This is why there's such a proliferation of project and issue management systems. Every developer eventually finds that tools on the market don't match their needs, so they roll their own. I've always avoided these tools and just opted for Excel and Google Docs.
This worked great, until we reached a critical point in our development. At some point, the entire project can't fit in your head anymore. In the past two months we've probably had a dozen meetings to create a dozen todo lists which are quickly forgotten, abandoned and become obsolete very quickly. We would inevitably forget an important detail, or not completely define a problem, and as we work on what is pressing, we forget what comes next, and the cycle repeats. You quickly find out you're spending more time thinking and discussing what to work on next than actually working. We've also missed a couple of important deadlines lately, which is getting to be worrisome.
So what did I do? I had another meeting, a big one, with a huge sheet of paper. I outlined every single feature in the game that we were missing, and every level we had to work on, before we could call the game finished. It was overwhelming how quickly the paper filled up, and I knew I had to remember this some how, put it into an online system I could keep up to date. So I shopped around for Project Management Systems.
Certainly the most basic option. I thought of using a giant spreadsheet to keep track of tasks. If you search online you can quickly find templates for building burndown charts and iterations. This just seemed like too much of a hassle to setup and I didn't think it would stand the test of time.
I had some previous experience with JIRA, and combined with Greenhopper this is a super-powerful set of tools. The customizable workflow was an extremely helpful feature. It's also extremely cheap for small teams. The major downside is you need to have a powerful machine (at least 1GB of RAM) or pay for OnDemand hosting. Also be prepared to spend a couple of days customizing it. It will do just about anything, but you do need to tinker with it.
This is a taskboard tool, and I appreciated it's simplicity. It's totally free (forever) and has a pretty neat user interface. The major downside is it doesn't have the rest of the project management features you expect and it's difficult to keep track of individual tasks on the giant board.
I spent quite a bit of time in TeamworkPM before making my final decision. Teamwork is quite feature complete and has tasks, milestones, as well as task dependencies. What I didn't like so much about TeamworkPM is it focuses around the concept of "Task Lists", which leads to the same disconnected bunch of todo lists I was working with before. Without a customizable workflow, this didn't really fit.
I had some experience with Rally before. I joined again just to see if anything had changed. This is a basic online SCRUM tool and it does that fairly well, but it very quickly felt too rigid, and the interface isn't all that intuitive.
In the end I made a decision to go with JIRA and Greenhopper. No other suite is as powerful and promised to match our current workflow exactly. I spent a day customizing our project and workflows and turned it into a very comfortable system. I also spent a day translating that huge paper I made into over 100 JIRA issues. It feels great to finally get all those tasks out of my head and somewhere we can keep track of them. It's time to start burning down that task list!