In this post…
Our Web site makes it clear that one of Intervals core strengths is online task management. But what is not obvious is that Intervals is also very well suited to bug tracking. When we first started developing Intervals we wanted the task management feature to be more comprehensive than a basic to do list. We used bug tracking software as a reference, borrowing ideas on how to delegate and prioritize tasks. And we ended up with a powerful task management app that can track bugs just as easily as it can tasks.
Web developers, especially, often have to handle bugs alongside managing tasks when developing or maintaining a web site. Bug tracking requires you to juggle a lot of details, making software absolutely necessary to track and resolve bugs efficiently. If you are looking for bug tracking software, or trying to figure out how to track bugs alongside tasks, here is how you can do it using Intervals.
Differentiate bugs from tasks
The first thing you will want to do is differentiate your bugs from your tasks. This is an important setup step to take because it will allow you to filter your task lists for bugs and run segmented reports. There are a number of ways this can be done. Some people like to add the text “[bug]” to each task, others like to create a project that will only contain bugs. However, these methods have some shortcomings when it comes to running reports.
We recommend creating a module called “Bug” in the Settings & Defaults section of your account and associate it with the project that will contain the bugs. When creating a task to serve as a bug, select the “Bug” option from the list of modules in the dropdown. Now when you go to your task list you can select “Bug” from the list of modules in the left column to display only bugs, or you can sort your task list on the Module column so that all of the bugs are grouped together.
Designating the bug with the “Bug” module you created gives you the most flexibility and will provide much more useful information on task lists, project dashboards, and reports.
Prioritize your bugs
Your Intervals account has a default list of task priorities that can be customized so they are relevant to your needs. This list of priorities is useful for denoting each bug with a level of importance, so the people working on them know which ones to tackle first.
We recommend setting up a basic list of priorities; low, medium, high. It’s also useful to have a priority for bugs that are critical and need to be rushed. When creating a bug select the appropriate priority. If the bug is for a typo on a web site, for example, it should be a lower priority than a bug for a memory leak on that same site. Use priorities wisely. If you repeatedly give bugs the highest priority it will become difficult for your team to work through them effectively, and they may start regarding you with the same level of pessimism the townsfolk did with the boy who cried wolf.
Use status to keep track of bugs
Bugs undergo a process similar to tasks, meaning the same statuses used to keep track of tasks can also be used for bugs. It’s important to keep the bug status current so that your client and team know what needs to happen next.
Some statuses we have found useful for tracking bugs are: Open, In Progress, Under Review, Staged, and Closed. But they can be whatever is most useful for your development team to keep bugs moving toward resolution and completion.
Document the bug
Finding a bug is one thing. Replicating it and documenting is another. If developers are going to fix a bug they need to be able to replicate it, and to do this they need good documentation. Write-ups, screenshots, and videos are all important pieces of information that should be included with any bug submission.
Intervals has a document section for each task that can be used to upload documentation supporting the bug. The more documentation, the less guesswork required to replicate and resolve the bug. Uploading the documents directly onto the bug enables your developers to quickly access the information and begin isolating the issue.
Include properly formatted code snippets
Developers will often times speak in code, sending snippets back and forth while trying to zero in on the lines that need fixing. When updating a bug, use the code snippet feature in the advanced text editor to properly format your code. Clean code makes it much easier to read, and easier to debug. The code snippet feature will also separate the code out visually so that it does not get lost in the surrounding text.
Reference the bug history
Each time a bug is updated Intervals will record what happened. The entire history of task updates, document uploads, and time entries can be found on the History tab of the bug profile. Use this information to understand how much progress has been made on the bug — see who’s been notified, what documentation has been uploaded, and how much time others have spent on the bug. Then decide what needs to happen next to keep the bug moving along towards resolution.
Run segmented reports
Once you’ve squashed a few bugs it’s time to run some reports. Many of the reports you will find in Intervals are based on time tracking data. While it is not required that you track the time spent on bugs, it does help provide some very useful data.
Because you have segmented your bugs using modules and tracked time on each one, the reports will answer some very important questions. For example, you can find out how much time was spent on bugs versus tasks. You can find out which projects were the buggiest. You can calculate how much of the project budget went to fixing bugs.
At the very least, you should be using software to track bugs. Take a few extra steps to set up your bug tracking environment and track your time, and Intervals will slice and dice the data any number of ways to help you assess the impact bugs are having on your productivity.
Photo credit: Guilherme Tavares