What is refinement? Checklist for how to do things, examples of failures, and improvements

In agile development, refinement is also important in terms of organizing the product backlog and promoting communication between development teams.

The more mature the Scrum team becomes, the more the product owner (PO) and the team will agree on the recognition of each item of the product backlog item (PBI) in the refinement, and if there is a discrepancy in recognition, it will be resolved through discussion. You can progress development without delay.

This time, we will summarize the important refinements in Scrum from all perspectives.

Joe Justice

You can use “ points and checklist for refinement improvement ”  effectively!

What you can learn from this article

  • What is refinement? Can understand the outline and purpose
  • How to do refinment
  • Understand the importance and problems that can be improved by refinement
  • Learn examples of refinement failures and points to note
  • Understand the points and checklist for refinement improvement

What is Refinement?

Agile teams repeat short work cycles to complete increments.

This short period of work in agile development is a “sprint”.

The Scrum Team selects the work to be done in the Sprint from the Product Backlog.

A product backlog is a prioritized list of increments that must be completed during a project.

Refinement is about keeping this Product Backlog up to date so you can start working on it right away in the next Sprint. This is useful for misunderstandings between teams and for mutual understanding.

In Japanese, refinement is often referred to as “the activity of refining the backlog”. Refinement, sometimes called grooming, is the same activity.

Overview

Refinement is a team discussion centered around high-priority items in the Product Backlog .
Refinement is not an one-time effort, but an ongoing process among the team.

This means adding new items based on new discoveries, splitting large items into smaller items, and removing unnecessary items.

In this article, we will introduce what to check in refinement and common issues.

refinement

Purpose of Refinement

The purpose of refinement is to prepare the backlog for the next sprint.

Purpose of Refinement
  • Organize your product backlog
  • Promote communication

Organize your product backlog

The Product Backlog can be overwhelmed with complex information from many opinions. This can lead to project confusion. Keeping your backlog organized makes you more efficient

Promote communication

A unclear Product Backlog can lead to misunderstandings and negatively impact the project. A better Product Backlog improves communication within the team and keeps everyone on the same page about new features, bugs found, user feedback, and more.

Refinement Participants and Roles

Joe Justice

Ideally, all team members should participate in the refinement. 
Let’s take a look at each role.

Roles and tasks of product owners

The Product Owner owns and is responsible for the Product Backlog. Refinement is the responsibility of the Product Owner. Of course team members support the product owner.

Product owners start by having a product vision. Always discuss this vision with your team and all stakeholders.

Examples of Product Owner Responsibilities in 
Refinement

Below are examples of Product Owner responsibilities for refinement:

  • Product vision setting
  • Creating personas
  • Create and confirm the definition of ready
  • Definition of completion, preparation and confirmation of acceptance criteria
  • Create user stories
  • User Story Value, Size Estimation
  • User story prioritization

Scrum master role and what to do

The Scrum Master is about making sure everyone understands what was discussed in the refinement. The key to fostering understanding is to be transparent and teach where necessary. Also, check the questions and issues expected in the sprint planning.

Examples of Scrum Master Responsibilities 
in Refinement

Below is an example of the Scrum Master’s responsibilities for refinement:

  • Support Product Owner actions
  • Teach your team the importance and practice of refinement
  • Consider breaking large items into smaller units of work
  • Check the questions and challenges you anticipate during sprint planning

Roles and tasks of developers

Developers can share what they learned in previous sprints and get the information they need to prepare for the next sprint.

Examples of developer responsibilities 
in refinement

Below are examples of developer responsibilities for refinement:

  • Participate in and Understand Refinement Actions
  • Check for improvements from previous sprints based on learnings and findings
  • Estimate the size of user stories and see if they are feasible in a sprint
  • Consider breaking large items into smaller units of work
  • Identify questions and issues expected in sprint planning

What can refinement solve?

Joe Justice

Below, we’ll show you how refinements can help solve common team challenges.

The Common Challenge of Delayed Releases for Development Teams

Why does the development team’s release delay issue occur?
How can refinement solve this?

A common challenge for novice teams is poorly or ineligibly implemented requirements when reviewed. Items that do not pass review are put back in the backlog and will be run again in the next sprint. This results in delays and reduced team productivity.

Solution

Joe Justice

Let’s take a look at what causes delays and how refinements deal with them.

Poor or ineligible implementations can be the reason for delays, but why does this happen? There are several possible reasons.

[CASE1] Recognition gap within team

The product owner may “explain”, and the members who actually work may proceed with the work while “understanding”. This can be resolved with proper communication at Refinement.

[CASE2] Insufficient product backlog (user story) contents

The item to be made is not clarified. It may not have been sized correctly and not sized to be completed in a sprint. In refinement, the product owner needs to check each other from a business point of view, and the developer from a technical point of view, and it is necessary to make the product backlog appropriate.

[CASE3] Insufficient definition of completion and acceptance criteria

A definition of done is a list of criteria that must be met before an increment (artifact) is considered complete. It’s like a completion checklist. Normally, if these criteria are not met at the end of a sprint, the work is not considered complete.
Refinement should be pre-defined with a definition of done and, if necessary, item-specific acceptance criteria.

Why Refinement Matters

Refinement increases team efficiency by sharing knowledge among team members, but
what are the risks if refinement is not appropriate?

Risk of improper refinement
  • Without a common understanding, you run the risk of wasting time and money implementing the wrong thing, and rework to get it right.
  • If you don’t have a size for each item, you’ll either miss a sprint or misprioritize.
  • If the Product Backlog is not in order of priority, you run the risk of working on less important items or overlooking important ones.
Joe Justice

Agile guides the project to success by eliminating these risks through refinement.

Comparing Refinements of Experienced Scrum Teams and Less Experienced Teams

highly experienced teaminexperienced team
AttitudeProactive/Aggressivepassive and receptive
Consciousness/Recognition
All team members agreeThere is a gap in interpretation and recognition
ConcretenessDuring the refinement, the PO and the team firmly align the recognition of each item of the product backlog item (PBI), and if there is a discrepancy in recognition, it is resolved through discussion.It becomes top-down from PO to team members, and even if there is a gap in recognition, development starts without questions or discussions.

Refinement is the Product Owner’s responsibility, but this does not mean that the Product Owner decides and dictates everything. It is important that all team members participate in the refinement as parties to the project.

Main Refinement Methods and Procedures

STEP
Review product backlog and add/split details

The Product Owner introduces the Product Backlog item to the team. Developers freely ask questions about these matters and discuss them within the team, including from a technical point of view. Then refine and refine the Product Backlog items.

STEP
Estimate with points

The Product Owner introduces the Product Backlog item to the team. Developers freely ask questions about these matters and discuss them within the team, including from a technical point of view. Then refine and refine the Product Backlog items.

STEP
Confirm priorities and match recognition

Prioritize Product Backlog items. There are also different frameworks for prioritization. Typical frameworks include

  • Matrix of value and complexity
  • Kano model
  • MoSCoW method
Joe Justice

In agile, these frames are also utilized, and the whole team has a common understanding of why they are executed in this order.

Advanced preparation required for refinement

The Product Owner has a conversation with the customer about the backlog item and clarifies the item’s requirements. You should also be able to correctly explain why the item is important to your customer.

Examples of refinement failures

failure examples
  • Product backlog items are not complete and the criteria are not clear
  • Improper priority of Product Backlog items
  • Inadequate breakdown of Product Backlog items
  • Insufficient time to communicate during refinement
  • Inappropriate frequency of refinements
Joe Justice

These are common failure cases. 
Next, we will introduce examples of improvement and check items in refinement.

Example of refinement improvement

Joe Justice

Refinement improvement can be done easily, so I will introduce some examples.

Stabilized by templating product backlog items

Preparing Product Backlog items is a necessary task before refinement.

A mature team might be able to handle some variation in the level of Product Backlog items from development to development, but a less experienced team might find it difficult.

To get a more stable interpretation, it is also recommended to try to template the Product Backlog items.

Successful projects have lean Product Backlog items that are accurate at the time of the Product Backlog item.
It is recommended to use such product backlog items as assets and turn know-how into a template.

Review of refinement implementation time and frequency

If possible, I would like to hold refinement for 15 minutes every day and make it a routine.
By increasing the frequency, you will be able to confirm concerns about implementation and more specific implementation methods, and the development team may also actively ask technical opinions and questions.

Also, regarding the product owner’s requests, it will be possible to communicate more specific user stories and backgrounds.

For example, if it is held once every two weeks for 30 minutes, the items that can be checked are limited in time, so it tends to be a one-way confirmation from the product owner to the development team.

Try to incorporate refinement of a team that is doing well

If you are developing with a scrum team in your company, I think there is a team that is doing well.
If you feel that your own development team is not doing well, it is recommended that you try to incorporate the refinement of the team that is doing well as it will lead to good improvements.

Some team members may be reluctant to incorporate other teams’ refinements, but the development team is flexible enough to say, “Let’s try it first. If it doesn’t work, think about it again.” is necessary. Also, the lead of the scrum master will be important.

Refinement improvement points and checklist

Refinement should be done on a regular basis. An example checklist is shown below.

Use this to see if refinements need to improve the Product Backlog.

Checklist
  • Do product owners and team members agree on product backlog items?
  • Are there active exchanges of opinions and awareness between the product owner and team members?
  • Are Product Backlog items prioritized correctly?
  • Are there unnecessary Product Backlog items?
  • Are there any items that have been overlooked due to interruptions?
  • Are there any product backlog items that should be split up that will take more than a day to complete according to the man-hour estimate?
  • Are there any product backlog items that should be split up that will take more than a day to complete according to the man-hour estimate?
  • Is the capacity for the amount of work in one sprint appropriate?
  • Are there any changes or improvements to be made from the learnings of previous sprints?

Notes on refinement

Refinement is not just a matter of doing it.

Joe Justice

Note that Refinement is not the place to communicate Product Backlog items.

Originally, the purpose of refinement is to have two-way discussions, and to check if there is any discrepancy in recognition of product backlog items.

  • Opinions on implementation concerns and specific technical implementation methods from the development team
  • Opinions from product owners on acceptance conditions, user stories, response details, etc.

Refinement is a place to discuss opinions from both sides, not a place to communicate user stories, requests, and PBI contents from the product owner .

A mature Scrum team will be able to discuss specific topics on both sides in a two-way manner, but a young team will tend to communicate more.

By all means, it would be a good idea to check whether the purpose of the refinement has been achieved.

Refinement FAQ | Tell me, Joe!

Joe Justice
What are the important points in refinement?

Don’t forget to have fun! And we recommend doing it every day. I call it the Refinement Café, and every day we have a coffee in hand and spend 15 minutes refining as a team.
Also make sure that the highest priority Product Backlog items meet the “Definition of Ready”.
*Definition of ready: A list used to determine if product backlog items are ready to start work on.

Should Product Backlog items that cannot be completed in one day be split up? 
Do you have any criteria for splitting?

Consider splitting if possible.
First of all, let’s consider whether it can be divided so that it can be completed at the same time.
Please refer to the following for the division point of view.
1) persona
2) value (why they want to use the product) 
3) version (MVP, V2, V3, etc.)
A version of a product with features that provide useful feedback and demonstrations for product development.

But, of course, sometimes it’s hard to split. In that case, it’s okay to have a large item that straddles the sprint. It’s not a good idea to spend a lot of time on splitting up.

Should items with dependencies take precedence?

If there are dependencies, they usually take precedence. However, User Stories in the Product Backlog are mostly independent.
The Sprint Backlog may also contain tasks to complete larger user stories, and tasks may have dependencies.
An expert Scrum Master can rewrite the backlog to reduce or remove dependencies. Highly experienced scrum teams don’t use tasks, they work directly as user stories.

Summary

Refinement promotes communication among team members and may lead to new realizations. It’s a great opportunity to tap into the creativity and knowledge of the entire team. This may result in a lighter workload or better requirements resulting in an improved product.

In this article, a refinement checklist is also introduced, so check your own team first and make it a fun and rewarding refinement!

コメント

コメントする

CAPTCHA