Bug Tracking Guide

Introduction

This guide is useful for:

  • Software developers who aren’t sure if their team needs a bug tracking tool,
  • Team Leads struggling to organize their bug management workflow, and
  • QA team members wanting to learn more about refining their process.

The first part of this guide will go over the basics of what bug and issue tracking tools do.

The second and third parts will show you how Backlog can improve your workflow, and how to use Backlog for bug tracking.

The fourth part of this guide will cover some bug tracking best-practices.

Are you ready to learn more about bug tracking?

Why use a bug and issue tracking tool?

For software development teams, finding, recording, and tracking bugs is an important part of creating a quality product. Bug and issue tracking tools streamline that process, making it easy for teams to prioritize, assign, and fix bugs quickly and efficiently.

In lieu of investing in a quality bug tracking tool, some software teams choose to use spreadsheets for bug tracking and reporting. While this may work as a temporary solution for small teams and projects, this method isn’t sustainable.

Consequently, teams end up with a few predictable problems:

  • Lack of communication. It’s difficult to have conversations about each bug on a single shared spreadsheet.
  • Lack of visibility. Team members end up having conversations via email, and those conversations lack any transparency to other team members.
  • Lack of real-time updates. While you can check a shared spreadsheet at any time, there is no formal notification feature for alerting members of new bugs, progress, and updates.
  • Lack of fluid priorities. All of the above lead to problems prioritizing and fixing the highest priority bugs first.
  • Lack of a central repository. Descriptions, screenshots, feedback, etc. are spread across too many platforms, and rarely easily accessible to everyone.
  • Lack of insights. Without an organized set of data about your bugs to glean insights from, it can be challenging to discover patterns and trends in your software defects.
  • Lack of integration with other work. With spreadsheets or even tools that are only meant for bug tracking, you’ll always eventually run into the same problem: your bug tracking workflow is happening in a silo, disconnected from the other tasks and projects your team is working on.

Bug tracking tools provide a transparent, centralized location for all of your bug tracking needs. They facilitate communication and provide real-time updates. Plus, tools like Backlog create a living archive of every bug your team encounters, so every team member today and in the future can access information about them.

Elements of bug and issue tracking

Since 2004, Backlog has been helping software teams manage all aspects of the software development cycle, including tracking and managing bugs. Teams around the world plan, track, and release software using Backlog’s unique feature set. From creation through maintenance, Backlog is built to help teams deliver the best software possible.

Many free bug tracking tools can capture and track bugs, but Backlog can help your team seamlessly manage the end-to-end development of your products.

Capturing

When your team uncovers a new bug, it needs to be properly documented and understood in order for someone to fix it. Rather than relying on emails or spreadsheets, you need a tool that gives each bug it’s own living repository of information that can be searched and explored.

Issues in Backlog help you capture everything your team needs to know about a bug to get the problem fixed. Titles, descriptions, attachments, and other fields give you the space you need to fully explain when, where, and how bugs occur.

Prioritizing

All bugs you capture need to be prioritized and assigned based on the bug’s urgency and your team’s current workload capacity. You need more than a tool for tracking bugs; you need a tool that can help you manage all of your separate workflows together. When you can view every moving piece your team is working on within a project, you can easily determine what needs to get done next.

With Backlog, you can set priorities for each bug, assign them to your team, and change due dates as needed to accommodate incoming projects and new bugs.

Tracking

As new bugs are added and taken through your workflow, there are team members that will need to be made aware of these additions, status changes, comments, and updates. Keeping your team up-to-date in real-time is invaluable for efficiency.

With issue statuses, commenting, and targeted notifications, you can keep your issues up-to-date and make sure the right people are notified of important changes.

Releasing

Whenever you can make more of your workflow centralized in one place, you know you’re going to see boosts in efficiency. Working on and releasing bug fixes shouldn’t require you to leave your bug tracking tool.

Once it’s time to get to work on actually fixing bugs, developers can create a new git branch directly in Backlog. Backlog automatically updates issues to reflect pull requests, merges, builds, and more, tracking every bug as it moves through your workflow towards completion and deployment.

How to track a bug in Backlog

Now that you know what Backlog can do, let’s give you a brief idea of how to track bugs.

Step 1: Check for duplicate bugs

Before you do anything in Backlog, you need to be sure that your bug hasn’t already been reported before.

Depending on how your team sets up their reporting workflow, you may need to bring the bug up in a team chat topic dedicated to bug reporting. Or you might need to submit the bug to a team lead for review. Or maybe you’re the one who needs to filter through your existing bugs using various parameters and search terms to determine if this is the first time the bug has been reported.

If it is the first time, you’ll move on to creating an issue. If it isn’t, you can read through the existing issue describing the bug and see if you can add any new information about how to recreate or fix the problem.

Step 2: Create a new bug issue

By default in Backlog, issues are set as “Tasks.” However, you can easily change the type of issue from Task to Bug, making it searchable as a bug in your database.

You’ll want to create a clear but concise subject for your title that accurately depicts the problem. Try not to be too broad with titles like “Add issue page isn’t working.” Instead, name your bugs according to what happens and when. Like, “Add issue page fails to save despite all required fields filled.”

Obviously, in your description you want to describe the bug:

  • What happens?
  • When does it happen?
  • Does it always happen?
  • Under what circumstances is it happening now?
  • What steps can you take to reproduce the event?

Issues in Backlog come with a number of other fields you can select including:

  • Assignee
  • Priority
  • Milestone
  • Category
  • Version
  • Start Date
  • Due Date
  • Estimated Hours
  • Actual Hours

You may not know what to put in some of these fields, and it’s up to you and your team to decide which ones are required for reporting a bug and how you’ll go about filling in any others throughout the course of your workflow.

Adding attachments including screenshots and screencapped GIFs of the bug occurring can help the assignee immensely in diagnosing the problem quickly.

As a final touch, you can choose who to notify of the bug. This could be your team lead, someone in QA, or another designated member of the team that you want to be aware of the addition of the issue.

With custom fields, you can personalize your issue creation page to include more options you might find useful. Many teams include text or drop-down fields for the environment, browser, or device on which the bug occurs.

Step 3: Prioritize and assign

As time goes by, you’ll end up with a backlog of bugs that are continually being added, worked on, and fixed. This backlog will likely be organized by a manager or lead of some kind on your team. It is this person’s job to make sure bugs are properly prioritized and assigned depending on their urgency and the workload capacity of the team at a given time.

Luckily in Backlog, all issues types can be viewed together and visually understood with Gantt charts. You can see every task your team is working on in a given project alongside every bug that needs fixing or request that needs to be made.

From there, your team can decide what work it can handle in a given week, and divvy that workload up using whatever best-practices you’ve adopted from the project management methodology your team subscribes to.

Keeping all issues in one tool enables you to make better estimates for delivery, manage your team’s time more effectively, and prioritize your backlog of tasks based on real-time updates from your team.

Step 4: Fix the bug!

Once a bug has been assigned and it comes time to work on it, software engineers can create a new git branch directly in Backlog. As team members begin making pull requests, merges, builds, etc., Backlog will track all changes automatically in the issue.

As your team works, status updates will keep you up-to-date on where each bug is in its workflow. Comments are a great way to ask questions or give feedback. And notifications allow you to select anyone else in the project when you need to inform team members of a vital update. Customizable notifications let you choose who on your team to notify so that you can keep the right people in the loop along the way.

As you work through each bug to your final fix, Backlog automatically keeps track of every change in real-time, so your team can stay on the same page.

Best practices

While bug tracking isn’t always the most exhilarating work a software developer will do, it’s necessary for delivering a quality product. As your product becomes more powerful and sophisticated, your backlog of bugs can grow quite large, and organization becomes increasingly important.

When tracking and fixing bugs, make sure you follow these best practices.

Be comprehensive

Failing to dot your i’s and cross your t’s might seem harmless, for a while. But after a few months of poorly managed bug fixes, subpar work has a way of catching up to your whole team.

When you’re reporting a bug, it’s important to be thorough and follow any protocols set forth by your QA team or team lead. One of the biggest productivity killers when working on bugs in trying to understand and recreate a poorly captured software issue.

For every bug, you need to be sure that it is:

  • Valid. Is it actually a bug?
  • Complete. Did you include an appropriate title, description, screenshots, etc. in your issue?
  • Unique. Has this bug already been reported in another issue?
  • Reproducible. What steps can you take to reproduce the problem?

Without this information, chances are your bug isn’t getting properly prioritized or fixed.

Think it through

The problem with rushing through testing is that you can overlook the importance of more subtle bugs. What might seem like a simple error can actually have profound effects on the user should they happen to follow the steps to create it.

Say you realize that you can, in fact, enter an invalid date into your system. You can create your bug in Backlog and then decide to put it at a normal or even low priority because it’s not something that’s crashing the system or preventing any kind of functionality.

Depending on the kind of product you have, something as simple as an invalid birthdate can cause havoc across a user's profile.

For example: If your product is used by hospitals, elements of patient profiles such as immunizations, recommendations for dosages of medicine, and other treatment areas might start displaying incorrect information. While it may seem unlikely that a nurse or administrator will accidentally enter in an invalid DOB, the effects of such an error could be dire. When thought through, this simple calendar error is actually high priority.

Whenever you’re reporting an error, be sure you’re thinking through the worst case scenario when judging the true impact of a problem.

Keep your eyes peeled

After you’ve meticulously captured and assessed the impact of a bug, you might feel like your job is done. It can be, but your team could be missing out on the types of useful observations one only makes when knee deep in pesky bugs: opportunities for improvement.

When you’re working with a product closely, you’re bound to come across a variety of circumstances that even the creators haven’t perfectly imagined. If you realize that certain screens are repetitive in a given flow or that adding an input field could ultimately save the user time, say something!

Using issues in Backlog, you can add tasks, bugs, requests, or custom issue types that your team creates. Remember to be respectful when offering improvements, as someone put a lot of time and thought into creating the work that you’re discussing. However, don’t let the fear of hurt feelings stop you from speaking up. At the end of the day, everyone will be happier knowing the result of their work has been thoroughly vetted and works under as many circumstances as possible.

Choosing your bug tracking tool

While some small teams may be able to get by on spreadsheets and free tools for a while, eventually all development teams need to invest in a system that works long term.

Backlog is more than a bug tracking tool; it’s a project management tool. Backlog can help you build, improve, and maintain software, and it can integrate your big fixing issues right in with the rest of your team’s work.

Integrations with Nulab’s other cloud-based apps, Typetalk and Cacoo, give Backlog the potential to be a collaborative ecosystem for your team. Typetalk, a team chat app, integrates Backlog issues right into your chat Topics, and you can paste chat threads directly into your Backlog issues. Cacoo, a cloud-based diagramming tool, makes it easy to create and use diagrams in your workflow. Diagram URLs automatically expand in Backlog issues, so your team can review them without leaving Backlog.

With paid plans starting at $20/month, Backlog can keep all of your projects organized. With our Premium plan, you get unlimited users, unlimited projects, and 100GB of storage.

Plus you get:

  • Subversion/Git
  • Subtasks
  • Access Control
  • Gantt Charts
  • Burn-down Charts
  • Custom fields

Try it out for yourself with our free 30-day trial. You can create projects, invite your team, and see if Backlog is the right tool for you. No credit card required. No risk involved.

We also offer a Free plan for those who don’t need our more advanced features but are still interested in the joining the 6,000+ businesses and teams that depend on Backlog for their bug tracking and project management needs.