In a previous post I described my approach to project management tools. To summarize, I prefer simple tools that I can string together into an effective process for each project.
I should note that the Software Studio at Obtiva generally takes on 2-to-6 person projects. Studio clients are by definition off-site. We usually meet face-to-face with them at least once per iteration for planning. Otherwise we act like a virtual team using on-line tools so that the client can participate in the iteration as it progresses.
The following are 7 simple agile project management tools that we use for Studio projects:
Drawing – Whiteboard & Digicam – There is really no substitute for standing in front of a whiteboard drawing, pointing, discussing, etc. This is high bandwidth communication generally reserved for planning meetings and or developer design sessions. When we need to record for later we usually just pull out a digital camera and snap a photo to later upload to one of our online tools.
Modeling & Planning – Index Cards & Sharpies – Along with a whiteboard another tool that is indispensable during planning sessions is the humble index card and sharpie. Collaborative card modeling is a high bandwidth activity and nothing really works better than physical cards for getting the team up walking around gesturing moving cards, ripping them up, etc. There is no substitute.
Lists – Google Docs Spreadsheets – While index cards work great for face-to-face modeling and planning the downside is that they aren’t digital. When the client leaves our Studio we need a way to share that planning information with them so they can think about things while we work on the current iteration. This usually requires us to transfer some or all of the information on the index cards to a digital form, a list. We’ve tried a bunch of different tools for this, including agile specific applications and ticket systems, but we always seem to come back to simple spreadsheets. Online spreadsheets like the one in Google Docs work great. They are always available from anywhere. You always know that everyone is working from the most up-to-date version. And, within the constraints, the tool is flexible enough and rich enough to manage user story lists and provide some decision support very transparently to the team.
File Storage – Google Sites File Cabinet – As with any project we often produce various file based documents such as screen captures, mockups, written docs, etc., and we need a place to keep them. Google Sites File Cabinets are a good option for this because they are secured but always available to everyone on the team.
Presence – Campfire – We know for a fact that collocated teams and clients provide the best, highest-bandwidth communication (a huge factor for project success). One reason for this is because team members that work in close proximity can overhear conversations and interject or help the team get to answers quicker even if they weren’t originally included in the conversation (see Alistair Cockburn for more on this). We replicate this type of overheard conversation virtually using a group chat tool. Currently Campfire is our tool of choice for group chat because it is web-based and easy for clients to learn and use. It even goes one better than face-to-face communication in one aspect; all the conversations are archived and searchable later. Campfire has become an indispensable tool for our Studio projects. (http://www.campfirenow.com/)
Discussion – Google Sites Blogs – For non-real-time discussion of issues or ideas it’s nice to have a threaded discussion somewhere that the team can go back and review. Any sort of forum software will work for this. We tend to use Google Sites Blog pages because it’s one less login to manage. We don’t use this tool extensively but it does serve a niche need sometimes.
Ticket Tracking – Lighthouse – In software development projects there always comes a time when major feature development is done and the team focuses on lots of little nits. At this point user stories just don’t fit the tracking need and we’ve found that ticket tracking fits the workflow better. Because I am a fan of lightweight easy tools we’ve been using Lighthouse for ticket tracking lately. I’ve seen some new competitors in this “easy ticket tracking” space lately so I would encourage you to survey the competition. (http://lighthouseapp.com/)
Email – JUST SAY NO! – Finally, when it comes to project communication we try to avoid email. Why? Well for a lot of the reasons noted above. Email often excludes a part of the team that might have the answer. Email isn’t easily searchable by the whole team, including clients. Even individuals can lose track of an important project related email amongst all the other information that comes through their inbox. So my advice to project leaders is to discourage or ban the use of email for daily project work communication and encourage the team to use centralized online communication tools with searchable archives like the ones listed above. And don’t forget, nothing can replace the high-bandwidth communication that happens in front of a whiteboard or a table full of index cards and sharpies.