We were using many different bug tracking systems in the past, but none of them suited our needs. Some of them were too complex, some did not have features which we needed, but mainly most of them weren’t easy to use, and did not have easy overview of tasks. We needed something easy to use for us an our clients. Besides bug tracking system, we were using Basecamp from 37signals mainly for messaging and for simple to-do lists. Recently Basecamp was updated with some cool new features, and our team decided to try it out for project management — bug tracking. Here is how we use it:
Milestones
Each milestone contains the to-do lists and messages related to it. We use milestones as sprints. Milestones keep us focused on finishing small sets of tasks on a short and strict schedule.
To-do Lists
The key feature for tracking tasks is the to-do list (in other tracking systems usually called a ticket). Each to-do lists contains a list of tasks. To-do list contains a group of similar tasks, so for example, if we are working on “Login” functionality, the to-do list would look something like this:
- Login page
- [Dev] implement login screen
- [Design] Implement validation of fields
- [Review] Implement forgot password functionality
In the example above “Login” would be the name of the to-do list, and below it, you would see the tasks related to it. Tasks are simply prioritized by order, which can be changed very easy in Basecamp by drag and drop.
Task tagging
Chris, our team lead suggested one more very useful feature, which we use when creating tasks — tagging tasks. As you can see in the sample above, every task has a tag: dev, design, review. Based on the tag type, everybody knows what kind of task types remain in the to-do list, and the team members can claim it, when they are available for work. Tasks with top priorities (tasks at top of the to-do list) are claimable.
This allows the team to work together, instead of one person assigning each task. Developers know which tasks are for them, designers have their tasks, and the client or QA can look at tasks with the “review” tag. This way each to-do can live through the life cycle of development.
Tasks with comments and attachments
The cool feature that made us realize that we can use Basecamp for bug and feature tracking, is that you can have comments in every to-do. You simply create a small to-do task, and we add comments and screen shots in it.
Allowing to clients to use Basecamp
One more cool feature about Basecamp is that clients love it too, since it's easy to use. We usually create a separate to-do list for them, where they can report the bugs or new features which they would like to see in the future. This way they are involved in the development process as well.
Prioritizing
The last step, after creating bunch of to-do lists is prioritizing to-do lists and tasks within them. So in the end, you have:
- prioritized to-do lists
- prioritized task lists within to-do lists
Anything else we need for tracking tasks?
Basically, that's it! You don't need anything else to start managing your project. By using simple rules for bug tracking and Basecamp you can easily manage your projects. Later, you will discover other features (most important: messages, overview and writeboard ) which will make managing your project even more efficient.
Summary
After using several different systems I can say that Basecamp is a very good system for project management. Not only that you can use it for bug tracking, but for messaging too. There is room for improvement, but I am sure it will get even better by time.