Allen Holub does a very good talk about
not using estimates for prediction.
In an agile context, there are far better ways of predicting how long things
will take. For example, predictions can be made through continuously working. As
we add stories to the product, and complete stories for the product, we begin to
see trends of when the completion dates will be. This is due to two
reasons.
I've been discussing agile concepts with various folk. Here's some of my
thoughts. Some of them are reiterations of things I've already said, but it
doesn't hurt to rehash important concepts. :D
Aside from scrum being a rigid process, and therefore not agile, adoption of
scrum is essentially adoption of a 20-year-old agile, where sprints are 2-8
weeks (like the agile manifesto says). But agile has evolved since then,
especially since the advent of DevOps.
Scrum, Kanban, &c. is a complete irrelevance. Most of these processes—and
some are useful—are orthogonal to agility. When a process is imposed or you
feel obligated to "follow the rules," they’re much worse, of course, moving
you in exactly the wrong direction.
Allen Holub on Twitter