Estimates Are Not Deadlines

Dr. Evil
A friend posted this image, and naturally, I laughed.  I shared it with other friends, and they laughed too.  That this situation was so widely recognized, however, made it cause for crying rather than for laughing.

Stating the obvious, estimates are not deadlines, and buffers -- proper spacing between milestones -- are needed for good  project management.  In practice, this advice is lost, and the result is bad software.

Failure to implement buffers ignores the unexpected: people leave, requirements change, a show-stopping bug is found. Without buffers, one unexpected problem cascades to all the milestones downstream.

Some project managers play it "close to the vest."  They really do have buffers in the schedule, keep them a secret, and hope the developers continue to work hard to meet the original deadlines.  The hazard here is that the developers will make (unnecessary) compromises to meet them.

"Do we have time to add an extra field in the database record for faster lookups?" 

"Wouldn't it be better to implement a server to assign unique sequence numbers?"

"Shouldn't we generalize this function so we can put it in our library?"  

In each situation, the developers won't even broach the subject with management because they believe the deadline is looming, and will thus implement the ugliest and most expedient solution.

Project managers hiding buffers is a sign a project is in trouble.  It also shows their lack of trust and their inability to communicate.  I recently wrote about The Mythical Man-Month, a classic book that explores why software is so hard, and that the solution needs what these managers don't have: trust and communication. If more project managers read the book, we developers would see less Dr. Evil and more Austin Powers.


DNS said…
how cool is this!
great pic of you in your profile too!

myself, fighting with SAFe right now... interesting and somewhat confusing - but better than most pm stuff..
Michael Yam said…
@DNS -- 😀 You inspired this post! SAFe-- I looked it up and it sounds cool. The Mythical Man-Month, being too early, only hinted at agile methodology, but it's a good thing.

Popular posts from this blog

MR2 Check Engine

Bookshelf: UNIX A History and a Memoir

Bookshelf Classic: The C Programming Language