UX Playbook

Bug reports

The aim of writing bug reports is enabling someone to resolve a problem and thereby improve the product. At the same time, a bug report should indicate relevance and severity so the Product Owner can determine the priority of fixing a bug. These guidelines explain how to write consistent, clear and effective bug reports.

Before you report

Make sure...

Report contents

A bug report should always contain:

Report summary

Both the Product Owner and developers should be able to quickly see what a bug is about and understand the importance to fix it. It's therefore important to write a clear and concise report summary. A summary should uniquely identify a bug, explain the problem that occurs and, possibly, the context.
Example of how and how notto write a report summary

A summary does not need to contain the expected result or behavior, nor a suggestion for a solution. While this information is relevant, it should be described in the report details.

Report details

The report details should contain all the information needed to reproduce and resolve the issue. This requires a detailed description, which steps were taken, what was expected and in what environment the problem occured. Make sure to include the following in your report details:

Problem description

Elaborate on the report summary. Be precise, specific and verbose. The description should contain:

To clarify the symptoms and occurrence add the following when relevant:

A solution may be proposed, but is not required in a bug report.

Reproduction path

Provide a step-by-step description of what actions to perform to reproduce the problem. Someone else should be able to reproduce the problem based on these steps without any help. Preferably, write it as a numbered list (1. select..., 2. click...). If you didn't trigger the problem, what event did?

Environment variables

Under which conditions did the problem occur?

Related issues

Is the problem related to another issue? A problem relates to a story when that story no longer passes its acceptance criteria (see User stories). When it does, you should reference it. If you expect the problem is caused by another issue you should also link to it. You link to another issue by referencing its unique issue identifier.

Severity

For a Product Owner, it is important to know how severe a bug is. How frequently does the problem occur? And if the problem occurs, how big is the impact? If a problem occurs rarely and the effect is minimal, the problem can be considered trivial. When a problem occurs often and has a huge impact on the usage, it's considered a blocking issue. All levels in between may be harder to define. The following scale and diagram should help to determine the severity level.

Severity level from highest to lowest:

Priority

Based on the description, relevance and severity the Product Owner should now be able to define the priority of fixing the bug.

Workflow & Tools

Now you know how to report a bug, this is what you should do when you identify a problem:

JIRA Capture

When using JIRA for issue management you can (and should) use JIRA Capture to quickly generate complete bug reports using a browser plugin. The JIRA Capture plugin allows you to directly add a bug to a JIRA project. The plugin creates a screenshot which you can annotate, and automatically adds most environmental variables. You can directly set severity and assign the issue. You can even create custom report templates to assure bugs are reported completely and consistently.

Resources