Search
Close this search box.
Search
Close this search box.
Search
Close this search box.

The Critical Difference Between Backlog and To Do (Kanban, Scrum)

Facebook
Twitter
LinkedIn
Pinterest
WhatsApp

When we build a kanban board to manage our work (either practicing Kanban or Scrum) we usually create a Backlog list (usually the first column) and a To Do list (following the Backlog). I’ve noticed that many times the separation between the two is artificial and people don’t always understand the critical difference between the two. I’d like to discuss it here.

The Backlog

The backlog is a list of things we think we should do, for many reasons (clients, our own needs, etc.). Moreover, it is prioritized, so things on the top are things we really really want (or need) to do while things at the bottom are probably fantasies that will never happen.

For instance, the backlog of an airport is all the flights and the backlog of a road system is all the cars that need to go somewhere. And the backlog of a development team is all the software that needs to be developed.

As stuff goes up in priority it becomes more concrete and more focused, shedding off redundant things, like a baby growing up and losing their baby fat. This process is called backlog grooming or backlog refinement. And still, the backlog is a list of things we want to do, we should do, we need to do – even the topmost items. Not more than that.

The To Do

The To Do is a list of things we decided to do now because we believe that we can accomplish them in high quality and timely manner. This is a big decision. Moving something from the Backlog to To-Do takes a lot of responsibility. You should consider it gravely. The hand holding the note, moving it from Backlog to To Do (or more likely, firmly grasping the mouse) should tremble.

Once you decide to do something, you want to do it very quickly. This is our cycle time. The shorter our cycle time is, the more focused we are, the chances for things going astray are lower, the chances for us changing our mind midway are smaller and many other good things – see Don Reinertsen’s book Product Development Flow for the full list. Mr. Reinertsen gives airplanes as an example. I’ll extend it a bit: airplanes should start boarding only when it is known that the airplane can freely taxi to the runway and then land directly without circling. Imagine how much time would be saved. And the same goes for traffic over a road. Imagine a system that could tell you when to go out of the house so traffic won’t be congested.

When the team has available capacity (or in Scrum during the planning meeting) the team makes this decision. The team decides they will do something. If they think it is not yet ready they should keep it in the backlog. Ready for what? Ready for the way the team machine knows to process stuff. The team calibrates the way they work and the stuff going into the machine should fit this. It is a matter of practice for the team to know how to better work together.

The same goes for an organization now planning to do something in the next quarter – once they decide they want to do it they should do everything they can to make it progress very fast.

Grooming

Of course, there’s a trade-off between how much you invest in an item when it’s in the backlog and later. Investing while it is in the backlog will increase predictability on one hand, but on the other hand, it will increase the number of things you do in parallel which results in less focus and more waste due to context switching. You need to find the right balance.

In a sense, knowing when an item is ready for development is similar to knowing when a fruit is ripe – read more about it here.

Breaking It Down

And what if something is really big? We can’t do it really fast, but we do it in small pieces, small pieces that make sense. We do it so that once we’re done with a piece we have something complete (even a draft) that can provide us with information on how to continue.

I found that, as I have a degree in procrastination, doing things that take very little time is a miracle. I lose focus very fast so if I want to complete something I need to complete it fast. But so does an organization, right? How focused is your organization?

Once you practice doing things very fast, in the required quality, you actually complete stuff.

Another advantage of cutting things down is that you are able to remove the redundant scope.

Mixing It All Up

The problem starts when we mix the Backlog with the To Do when things we should do somehow become things we do. People in a car want to get to their destination in the morning and immediately they start driving. Then we get congestion. Projects arrive at the company and we immediately start development. Then we get congestion.

But why does it happen? Why do we mix the Backlog and the To Do?

First, it is easier to just start. It is easier to manage. There is something you need to do and you just do it. It is easier to manage when you react. It is easier for every driver to go out of their parking and start driving rather than waiting for some sign to start driving.

Second, it feels much better to start doing things you should do. We are industrious people and when there’s a job to do we make a plan and start doing it. I remember as a kid I was told the best way to do homework was to do it the day you got it. It stands against our intuition not to start something we need to do.

We need to learn to make the differentiation between what we need to do, what we should do, what we want to do, and what we are doing, between the Backlog and the To Do. This separation will help us to focus on what we do, complete it when we need it, in the right quality, and eventually do more and better than we do today.

More to read:

The Professional Developer

Understanding the relationship between Kanban and the Theory of Constraints Critical Chain Project Management Approach

User Stories don’t belong in the Marketing Backlog

How Leaders can support and leverage the Scrum Artifacts

Agile Product Management​ (APM)

 

Subscribe for Email Updates:

Categories:

Tags:

Iterative Incremental Development
Software Development Estimation
chatgpt
Keith Sawyer
Lean Agile
Continuous Planning
Portfolio for Jira
Scrum Master
Agile and DevOps Journey
Agile Israel
AI Artificial Intelligence
LPM
Lean Agile Basics
Agility
Agile Release Planning
Certified SAFe
RTE
Limiting Work in Progress
Sprint Iteration
Certification
Kanban Kickstart Example
Scaled Agile Framework
Lean Startup
Kanban Basics
Quality Assurance
An Appreciative Retrospective
Kaizen
Introduction to Test Driven Development
Operational Value Stream
Agile Project
Agile Israel Events
Implementing SAFe
Agile Product Development
Agile Program
IT Operations
Value Streams
Program Increment
Professional Scrum Product Owner
Managing Risk on Agile Projects
Agile Delivery
Implementation of Lean and Agile
SA
Agile Mindset
Nexus and SAFe
Perfection Game
Jira
Built-In Quality
Agile Games
System Archetypes
predictability
Agile Outsourcing
Continuous Integration
Test Driven Development
Scrum
Jira Plans
QA
Slides
Applying Agile Methodology
LAB
Introduction to ATDD
Agile Development
Nexus and Kanban
Agile in the Enterprise
AI
Effective Agile Retrospectives
Legacy Enterprise
speed at scale
Agile Techniques
Video
Agile
Acceptance Test-Driven Development
Nexus vs SAFe
Professional Scrum Master
Continuous Delivery
Agile Marketing
WIP
LeSS
Agile for Embedded Systems
Advanced Roadmaps
Tools
Jira Cloud
ALM Tools
Daily Scrum
PI Objectives
Risk Management in Kanban
Manage Budget Creation
Pomodoro Technique
Sprint Retrospectives
The Agile Coach
Scrum With Kanban
Product Ownership
Managing Projects
Kanban
Large Scale Scrum
RTE Role
Coaching Agile Teams
SAFe
A Kanban System for Software Engineering
Lean Risk Management
Atlaassian
ART Success
Lean-Agile Budgeting
Rapid RTC
Agile Contracts Best Practices
Enterprise DevOps
Jira admin
Frameworks
Scrum.org
ATDD vs. BDD
ARTs
Team Flow
Games and Exercises
Continuous Deployment
Professional Scrum with Kanban
Agile Community
Agile Product Ownership
Agile Exercises
User stories
Presentation
Engineering Practices
Agile Project Management
Lean Agile Organization
Story Slicing
Development Value Streams
Nexus
Software Development
Scrum Guide
Scrum and XP
ROI
Agile India
AgileSparks
Scrum Values
Lean Software Development
DevOps
Product Management
lean agile change management
Lean Agile Leadership
Change Management
Agile Games and Exercises
Process Improvement
Spotify
What Is Kanban
Principles of Lean-Agile Leadership
Scrum Master Role
Agile Release Management
Agile Testing Practices
Continuous Improvement
Hybrid Work
Self-organization
Sprint Planning
Lean Agile Management
PI Planning
SAFe DevOps
RSA
Agile Assembly Architecture
Lean and Agile Principles and Practices
Covid19
Reading List
Kanban 101
SAFe Release Planning
Tips
GanttBan
SPC
ScrumMaster Tales
speed @ scale
Artificial Intelligence
Risk Management on Agile Projects
Amdocs
Risk-aware Product Development
Code
BDD
Atlassian
NIT
Releases Using Lean
Systems Thinking
Lean-Agile Software Development
Agile Basics
Lean and Agile Techniques
Kaizen Workshop
Elastic Leadership
Accelerate Value Delivery At Scale
Achieve Business Agility
ATDD
Business Agility
Entrepreneurial Operating System®
Kanban Game
System Integration Environments
TDD
Scrum Primer
Webinar
System Team
Legacy Code
The Kanban Method
Release Train Engineer
Lean Budgeting
Planning
Nexus Integration Team
EOS®
POPM
agileisrael
AgileSparks
Logo
Enable registration in settings - general

Contact Us

Request for additional information and prices

AgileSparks Newsletter

Subscribe to our newsletter, and stay updated on the latest Agile news and events

This website uses Cookies to provide a better experience
Shopping cart