Achieving Sustainable Predictability Chapter 4: Setting and Managing Reliable Delivery Commitments
In this 4-part series, we’re going to take you through a sneak-peek into the realm of achieving sustainable predictability. In the third chapter, we talked about how to use data-driven decision making to improve your business outcomes.
Today, I’d like to show you how to set and manage reliable delivery commitments that you can actually meet!
Welcome to the last chapter of the Sustainable Predictability series, where we will talk about what it really looks like to adopt a stable delivery system that enables you to consistently hit your targets.
The Importance of Setting Reliable Delivery Commitments
It is Thursday evening, almost 6pm and I’m finishing my working week. It’s been a long one!
I can hear my husband parking in front of our house. Two little devils jump out of the car, laughing and screaming in excitement.
“Mommy, mommy, I’m hungry, I’m hungry.” Great! There isn’t anything in the fridge that would take less than an hour to be prepared. And honestly, that’s probably the last thing I want to be doing right now. Ok, it’s pizza time!
So here I am, looking through the menu of the local pizza restaurant. Alright, I need pizza Margherita (if it has anything other than tomato sauce and mozzarella, they won’t touch it), and it needs to be here in less than 20 minutes. I read “20-min delivery guarantee”, oh wow, that’s exactly what I’m looking for!
Fast forward 40 minutes, and the pizza still hasn’t arrived. I’m quickly losing patience and tolerance as I watch the kids fighting over everything.
5 minutes later, the bell rings. I still give the delivery guy a tip. I’m pretty sure that it’s not his fault, plus I really care about the people who deliver the work (professional deformation).
Time for a retrospective. Am I going to order again from that restaurant? Absolutely not!
Don’t get me wrong, the pizza was fantastic, but that wasn’t enough. I needed them to deliver on their commitment and they failed to fulfill that need. Their service was not fit for purpose for me. They’ve lost me as a customer.
Your Delivery Time and Your Effort Time Are Not the Same Things
Our customers need predictability. They need to know that when they request something, they will receive it within a reasonable time, with a high degree of quality.
Making delivery commitments based on judgment or gut feeling is not reliable. We need an approach based on facts, rather than intuition, to be able to deliver on time.
Predictions based on effort, made either by counting hours (or story points), have the potential to land us in hot water, not only because they are subjective but also because they don’t take into account the time our work spends waiting in our delivery workflow. And the waiting time in the workflow usually represents anything between 60% and 95% of our delivery times!
Probabilistic forecasting is one of the most reliable approaches that we can take to answer the question “When will this be done?”. It is based on our past performance data, and it takes into account all the waiting time in our system. It is faster, cheaper and much more reliable than estimating.
Let’s look into the approaches to making a reliable delivery prediction for a single work item, as well as forecasting the delivery date of a project.
How to Forecast the Delivery Time of a Single Work Item
When it comes to making a reliable delivery commitment for a single work item, we use the Cycle Time Scatterplot.
This chart visualizes all your completed tasks as dots scattered on a plot. Each task comes with the finished date and the time it has taken to complete.
The horizontal dotted lines stretching across the graph are called percentile lines. We use percentiles to understand how much time we need to finish our work.
For example, the 50th percentile on our Scatterplot points to 2 days. This means that half of the tasks so far have taken up to 2 days to be finished. Now, we can say that there is a 50% chance of finishing any work item in less than 2 days. We also know that there is an 85% chance of delivering any item in up to 8 days.
Are we saying that the effort time needed to finish the work will be exactly 8 days? No, we aren’t. Are we saying that we will deliver in exactly 8 days? No, we aren’t!
What we are saying is that we commit to delivering the work in less than 8 days. It will probably take less than that, but it won’t take more than 8 days to be finished, and there is an 85% chance that we will hit that target.
How to Forecast the Delivery Date of a Project
To project the delivery date of multiple items, we use Monte Carlo simulations.
The simulation uses a large number of random trials based on past throughput data to predict the throughput for a future time frame. You define the start date and the number of tasks, and the simulation provides a range of delivery dates and the probability that comes with each date. For any date in the future, it uses the throughput of a random day in the past to simulate how many work items are likely to get done.
For example, let’s say on Sep 15th, you’ve delivered 3 tasks. The simulation takes this number and assumes that this is how many work items will be completed on Jan 10th. To project the probable throughput of Jan 11th, it takes the throughput of another random day in the past, and so on.
The simulation is repeated tens of thousands of times before the results are presented in the form of a probability distribution, with percentiles increasing from left to right. It provides a range of delivery dates and the probability that comes with each of them. The simulation produces a probabilistic forecast based on your past performance data.
In this example, we set a backlog of 40 tasks and we want to start working on it on Jan 10th. The simulation tells us that there is an 85% probability that we can finish all the backlog items by Apr 9th. The further you go in time, the greater the certainty of completing all the tasks.
Are we saying that these exact 40 tasks will be delivered by Apr 9th? No, we aren’t. What we are saying is that we can deliver any 40 work items by Apr 9th and there is an 85% chance of us meeting that goal.
You’ll add more tasks to the scope, you’ll split your work, and some of the rest will drop off. Now, it’s up to you to decide how to fill up the slots for these items to make sure that you deliver results that solve your customer’s problem.
Stable Delivery Systems Provide Reliable Delivery Commitments
Probabilistic forecasting enables you to make reliable delivery commitments using your own historical performance data. The question “When will this be done?” is not that interesting anymore. The charts already provide that answer. The question now becomes “How much risk are you willing to take?”.
Are you willing to commit to the delivery time that comes with the 50th percentile (which, by the way, comes with the same confidence level as flipping a coin)? Or would you like to commit with more confidence and go with the 85th, even the 95th percentile so that you increase the probability of delivering on time?
It’s up to you to decide upon the level of risk you’re willing to manage.
How much data do you need to get started? Whether you have been collecting data from the very beginning of your board creation, or you are just getting started with new teams, this is beside the point.
The main prerequisite of producing reliable forecasts is maintaining a stable delivery system. If your delivery workflow is optimized for predictability, you will need 20 to 30 completed items to come up with accurate results. It’s not about quantity. It’s all about taking control of your management practices and ensuring you deliver in a consistent manner.
In fact, if you don’t maintain a stable delivery system, nothing will work! You are better off buying a pair of dice and rolling them. You’ll come up with the same probability of delivering your commitment on time.
Now, it’s your turn! What’s the next small step you’ll take, as early as tomorrow morning, to improve the predictability of your workflows?
If your delivery system doesn’t produce the results you are hoping for and you’d like to explore the proven roadmap to optimize your workflows for predictability, I’d be thrilled to welcome you to our Sustainable Predictability program!
Meet the Author
Sonya Siderova is a passionate product manager and a driving force behind Nave, a Kanban analytics suite that helps teams improve their delivery speed through data-driven decision making. When she's not catering to her two little ones, you might find Sonya absorbed in a good heavyweight boxing match or behind a screen crafting a new blog post.