Kate Oneal: Cost and Time are not Irrelevant
Some of Kate's Gang were chatting in the coffee room. They had been watching the Twitter stream about the "NoEstimates" movement. Most developers seem to hate estimates and The Gang were no exception.
Carlos said, "Eb Ikonne tweeted something yesterday referring to the idea that it's a waste to estimate work that's going to happen regardless of cost or time. I'm not sure if he was agreeing or not, but to me, that's so true!"
Gil said, "We should stop estimating all Susan's stories that we know she's going to ask for anyway. No, wait, we don't really estimate them now, do we?"
Susan looked up from her cards. "I don't need estimates any more. You guys give me about ten stories a week. I've learned how to guess how small they need to be for you to take them on, so that gives me a good enough sense of what I can get when I need it."
Carlos said, "Right, totally right. If you're going to do it anyway, the time and cost don't matter."
There was a BONK! sound and then the sound of the soda machine vending a can. There, wheeling up to the machine, was Kate. Her exercise ball was in her lap, and she had a big smile on her face. She grabbed her Diet Coke.
"Kate, did you just make the machine vend by throwing your ball at the button?" said Carlos.
"Maybe I did, maybe I didn't. It'll cost you to find out. Or you can wait to see if I do it again."
Carlos said, "How long will I have to wait? Will you do it for me if I need a soda?"
"Time is irrelevant if I'm going to do it anyway, isn't it?" Kate laughed.
Gil said, "What do you think about this NoEstimates stuff, Kate?"
"Well," Kate said, "since you guys are good at slicing stories, and since we can deliver an integrated version whenever Susan needs one, we don't need story estimates much. But I've always wondered: how do you slice them?"
Carlos said, "It's easy. We just won't take on a story that will take more than about two days to do. If it will, we split it."
Kate smiled. "How do you know how long it will take?"
Gil said, "Don't go there! It's a trap!"
Susan laughed. "It sure as heck is. 'This will take two days' is an estimate. The only way a team could really do no estimating would be if they took on any old chunk of work no matter what it was."
Kate said, "I wonder. When you bring in something that they think is too big, you work with the team to slice it. But don't you always insist on each slice having something in it that you understand?"
"Yes. Usually there's just one little bit of 'Feature' left in each slice, so I can see it as progress."
"Well, then, I wonder what would happen if we just took feature ideas and sliced them down until we couldn't make a slice that made business sense to you, Susan. Would that automatically size stories to a couple of days without actually estimating?"
Everyone thought a moment.
Carlos said, "It probably would for us. But would that work in every domain? Would it always come down to a couple of days or smaller? Could there be domains where the smallest bit of business value would take more than a couple of days?"
More silence.
Gil said, "I've written lots of different programs. We didn't always work as we do here; in fact we never did. But looking back, I think in software it might always work. We might always be able to produce a little kick in business value every couple of days."
Kate said, "I think so, too, though I haven't worked in as many domains as you have. But does that mean time and cost are irrelevant? I don't think so."
Carlos bit. "Why not? How could it matter if you're going to do the work anyway?"
"Well, what about cash, and outside events?" said Kate.
Gil said "I warned you: it's a trap."
Carlos paused. "OK, I get outside events. When we go to Agile 2014, Marketing kind of needs to know what they'll have to display. Or do they?"
Susan said "If it's just Catbird, no. We have the packaging and the posters, and whatever features are there we can write up at the last minute. I have a good enough sense of what we'll have. But what if we were working on a new product?"
Kate said, "Dogbird?"
"We won't call it Dogbird. I think that's taken. But whatever it was we'd need to know whether to announce at Agile 2014 or 2015. There's no way I'm going to pre-announce a product by more than a few months. So there's a case where we need to know something about time."
Carlos said, "Even then, couldn't we just slice it and count the slices?"
Susan said, "We could but that would be a huge investment of time, looking at detail we might never do."
Kate said, "Then there's the cash. We could start a product for a year out and be OK. But if it was two years out, that would be a lot of cash. A dev team here costs about a million dollars a year. Two million would be more than we could risk."
Carlos said, "That just means we need to deliver value before two years. That's part of what No Estimates is all about, finding ways to deliver value sooner."
Kate smiled. "Sure. But those ways still have to answer the question 'Can I get enough of this in less than two years'. If they don't, I still can't start. I've only got one year's worth of budget to play with. If I run it out, the money's gone and your kitties starve.
"I think it's fine to explore ways not to do estimates. But since we really do need answers on budgeting and synchronizing with outside events, then 'No Estimates' turns into something more like 'Maybe Not Estimates Sometimes'. I admit that's not such a catchy name."
Gil said, "Yes. It's like the feature lady. She comes to our feature store and buys whatever features we have. If in some week we don't have any, she can't buy any, and we don't get any cash. We forget sometimes, since we're on salary, that Dan has to write checks every month whether we sell anything or not."
"That's right," said Kate. "Dan has to pay out lots of money every month. If a new product takes six months to build, that's only about half a million. Only. If it's going to take two years, that's two million dollars."
Carlos said "Half a million here, half a million there, pretty soon you're talking real money."
"Exactly," Kate said. "So time and cost do matter, even if we're going to do something, because we could run out of time or run out of money before we get it done."
Gil said, "I see the problem. Maybe we can get by if we can just do a little work, relative to how much money and time we have, and then start bringing in revenue. But if it takes a lot of work, we could lose everything. So time and money do matter, and we do need to find ways of estimating how much."
Susan said, "Right. And then, once we decide to go ahead, we slice things down, do the most valuable things first, and look for ways to ship something."
Carlos said, "And if we can see a few small things that we're sure we can do and then get them out there earning, we can do that with very little risk. But that is an estimate, isn't it? It better not be just a guess, or we'll go out of business."
BONK! Clank! The soda machine spit out Carlos's favorite. Everyone looked at Kate, who was tossing her exercise ball from hand to hand. "There you go, Carlos. This one's on me. But you have to go over there to grab the can."
"Watch out!" said Gil. "It might be another trap!"