7 Kanban Forecasting Models You Should Be Aware Of
Kanban Forecasting In Short
Kanban is known as a system that can do forecasting without any human estimates. This is excellent since we as humans are quite terrible at estimating and forecasting. Certain techniques like Monte Carlo simulations are being connected tightly to Kanban, but there are a lot of ways and models to do forecasting when using Kanban.
It’s important to understand that, whether we are aware of it or not, Kanban forecasting is always done by following one of the possible models. If we get to know these forecasting models, we can take advantage of them and throw away everything that is getting in our way of success.
You might be struggling to do efficient and effective Kanban forecasting and if you are not using a good model, this may be one of the biggest reasons for your problems. There might be other things that are impeding you, like communication and various pitfalls, but tackle them only when you have found a good and effective way of forecasting.
Kanban Forecasting Models
As said previously, certain ways of forecasting are tightly associated with Kanban and you would expect most people to do forecasting in this way. This is true in theory, but reality differs quite a bit.
Through my work, I’ve seen people use various forecasting models in Kanban and I’ve managed to discern seven of them. They are all out there in the wild and you are probably using one of them. Each of them has its pros and cons and each of them fits one context better or worse and brings different results.
Building on the work of Troy Magennis, I’ve listed them below, beginning from the ones that take the least amount of time and give scarce results up to the ones that take the most time and give the most accurate results. Different things can work in different contexts. Here they are in brief:
1. Kanban with no forecasting
2. Gut feeling (Kanban) forecasting
3. Kanban forecasting using average throughput
4. Probabilistic forecasting in Kanban - Guesses
5. Probabilistic forecasting in Kanban - Guesses and Data
6. Probabilistic forecasting in Kanban - Historical data
7. Kanban whole system forecasting
Do keep in mind that the most important thing is that you are aware of the forecasting model that you are using. Because, if you are not using a model that fits your context, you are probably making things harder for yourself and the people around you.
So, let’s dive into these. If you see that you are using something that’s not on my radar yet, please do let me know – I’m super curious to hear about it.
1. Kanban With No Forecasting
Whenever you hear the words “What is a forecast?” or “It will be done when it’s done”, you should know that you are dealing with the first of the seven Kanban forecasting models. Truth be told, these forecasting models can be present in other systems and frameworks as well, but they are also found in Kanban.
This model can mostly be found within teams who are not yet familiar with forecasting or with certain individuals who had some (very) unpleasant forecasting experience and don’t want to forecast anymore. Reasons can vary, from spending too much time estimating and forecasting, to having senior people or management force the forecasting out of them, to having constant changes in plans while doing forecasting over and over again. And, of course, not getting the dates right in the end.
We need to take into account the lack of Kanban forecasting knowledge or these unpleasant past experiences so that we can navigate from there. This will help us a lot in understanding the model. And when we talk about Kanban forecasting, this is a zero-effort model, but it’s also a zero-gain model. If you are not making a forecast, you don’t know what the price tag is on the work that you are doing. So it might not even be a zero gain model, but a harmful and costly one.
For example, just think of each time that you want to buy something. What if you were not aware of the price and only when you get to the cashier you are obliged to pay the full price for what you have taken. Not a nice feeling now, is it? That’s one of the reasons why we need to forecast.
The other example might be if you want to meet with someone and that person tells you to wait until he/she arrives, but doesn’t tell you when he/she will arrive. How would you feel? How would you organize your time? How would you be in sync or be productive at all?
As we can see, this is the model that is fastest and easiest, but not useful at all. It’s like a war lost without a fight. If you are in this model, read on, there are far better options out there.
2. Gut Feeling (Kanban) Forecasting
The second (Kanban) forecasting model that I’ve come across is making a forecast based on a gut feeling. We are making these kinds of forecasts each day. When we do everyday things, we have a gut feeling concerning the time it will take us to do it.
Thanks to confirmation bias, we do not notice how often we are wrong with these forecasts. And if we were to track this we would soon be very surprised how often we get the forecast wrong. But we don’t do this, so many of us have the perception that we are just awesome at gut feeling estimating and forecasts.
Based on that, we unconsciously think that it’s quite easy and natural to use this skill to forecast work that needs to be done around us. What we also don’t notice is that it’s not the same to forecast the time to do a simple chore that we’ve been doing many times before and forecast a big part of work in a complex system.
The formula that is being used here is in essence “We feel that we can finish X amount of work by date Y”. For example - “We (think we) can finish these 5 features by the end of the quarter”, “(I think) It will be done in 4 weeks” or “This year, (we feel) we will add 12 more capabilities to our product”. As you can see, it’s not certain where these forecasts come from, nor if the forecasted scope is understood well enough, but it’s certainly good to ask how one comes up with these forecasts.
This forecasting model is also not too time-consuming, and you get at least some information that you and everyone else can work with. On the other hand, it’s still very questionable if the information you give will be in line with the final results.
If you are using this model, I would advise you that you keep track of your initial forecast and the final results. This can be extremely eye-opening. Whatsoever, you don’t even have to wait for the results if you have been doing this. Find your previous forecasts and compare the data. It’s mostly not a pretty picture.
What I see a lot is that people’s forecasts were very off. The dates differ by a lot, or the work that they have been committed to delivering was nowhere near the result. There are far better ways to forecast and to take into consideration many possible changes and impediments to a good forecast, so read on.
3. Kanban Forecasting Using Average Throughput
One of the more common practices in Kanban forecasting is taking the average pace of the team and using it as input for these calculations. By this, I mean mostly taking the team’s weekly throughput - the number of items that are done weekly - finding its average and dividing the work that needs to be done by this number.
A simple example would be that the team has 51 work items that need to be done and they need to forecast when they will be done. Their weekly throughput for the last five weeks was: 7, 9, 8, 5, and 6. If we sum these five numbers we get 35, and when we divide the number by 5 weeks, we get the average weekly throughput of 7. Now we divide the 51 work items by 7 and get 7.28 so we will give a forecast that we need 8 or fewer weeks to finish the work.
This is a typical Agile approach, where you either use average throughput (number of items done per week) or velocity (sum of story points done per sprint) and divide the total number of work items or total story points by that number. If you are using throughput, you have to count the number of work items that you want to forecast and if you are using story points, you have to have the total number of story points that you divide by velocity. Don’t mix these two up, you will get completely wrong results. And if you are wondering why I’ve warned you not to mix up throughput and velocity in the same calculation - People do that, yes.
In case you want to know if it is better to use story points or throughput, the short answer is that in most cases it’s much better to use throughput and the number of items. There are some cases where using story points would be more beneficial, but even those cases can be changed to the advantage of throughput if done right.
Kanban forecasting with average throughput is quite easy and fast to do and it’s better than gut feeling forecasting. There is just this one little downside to it – it doesn’t match reality. If you think you need to do exactly 51 items, you will be very wrong in most cases. There are going to be 50 items, 52, or even 102, but least likely 51.
Same goes for your throughput. You are giving a forecast like your team is delivering 7 work items each week, but the real data differs a lot. And there are periods where you are more productive and periods when you are not. Periods with new technology and new teammates and completely new types of tasks, and are not your averages.
It’s even worse if you are calculating your average based on the complete history of your team, which is something that a lot of online Kanban tools (not ProdGoal) do. You are probably not using some old programming language you used 20 years ago and the team has probably changed dozens of times. So, how does this kind of average make sense?
With this being said, in case you are using this model you are not on the wrong path. But you can still take a few more steps and use one of the best models that exist out there. And we are starting to talk about that model so let’s see what is up next.
Short Intro To Probabilistic Forecasting In Kanban
Probabilistic forecasting in Kanban is one of the best ways to do forecasting currently. If you want to take a deeper dive into the forecasting subject, I would recommend that you check out our other blog posts as well. If you just want to read the basics and see the model in action, you are in the right place.
Unlike other models that use singular inputs and give you singular outputs, probabilistic forecasting works with value ranges and gives you various results with different probabilities. What do I mean by that?
For example, instead of saying that your scope is 51, you can say that it will probably be from 45-60. And instead of saying that your throughput or velocity is 7, you can say that it’s from 3-9. There is uncertainty integrated into these inputs and this is much closer to reality than singular numbers.
Based on this kind of input, Monte Carlo simulation will give you a range of results and they will show you how probable the results are. So, for example, you can see that there’s a 5% probability that it will be done in 8 weeks or less, 50% probability that it will be done in 11 weeks or less, and 90% probability that it will be done in 14 weeks or less.
You will also get the whole list of different results with different probabilities and you can choose which one you want to use. Of course, it depends on the context. If you just want to do a quick and dirty forecast to see if something is even possible, then you can go with 50%. If you want a very reliable forecast, go with 85-90%.
Whatever case you choose, keep in mind that if you were to use the classical average approach, you would get 51 divided by 7, which is 7.28 or to be more accurate 8 weeks or less. Through probability, there would only be a 5% chance of this occurring. This example isn’t completely accurate, but it should at least paint the picture of the approach.
4. Probabilistic Forecasting In Kanban - Guesses
To sum up what was previously said - unlike other forecasting models that use singular inputs and give you singular outputs, probabilistic forecasting works with ranges and gives you various results with different probabilities. Why is this important and what does it have to do with guesses?
When you are doing Kanban Monte Carlo simulations, sometimes you won’t have all the right data. The scope of the work might be quite unknown to you, so you will have to go with a guess.
Hopefully it will be an informed guess and it’s better to have a range than to go with a single number. Ranges are more realistic since you won’t probably guess the exact number.
It’s the same with your delivery pace, be it throughput or velocity. Maybe you don’t have historical data because your team is new. Or your team has changed so much that the previous data is not relevant anymore.
There might be some new work coming your way and you haven’t done anything similar before. Or you might be using some new technologies so the old data can only create confusion. These are all cases when it may be better to use guesses than data, so be on the lookout.
One of the reasons that I see, and probably the main reason why people don’t use Kanban Monte Carlo simulations is that it’s just too difficult to get the right data out of the tool that you are using. It’s such a pain that people just don’t do it at all and quit at this first step.
Some tools solve this and ProdGoal is one of them, but we will get back to that later on.
So, Monte Carlo simulations used for Kanban forecasting can work with informed guesses, and you can always change those guesses along the way once you have new information. They are not bad and they are better than using old, non-relevant, or even bad data.
The thing with guesses is they are always a great start that you can return to when needed, but it’s always better to move to use reliable and good data as soon as possible.
5. Probabilistic Forecasting In Kanban - Gusses And Data
When using Kanban Monte Carlo simulations, there are certain situations where you have a mix of guesses and data, and that is normal and useful. This is a good and natural phase as you progress from your guesses to getting some data you can use.
The beauty of Kanban forecasting with Monte Carlo simulations is that it works with whatever data you have. But always remember that the final result is dependent on the quality of its inputs. And also remember that it’s just a different way of calculation that is still much better than previous models. So, even if it’s not right, it’s better than the rest and it’s worth doing.
With that being said, you will sometimes start with guesses and say, for example, we think our scope is between 45 and 60 items. And you will guess, for example, that your delivery pace will probably be from 3 to 6. Already with these inputs you can get the Kanban Monte Carlo simulation running, see the results and choose the probability that you feel comfortable with.
But even after one week, you can already include some data in these guesses. For instance, your throughput or velocity might have been 2. What does that mean? It means that you will go into the simulation and change the delivery pace to be from 2 to 6, with the number 2 being grounded in real data. This doesn’t mean that this data is fully reliable, but it’s still better than the guess you’ve made.
The same goes for scope. You can start working and find out in the same week that there is some big work that needs to be done before you can even start your work. This new scope can be estimated with a greater understanding of the rest of the scope, so you can change the scope, let’s say to 55 to 70. Again, this has at least a bit of foundation in data, it’s not only guesswork and it’s better than what you had last week.
As you can see, this is done very easily and without almost no effort at all. And it’s not done often, but maybe once a week. Also, it’s not something that you will need to do forever, but only until you reach the point where you will have enough relevant data.
Let’s see now how much data you need to have a good probabilistic Kanban forecasting with Monte Carlo simulations and if too much data can be bad for you.
6. Probabilistic Forecasting In Kanban - Historical Data
People usually think that you need to have a ton of historical data to do a proper Kanban Monte Carlo simulation, but that’s not right. Even if you have a ton of historical data, that is not good to use since it’s just old and irrelevant data that you are using to forecast something new.
So, how much data do you need? Believe it or not, to have enough relevant data for the Kanban forecast, you need only 7 data entries. After 15 entries, it’s better to delete the old data, because you always want to forecast with fresh data that is not tainted with the previous state of the team or some old work.
Most of the online Kanban tools out there take into consideration all data there is in your team. The good thing about this is that you don’t have to do this manually on your own and many people are already very satisfied with that.
What they don’t know is that this is quite bad for the Kanban forecast since the situation has probably changed quite a lot. In this way, you are using irrelevant data to create a forecast that you will communicate and commit to.
That is why some of the online Kanban tools, like ProdGoal, do this type of forecast automatically and free for you, thus you don’t have to think about it. All data after 15 weeks is not used anymore and you can always rely on the freshest results, effort-free.
To sum it up, the best case for probabilistic forecasting in Kanban using Monte Carlo simulations is to have historical data, and this will get you the most relevant results but only to a certain point. Strive towards using historical data as much as possible, but always be on the lookout if you may be using some old or irrelevant data.
One more word of warning and also advice before we move on. If you get in a situation where your context has drastically changed or is about to change, think about whether you need to return to using guesses in Kanban Monte Carlo simulations.
There are some times when bigger changes occur, for example, if your team changes a lot, if the work you get is completely new, or if the tools you are about to use are new, you might want to go back to guesses. And from there you can build your way to data again.
There are other things that you can take into account to make your forecast even more accurate, but this is a topic for another blog. With this, I would conclude the topic of probabilistic forecasting in Kanban and we can take a look at the last and most advanced model – whole system forecasting in Kanban.
7. Kanban Whole System Forecasting
The most advanced and the most accurate type of Kanban forecast would be a whole system forecast. This type of Kanban forecasting takes into consideration not only the scope and delivery rate but all possible inputs of the system and creates a simulation based on that.
Modeling the whole system forecast is done by automatic tools and with them not can only forecast, but also do some very interesting experiments. What do I mean by that? Well, for example, you can take into account the number of members of the team, together with the roles they have, and see what would happen if you were to add one more developer, designer, tester, or whatever role you have.
You can also see what would happen to your forecast if you were to have fewer people on the team or if you were to work fewer days and so on. There are tons of possibilities to model the whole system and not only to get the forecast but to also understand the system much better and see what are the most impactful actions you can take.
For example, this simulation can easily show you what role is in the biggest demand in your team or what would happen if you had more cross-functional team members. It can instantly show you a different forecast and how the system would function if you were to do so.
There are a lot of bottlenecks in the system upon which your forecast heavily depends and this kind of online tool can show you where the biggest bottlenecks are and how to get the most impact. It’s certainly worth it, but these kinds of tools are mostly just too old or too complicated to use.
On the other hand, it’s something that’s still worth playing with. We are thinking of upgrading the system in ProdGoal to do these things automatically but since it’s an enormous effort we are not sure if people will need it and use it. Let us know if you are interested in this. If we get enough people on our waiting list, we could make this very interesting thing a reality.
There are already some older consulting tools out there that do this kind of Kanban whole system forecasting, and they are very important as pioneers in this area. We have great respect for them, especially because of someone being so brave to tackle this super difficult topic and to create a tool that works.
There is a link about and you can find it and try it out. The only thing that we would add is that it is not a new tool and one person was creating it. Also, it’s difficult to create this and be understandable for the wider audience, so tread carefully.
With this being said, we’ve managed to encompass all 7 Kanban forecasting models. This is everything that I’ve managed to get in touch with during my career, but if you are aware of some other models, please feel free to contact us and share that. I would love to hear if I’ve missed something, so I’m looking forward to hearing from you!