Lesson 3, Exercise 2: Backlog Refinement

Need help? Contact us!

This exercise helps you gain an understanding of the Product Backlog, along with your role in managing it.

Estimated Time
90 minutes

Materials Needed:
Project-tracking technology of your choice (sticky notes will do, but we recommend you try Trello.com, explained in this lesson)

Outcome
You can prioritize a list of user stories into a backlog of work to be done.


Preparation

What is a Product Backlog?

The Product Backlog is simply a list of work that must be done to deliver value to your customers. This list will continue to evolve over time and is ever-growing. The Scrum Guide is an excellent resource for learning how the Product Backlog fits within the Scrum process. The backlog should always be visible to the team, management, and customers. Backlog items can include big stories that lack refinement (to be completed in the future) as well as detailed user stories (to be completed immediately). Managing the Product Backlog is the prime responsibility of the Product Owner (PO) role.

The Product Backlog should be a simple, prioritized list of work to be done. The backlog list should include the user story title, priority ranking, and story estimate (which describes the amount of effort it will take to complete the story). Whether your agency uses software or physical cards, you’ll need to include what your “Definition of Done” is and a statement of customer acceptance. During the Sprint Review, the team and customers identify whether acceptance was met or not.

Why do we need a prioritized backlog?

Gallup performed an employee engagement study on 30 years of its own data that included over 17 million employees. Gallup identified twelve core questions (Q12) that every employee desires. The top concern of employees based on the study is that they want to know what is expected of them at work. In other words, employees want clear and concise direction.

The Product Backlog provides clear direction because it has been prioritized by management and/or customers. An effective backlog also provides transparency because it is posted where all can see. As priorities change (and they will!), the backlog is the first tool the PO uses to identify where new work belongs.

It’s imperative that the Sprint Backlog — containing items the team is currently working on during a Sprint — remains undisturbed if at all possible. The Product Backlog can be reprioritized at any time as long as it does not interfere with or include any work items from the Sprint Backlog while the team is in a Sprint. “Feel free to reprioritize Product Backlog items that the team is not working on as often as you wish,” says Jim Highsmith, an Agile Manifesto signatory.

Sprint Backlog

The Sprint Backlog should include the highest prioritized items from the Product Backlog. The Sprint Backlog represents what the team has forecasted to complete by Sprint’s end. The Sprint Backlog is a subset of the Product Backlog, and is the result of the Sprint Planning meeting.

The Sprint team will usually translate the user stories into development tasks when they move them to the Sprint Backlog. Normally, a task is a work item that can be completed in one day. Simply put, if the user story is “what” needs to be done, then the task is “how” the work gets done. Identifying the tasks that get user stories to “done” is the responsibility of the Development Team only. POs, managers, and customers can help design user stories, but only the Dev Team can build the tasks. “The Sprint Backlog is a highly visible, real-time picture of the work that the Development Team plans to accomplish during the Sprint, and it belongs solely to the Development Team.” (Scrum Guide, 2013).

Backlog Refinement

The Backlog Refinement meeting is an opportunity to look ahead to future sprints and identify or refresh the Product Backlog. The meeting is not a formal Scrum ceremony, but it is very useful as your team matures. The refinement meeting is a less formal version of the Sprint Planning ceremony. The Sprint team reviews the Product Backlog and identifies any new or reprioritized backlog items. The idea is to have enough user stories estimated for two or three Sprints ahead.

Refinement meetings are conducted weekly, typically in the middle of a Sprint – not at the beginning or end. The current Sprint can be discussed, but the meeting is designed to look forward. The team can estimate user stories in the backlog for future Sprints. If a team has enough “points in the oven” — enough capacity to handle more work — the Sprint Planning meeting should be a breeze. The Product Backlog is constantly being refreshed if the team meets weekly for the Backlog Refinement meeting.

Tips on Backlog Refinement

  • While planning, resist the urge to spread out in scope too quickly. Respecting vertical slices and being careful to decouple Epics tightens the overall scope, and makes the backlog more manageable.
  • User story mapping is a good exercise to identify user needs and to keep the backlog from getting stale.
  • If requirements shift during the development process, close the original ticket, and create a new ticket that reflects the new story.

Workflow

This exercise should be completed with two or more people. One person should be designated as the Product Owner while the others will be stakeholders. As the group reviews the stories, the Product Owner accepts input from the stakeholders but retains authority to decide on final prioritization. You will be using a storyboard, which is a tool that helps the team keep track of items in a project, moving them along from “Backlog” all the way to “Done”.

Learn more about storyboards ›

For this exercise, you will be reviewing and prioritizing features for a new car. To do this, we highly recommend that you access the free project-tracking software at Trello.com.

Learn more about Trello ›

Using Trello

You will be using a Trello template that is full of potential features. Assuming you have signed up for Trello and are ready to start the exercise, go to  https://trello.com/b/wgxpToaw and copy the board. (To copy the board, go to the Menu on the right side of the screen, click “More” to see the options, and then click “Copy Board”. The resulting board is your own to manipulate during this exercise.)

Using Paper and Pens

You can also use a big board with sticky notes for this exercise, but we suggest that you will eventually want to move to a project-tracking software like Trello for managing real-life projects. Write the following user stories onto sticky notes, which you will move from a column labeled “New”  into a column labeled “Backlog”. The numbers should also be written on the notes — they represent the “points”, or the amount of effort required for the Dev Team to complete the story:

  • Power steering (3)
  • Programmed seat position (8)
  • Hydraulic brakes (3)
  • De-icing windshield (5)
  • Heated seats (5)
  • Satellite radio (3)
  • Air conditioned seats (8)
  • Air conditioning (5)
  • 1000-watt speaker system (13)
  • Power windows (8)
  • Fog lights (3)
  • Power locks (5)
  • Sun roof (3)
  • Power side view mirrors (3)
  • Push button start (5)
  • Turn by turn navigation (8)
  • Bluetooth integration (3)
  • Bike rack (3)
  • Cup holders (1)
  • Rear door child locks (3)
  • All weather floor mats (1)
  • Roof rack (3)
  • Parallel parking assist (8)

Activities

Prioritize the Backlog

Your first task will be to review all of the stories in the backlog and determine their rank relative to one another. When ranking, you may cluster related stories near one another. However, it is important to ensure you provide a breadth of features as the new car is being built. For example, heated leather seats are great but if there aren’t any cup holders, you’re bound to spill some coffee.

As you review the stories, drag them from the New column to Backlog, placing them in the priority order of your choosing. Throughout this process, you may reshuffle the order or have a discussion about the relative importance of one feature versus another. This is a vital part of the backlog prioritization process. Once all of the user stories in the New column have been moved over to the Backlog column, you are done with this task!

Scope a Sprint

Now that you have prioritized your backlog, you need to determine what will go into the next sprint. At the top of the In Progress column, you will see the number 34. This is your sprint team’s average velocity. Review the stories in your backlog and place 34 points worth of stories into the In Progress column. You may have to place a lower priority story into the sprint so that you can reach 34 points. Do not go over 34 points. You have just planned for an upcoming sprint!

Refine and Scope Next Sprint

Fast forward a few weeks. Pretend your team is about to complete their sprint, and you are looking forward to all those new features for your car. It is time to start planning your next sprint!

If you are using Trello, copy this board https://trello.com/b/mHfceaCf to get started.

If you are using sticky notes, you will need to re-group the stories into the following columns (some new features have been added):

New

  • Turbo charger (8)
  • Fold down rear seat (3)
  • Wood trim (5)
  • Rear seat entertainment system (5)
  • Steering wheel mounted audio controls (5)
  • USB charging station (5)

Backlog

  • Air conditioning (5)
  • De-icing windshield (5)
  • Turn by turn navigation (8)
  • Rear door child locks (3)
  • Roof rack (3)
  • Sun roof (3)
  • Programmed seat position (8)
  • Satellite radio (3)
  • Bluetooth integration (3)
  • Bike rack (3)
  • Power side view mirrors (3)
  • 1000 watt speaker system (3)
  • Fog lights (3)
  • Push button start (5)
  • Air conditioned seats (8)

In Progress

  • Hydraulic brakes (3)
  • Heated seats (5)
  • Power windows (8)
  • Power steering (3)
  • Parallel parking assist (8)
  • Power locks (5)
  • All weather floor mats (1)
  • Cup holders (1)

Since your initial backlog prioritization meeting, a handful of new features have been suggested by the team and stakeholders. You can even add in some of your own ideas at this point too. Get started by reviewing the stories from the New column and place them into priority order along with the other stories in the Backlog column. As you add the new stories to the Backlog column, feel free to reprioritize the Backlog column as necessary. It has been a few weeks — the features you and your stakeholders desire may have changed!

You have successfully prioritized your backlog and are ready for the next Sprint Planning meeting!

Continue to Lesson 4