Can the Team promise a date?
I think this is an important question.
To promise? Umm. What does a promise mean? Can Joe Namath promise a Super Bowl victory?
(He said ‘guarantee’… and, oddly, his Jets team did actually win it.)
Let’s say you have a fairly big project, that maybe requires 3 releases that happen every 3 months. So, overall, a 9 month product before it is ‘fully’ built. (IMO, no product is ever fully built; the customer always wants more.)
So, it is what I used to think of as a normal situation. Difficult at best.
To make it easy to describe, let’s imagine we are at January 1, and the releases need to be March 31, June 30 and September 30.
In this situation, can the Team promise on Day 0 (Jan 1) that the releases will happen on exactly those dates?
Well, maybe they can. In other words, they can say “We will release on those dates, and we can give some rough ideas today what the functionality will include, but it may change some.” I think they can usually or often say that.
Will change happen? That is about the only thing that is 100% certain. (Ben Franklin said death and taxes were certain, but Buddha said “Everything changes, nothing remains the same.”)
For certain, some bad change will happen. We will be disrupted. People will be ‘taken’ from us, in some form or another. Important features will be discovered later. (BTW, discovering important features is only bad when it happens ‘later’, and really only because it leads to an unexpected delay, and we have a weak mechanism for doing the customer trade-off between delay and the value of that feature.) Etc, etc. What is uncertain is how much ‘bad’ change will happen. But, we will certainly have some bad change.
If we are professional, we will also have good change. What is that? Well, we will learn. We will become smarter. We will remove impediments and become more productive. And, if we are generally professional, this good change is certain too. What is uncertain is how much good change we will have.
Can we make a useful prediction of the release dates for every product?
This is a very hard question, since no one can even imagine ‘every’ product. But it certainly sounds like the answer must be ‘no’. One can imagine situations of many unknowns, extreme change, etc, etc. We can issue a prediction, but, at least for those ‘hard’ products, it will turn out to have been useless or worse.
So, ‘useless’ predictions are possible, I think.
But, does the ‘fact’ (well, we posit it as a fact) that some predictions will be useless make all predictions useless? I think not.
How accurate does a prediction need to be to be useful? Well, I find most business people do not need that much accuracy. They completely understand risk and uncertainty. But they want some better information. Often they will say ‘can you get me better information than the competition has?’…. a very low standard usually, but when we say it that way, you see how they will use the information. They just want to improve their odds. The odds of success, and also the odds of not losing too much on a gamble.
Now, back to the Team’s point of view.
An estimate is not a guarantee (Joe Namath not withstanding). An estimate is an educated guess about the future. And, as any adult should know, to predict is difficult, particularly of the future. (That’s a variation on a quote originally in Latin.)
Can managers mis-use a prediction? Most certainly. And some people called managers have brutally punished the Team when their forecast was not accurate. This is not right.
Typically, managers should not even see the Day 0 prediction. But, after some small number of sprints (given something like a 9 month situation), most Teams should be able to give a reasonable prediction. It is never a guarantee, because something weird could always happen. But it is usually a useful business prediction, that can enable useful business decisions. Decisions by managers or decisions by customers.
If you are in the Team, when should the Team ‘issue’ these predictions? Well, that is a very hard question, that requires lots of judgment. It depends.
It depends on whom they are talking to. How much that person (that group) understands that things might change. How much we have learned. How much uncertainty this product has compared to others. How close it is to the release date.
There are many factors.
But, as a coach, can we in fairness suggest that Apple never tell the customers anything? Should we suggest that Apple actively deny any rumors about a future iPad? And say, ‘we have no idea when the next iPad might be ready?’ (Today Apple is expected to announce a new iPad.) Apple should never tell its suppliers when to expect to start building the new iPad. Never tell its managers when the basic development of the iPad might be done? (So that the managers could talk to the supply chain.) Clearly, in business, some predictions must be made. It is just required by business, by customers. If the company and ‘rumor’ does not make a prediction, then the people themselves will, and often a very wrong prediction (too early or too late).
And, of course, some understanding of the degree of uncertainty needs to be communicated, if the person can listen to it. Sometimes we use a percentage. Sometimes we use a range. Sometimes we use only non-denial of ‘rumors’. Or just words (‘we think it will be announced in the Fall of 2014’). But we urge you to help those you are working with (eg, help your customers) by giving them some sense of the degree of uncertainty.
The uncertainty can vary quite a bit, from one product to another, from one situation to another.
1. Be careful making predictions.
2. Sometimes bad things can result from making predictions. (Ex: Some teams have, to my horror, been forced into a Death March to make some ‘predicted’ date. Unbelievable that humans would do that, but it has happened and continues to happen, we think.)
3. Again, do not make predictions lightly.
4. You usually must make a prediction at some point. People will require it; it is the nature of life.
5. Try to assure that the person or people understand the uncertainty in every prediction.
6. Try to establish that a new and better prediction will be made later (when you are smarter).
7. Accept that life has risk. ie, Make a prediction.
8. Learn to make useful and relatively accurate predictions. The best way to learn that is to … practice. By making real predictions, and seeing how life turns out.
9. Never pretend that a prediction is a guarantee.