How to create a Sprint Backlog

The sprint backlog is a list of everything that must be done to finish the Sprint. The Sprint Backlog provides additional context for the Daily Scrum by providing the team with guidance on what they should be accomplishing during the Sprint, beyond completing the work committed at last week’s Daily Scrum. A Product Owner prioritizes items in this list, removing any unnecessary items and adding new ones as necessary. The development team estimates items in this backlog so that their relative size can be compared objectively.

A good product owner will create a sprint backlog with just enough work to fill out the remaining days of your sprint plus perhaps one or two days more (this is roughly equivalent to “padding” your sprint). Padding ensures that if unanticipated work or obstacles arise during the sprint, you and your team will be able to handle them without having to go into overtime. It also helps avoid so-called death marches near the end of a sprint.

To create a sprint backlog, start by dividing your project into a list of tasks that you estimate to be roughly equivalent in value. In other words, the backlog should consist of stories or features within a story that can be sized similarly based on their relative complexity and business value. Determining which individual tasks make up a particular story is called decomposing work .

Different teams will have different approaches for estimating the size of each task (or story). When I was at ThoughtWorks, we used various combinations of ideal time , t-shirt sizing , and Fibonacci sequences to quantify our estimates. There are many other techniques out there as well—for example, planning poker [1] —and you may even pick up one or more new strategies from other members on your new team. When you begin to estimate new stories, don’t get too caught up in the exact size of a task—use it as a tool for planning and prioritization instead.

The definition of done is another useful tool for assessing work. The goal of any project is to deliver working software . Establishing criteria that determine when something is complete can help teams better assess how to break down large tasks into smaller ones that are more likely to be completed within the time allotted. For example, if you’re tasked with refactoring code that lives throughout your application, focusing on one section at a time (while ensuring all tests pass) may help expedite this process by avoiding digging up other areas while refactoring. Adhering to the “definition of done” is about accountability. It’s about ensuring everyone on the team knows what it means to deliver working code that can be maintained by future developers or upgraded by future-future developers (the next you, perhaps).

The definition of done may include delivering functionality along with value , but testing should definitely be included. Testing is often an afterthought in software development, however newer methodologies like Agile and DevOps are changing this pattern. The main reason for having a consistent criteria for testing is to reduce risk . When teams use consistent practices they are less likely to incur unexpected side effects as changes are introduced into their application.

While it’d be great if everyone adhered to the same standard of quality, it’s a common best practice to have a separate environment for continuous integration/delivery processes. Developers can have their own test environments they use on a daily basis, but another one exists for automated tests and quality assurance. In my opinion, this is the proper way of doing things as you want your CI process free from your developers testing databases and settings. That environment should be as similar to production as possible, with the exception of caching tiers not being accessible via the service tier load balancers.

Consequently sprint backlog items need to be approved by the product owner in order to get into this environment. This is not something particular to microservices, it’s just a best practice that can’t be ignored . The CI pipeline then runs all tests, builds the container images and pushes them out to your service registry of choice (can be Azure Container Registry , AWS ECR or self hosted with Helm especially if you’re on Azure). If everything goes well, it will deploy these services so new versions are available for testing. It doesn’t necessarily mean they are accessible right away though as there might still be some manual steps necessary before being able to use them.

Thus sprint backlog is at least in theory always up to date and developers can see if some story is already being worked on or not. The sprint backlog is always visible to all developers and other interested parties. For the one or two week sprint we currently use Trello (see above) and it works pretty good for us. We also use Pivotal Tracker but I don’t like their cards UI as much, so we try to stick with Trello which has a better look & feel in that regard at least for me personally.

The nice thing about the product backlog is that you get a nice list of stories that are not yet done and can easily see what’s already being worked on without having everybody constantly communicating what they’re doing.



Covid relief: Targeted, not lavish, credit works better, says CEA KV Subramanian

In contrast, capital expenditure that creates assets has a high multiplier of 4.5 and is, therefore, more desirable, Subramanian said. Reining in revenue...

Vale to pay $2.5 bln to settle liabilities in Mozambique mine corridor

Article content RIO DE JANEIRO — Miner Vale SA will settle in advance liabilities of around US$2.5 billion related to the project finance...

Pregnant Jessie J looks radiant as she shows off her baby bump in a tight white singlet in London

Pregnant Jessie J was positively glowing as she stepped out in London on Monday. The singer, 34, showed off her burgeoning baby bump in...

Celebrities you didn’t know were nepotism babies from Benedict Cumberbatch to Zoey Deutch

A host of celebrities have been wading into the row about nepotism babies after an fierce debate about those in the film and...

Prefix Sums and How They Can be Used to Solve Coding Problems

Prefix sums is a simple yet powerful technique that we can use to easily calculate the sum of a segment or an array....