Bootcamp

From idea to product, one lesson at a time. To submit your story: https://tinyurl.com/bootspub1

Follow publication

Image of book “Style Guide” by the Telegraph
Image source: https://www.flickr.com/photos/wikidave/7118464049/sizes/c/

A style guide for creating new backlog tasks

Tips for creating clear, outcome-focused backlog tasks.

Amy Ly
Bootcamp
Published in
4 min readMar 21, 2022

Many developers have experienced looking back at legacy code and not having any idea why it was written that way.

When you’ve been following a code style guide, however, the old piece of code should resemble a new piece of code. In this way, it’d be much easier to read and relearn what the code does, so you can more quickly tackle the real issue. If we practice good code style, we communicate more effectively with other developers looking at our codebase.

“Programs are meant to be read by humans and only incidentally for computers to execute.” — H. Abelson and G. Sussman (Structure and Interpretation of Computer Programs)

The same principle applies to your backlog.

Your team is constantly creating new tasks in the backlog for other developers. It’s important that each backlog task is created in a way that everyone will understand so we can avoid the following:

  • Additional time spent at the backlog grooming meeting trying to add context to a task.
  • A number of sync meetings amongst developers trying to understand a task.
  • Tasks staying in the backlog forever because no one understands its value.

Here’s a simple framework that we use to create backlog tasks that reduce confusion and increase productivity.

Style Tip #1 — The title is an outcome-focused, actionable sentence

A good task title enables someone skimming the backlog to understand what needs to be done at a glance. Titles do not need to be written in the form of a user story in order to describe the required work.

We’ve found success in titles that are generally:

  • complete sentences
  • actionable
  • outcome-focused
  • defined in scope

Consider the following examples:

Instead of: "CI Improvements"
Prefer: "[Spike] Investigate ways to increase speed of CI for each build"

The former isn’t a complete sentence, nor is it actionable (the scope is large, as there are many ways to interpret what a CI improvement is). The latter is actionable because it tells you what to do (spike, investigate) and the desired outcome (we want to find potential solutions that can increase speed of CI for each build).

Instead of: "Copy on Signup Screen is wrong"
Prefer: "Update copy on Signup Screen"

The former is a complete sentence, but it’s not actionable. It’s just a statement (the copy is wrong, but how do we fix it?). You might think it’s obvious that we need to correct the copy, but there are many ways to address wrong copy. For instance, we could just delete the copy!

Roll safe, the guy-tapping-head meme
Can’t have incorrect copy if it’s not even there!

This is an over-simplified example, but it illustrates how miscommunication begins. The latter title tells you what needs to be done (update copy).

Style Tip #2 — Keep It [the description] Simple, Silly

Your title defines what needs to be done and the description supports the initial task with notes.

Your description might include assumptions, open questions, acceptance criteria, and initial learnings. Keeping a backlog description simple allows for one to quickly ramp up on context so they can focus on implementation faster. You can avoid adding complexity in creating a new backlog task by forgoing a template and knowing your audience.

Forgo the template

I’ve seen teams try to implement templates for backlog tasks in the name of consistency, but this tends to create more overhead than necessary.

Backlog tasks created with a template tend to be verbose — the template might hold space for reproducible steps of a bug, for instance, but this is only applicable to bugs. The developer reading the task wastes time parsing through the extra fields to find what’s actually relevant to the task.

Furthermore, introducing a behavior change, such as requiring use of templates, adds the mental load of actually remembering to use it. Chances are high that not everyone on the team will adopt it, so you end up with inconsistent descriptions anyway.

Know your audience

Craft a useful and concise description by writing for your intended reader.

A full stack web engineer doesn’t need to understand a mobile app task, and vice versa. For example, when logging a new JSON decoding task for a mobile developer, you can omit the complete JSON response for a given endpoint and only include the specific property in the API contract that the mobile client is expected to consume.

Similarly, including the user story in the description might be useful in a product backlog for product managers, but not your technical backlog for developers.

Image of text on whiteboard, arrows drawn pointing to word “audience”
Photo by Melanie Deziel on Unsplash

In Summary

  • Make sure your titles are complete, outcome-focused, actionable, and have a defined scope.
  • Make sure your descriptions are written with the audience in mind, so it has only the relevant context.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Bootcamp
Bootcamp

Published in Bootcamp

From idea to product, one lesson at a time. To submit your story: https://tinyurl.com/bootspub1

Amy Ly
Amy Ly

Written by Amy Ly

Project Manager, Former Engineer

No responses yet

Write a response