sprint goals meeting

Creating Sprint Goals in Agile Development: A Comprehensive Guide

Sprint goals are a crucial part of Agile and product development. It is an important step in the sprint planning process, as it helps to ensure that the team is on the same page and working towards clear, measurable objectives. This comprehensive guide will explain the different types of sprint goals, how to create them, and the best practices for writing them in Agile development. It will also provide helpful tips and tricks to help scrum teams get the most out of their sprints. With this guide, you can create meaningful sprint goals that will help your team stay on track and make the most of their time.

Types of sprint goals

Sprint goals are typically product related. However, it can also be related to people or processes. The best time to use people or process-related sprint goals is when it’s hard for your team to define just one sprint goal. This usually happens when you are working on a team that is enhancing a product and working on features or stories that do not correlate with each other enough for a product-related sprint goal. In agile, working on random features or features and stories that don’t correlate is frowned upon; however, it is very common in organizations that are enhancing a product and focusing on “Business As Usual” BAU work. 

Examples of Sprint Goals

Product-Related Sprint Goal: As a customer, I can schedule an appointment with an attorney.

People-Related Sprint Goal: As a team, we will bring new developers up to speed.

Process-Related Sprint Goal: As a team, we will not incur any technical debt in this sprint.

Sprint Goals

Sprint goals are objectives that team members should strive to complete during a sprint. It describes the purpose of the sprint. Sprint goals derive from bigger goals, such as release and product goals.

Before we create sprint goals, we must create the product goal and release goal.

product goal release goal sprint goal

How to Create Sprint Goals Related to Products

Step 1 – Identify the Product Goal

The product goal describes the purpose of the product. It describes the desired future state of the product that the scrum team may use for planning purposes. The product goal focuses on long-term objectives beyond a single release or sprint.

The product goal is a step toward the product vision and applies to the product backlog. It is the “why” for a product. The product owner owns the product backlog and, along with the stakeholders, sets the goal for the product.

Example of the Product Goal

The product is a client management system for attorneys.

Product Vision: To create an all-in-one client management system that streamlines the necessary but normally time-consuming tasks for attorneys

The current system is one-sided. Only attorneys can access and work from it. The new version will include a client portal so that clients can log in and access their files and documents. 

Product Goal: Help attorneys stay organized and connected with clients by allowing clients to access contracts, pay invoices, and fill out forms needed through a client portal.

Step 2 – Create a Story Map

Now that we know the product goal, we need to identify high-level features to make this goal a reality.

The best way to do this is to use a story map. A story map is a way to visualize the whole product as a series of steps that users take. This is called the User’s Journey. In a story map, the features of a product are broken down into user stories. User stories are laid out under features representing the user’s journey while using a product. Story maps are continuously built upon through collaborative discussions between stakeholders, users, and the scrum team.

Agile User Story Mapping

agile user story mapping example

The above is an example of a high-level story map. The story map is also used to create product, release, and sprint backlogs.

Step 3 – Identify the Release Goal

Now that we’ve created a story map, it’s time to identify and create release goals.

Release goals describe the purpose of the release, are typically broad and are not achievable in one sprint. The term “release” refers to packaging specific features for release or deployment to production. It is a version of the product that is actually shipped to customers. Ideally, when working in agile, the product can be released anytime. However, for practical reasons, this is only sometimes the case. Some customers are reluctant to install new versions weekly because rolling out new versions is costly and risky. Also, it could be tricky for the development organization to deal with too many releases in use.

A sprint is a one-week to one-month time box to do a chunk of work that will be part of a feature that would be part of a release. Sprint goals focus on the short term and on completing smaller tasks that contribute to the overall product goals.

The release goal is a step toward the product goal and applies to the release backlog. It is the “why” for a release. The scrum team (scrum master, product owner, and developers), and in some cases (this varies by organization), the tech lead, delivery manager, or technical project manager, own the release backlog and set the release goal together.

Release goals are normally based on one or more features. The product owner must order the product backlog in the sequence of valuable pieces to be built. Once the product backlog is sequenced, the team will use it during sprint planning to determine what to work on.

Assume the following items are prioritized in the product backlog:

  • As a client, I can schedule an appointment with my attorney.
  • As a client, I can log in, access, and sign my contracts.
  • As a client, I can log in and pay my invoice.

The team is going to release one feature per release.

Release 1: Appointment Scheduling Feature
Goal – The client can schedule an appointment with an attorney

Release 2: Forms and Contracts Feature
Goal – The client can access and sign forms and contracts

Release 3: Invoice Feature
Goal – The client can pay the invoice

Step 4 – Create the Release Backlog

The team is going to work on the Appointment Scheduling Feature

The release goal is “The client can schedule an appointment with an attorney.”

Assume user stories in the release backlog are:

  • As a potential client, I can schedule a free consultation without having an account
  • As a potential client, I can reschedule my free consultation without having an account
  • As a potential client, I can cancel my free consultation
  • As a client, I can log into my account and schedule an appointment
  • As a client, I can log into my account and reschedule my appointment
  • As a client, I can log into my account and cancel my appointment

Step 5 – Create Sprint Goal

You can facilitate this part of the sprint planning meeting in multiple ways. If you have a smaller team, it can be an open discussion. If you have a larger team, you can facilitate a 1-2-4-All exercise or any other brainstorming technique that works for your team.

  1. Have the scrum team review the release goal and the release backlog
  2. The scrum team considers the key results they need to accomplish each sprint to reach the release goal.
    When used correctly, each sprint goal represents one step toward the release goal. At this point, it is critical to focus on how each sprint goal enhances the lives of the end users rather than creating a list of outputs that may have little or no effect.
  3. Individually and in silence, each member should decide on what they think the sprint goal should be.
  4. Have the scrum team come together and share their thoughts and ideas. Use the voting technique if necessary.
  5. Choose the sprint goal with the most votes.
  6. Use the fist of five for further confirmation and confidence

As an example, the team decided that the sprint goal should be:

Sprint Goal 1 – Customers can schedule an appointment.

The team pulled in the following user stories:

  • As a potential client, I can schedule a free consultation without having an account
  • As a client, I can log into my account and schedule an appointment

The team chose this as the first sprint goal because the other user stories are dependent on an appointment actually being scheduled.

Sprint Goal 2 – Customers can reschedule an appointment

The team pulled in the following user stories:

  • As a potential client, I can reschedule my free consultation without having an account
  • As a client, I can log into my account and reschedule my appointment

Sprint Goal 3 – Customers can cancel an appointment

The team pulled in the following user stories:

  • As a potential client, I can cancel my free consultation without having an account
  • As a client, I can log into my account and cancel my appointment

overall example of sprint goals

How to Create People and Process-Related Goals?

People and process-related sprint goals are my favorite, and I learned about them from Dan Rawsthorne in my Advanced Scrum Master course at 3Back.

People and process-related sprint goals derive from sprint retrospectives.

  1. Facilitate a thorough retrospective
  2. After you have facilitated the retrospective, ask the team:
    • What do we want to improve on in the next sprint?
    • What obstacles do we want to overcome?
  3. If there is more than one answer, have the team vote.
  4. Choose the answer with the most votes and turn it into a sprint goal.
  5. Use the fist of five for further confirmation and confidence.

Best Practices for Writing Sprint Goals

  • Select meaningful sprint goals. Remember that team members will be held accountable to these goals, so they should be significant and relevant to the overall product or sprint.
  • If the goal is too large, break it into smaller, more manageable parts and spread it into smaller pieces into goals for future sprints. Remember that you are dealing with the unpredictable nature of humans — including yourself. Breaking a large goal into smaller parts will help to reduce the risk of burnout and improve accountability. 
  • Make goals realistic and achievable. Remember that you are dealing with the unpredictable nature of humans — including yourself. Setting realistic and achievable goals will help to prevent frustration, disappointment, and feelings of failure.
  • Don’t forget the “why” behind the goals. It is important to remember why you are setting these goals and how they contribute to the overall project goals. 
  • Make sure that everyone is on the same page. Once you have selected your goals, make sure that everyone is on the same page and understands their responsibilities.