The Screwpole Emails- Fytte the Third
Uncle Screwpole goes into project estimating...
Uncle Screwpole, the devious master manipulator of IT projects, has promised his nephew Mugwort that he will reveal the secrets of time estimation…
From: Uncle Screwpole
Subject: “An unplanned project takes twice as long to complete; but a well-planned project takes three times as long.”
These indeed appear to be happy times for you. Your project manager’s payment engine project continues to spiral delightfully around the plughole. But it has not yet been flushed down the drain – there is more to be done, my nephew.
You say the manager’s clients have given him one last chance, and he has three months to deliver what the customer wants. Rather unfortunately, it seems your project manager has realised that time estimation is a problem. If you do not act swiftly and decisively, he will likely deliver something close to his client’s requirements and salvage his wretched position [<insert threat here> - It’s rather late and I’m becoming tired of inventing punishments for you].
Thankfully, he has already fallen into the classic trap: he has split the project into large individual tasks in a formal work breakdown structure, allocating these to developers and asking them to estimate the time it will take to complete the tasks. He naturally expects the length of the project to be the sum of all the estimates, plus a margin for risk, but does not appear to understand that humans are fundamentally awful at estimation when there is an unclear vision, as in your current project [Refer to my previous correspondence, Mugwort, for details on Newspaper-style projects].
Experienced project managers know that programmers always double their estimates - you must convince your manager of this truth. Cause him to overreact and squeeze any estimates so they are half the time originally. Also, remind your manager of the political machinations surrounding his project: if he completes the entire project in half the time he will surely receive glittering accolades from his customers; but we know he will fail to meet this ambitious goal!
The folly of rigid planning
While your manager does seem to have realised that planning is about dealing with the future, he has pleasingly misunderstood what this actually means. For effective managers, plans help them prepare for the future but are not entirely shackled to it, as changes will inevitably occur. So, support him in his desire to make a rigid upfront plan for the entire 3 months. Encourage him not to deviate from this plan; for him deviation should be a sign of weakness [If he begins to waver, tell him his team are starting to think he is a cross-dresser – he will certainly overcompensate and stubbornly protect his plan with an iron fist of unwavering masculinity].
If he had any sense, or was prepared to sacrifice his ego, he would realise that a more flexible approach would allow the project to meet changing requirements. And thanks to our servants the Scope Creeps, the span of any project is guaranteed to change. These small creatures love nothing more than to introduce inconvenient changes to projects. [You probably don’t know that the original estimate for the number of the beast was going to be 13, but after our little scope gremlins intervened it was finally delivered as a rather more bloated figure.]
Your manager must never realise that his salvation lies in completing the entire project through a chain of small stages. This would allow him to alter his plan regularly in the face of continuous scope changes. It would also reduce any anxiety in his customers as the team continued to deliver small changes that add actual value to the project.
An important point must be made here, Mugwort: never let your manager compare the time it takes to complete tasks in reality with the estimates he is being given by his staff. He will surely realise his estimation folly and make amends.
Remember, if a critical task is running late you can always exacerbate matters by encouraging your manager to throw more resources at it. Shovelling more people onto a task can be a very effective way of slowing things down even further.
The short-term planner
Learn from the tragic tale of young Slubgrub – a gifted demon once destined for great things. He was assigned to deal with a troublesome project manager, Ms Munson.
She had a particularly difficult project to manage and so made her release plan by listing requirements in the order of delivery to her client. Cunningly, Munson initiated a planning bow-wave, which was the undoing of Slubgrub.
With a general vision about where her team were heading, she dedicated her planning to tasks over two-week iterations. Her team were in charge of estimating the time for each task and, naturally, mistakes were made. But by monitoring the accuracy of previous estimates and using relative estimation points, the accuracy of estimates improved as the project progressed.
It initially appeared to Slubgrub that Ms Munson was spending very little time on planning. In reality, and it dawned rather too late on the young demon, she and her entire team actually spent around 10% of each iteration on planning – but dedicated more effort on continuously reviewing and amending the plan.
Over the lifecycle of the project, Munson actually did more planning than traditional managers – she just did less up front. Despite changes in scope, Ms Munson delivered the project on time. [I hear Slubgrub became a gibbering wreck – the only service he can now provide to the offices of Hell is making slightly threatening telesales calls to lonely women in the middle of the night…]
Alas, that is all for now. Follow my advice and this manager will be ours, my sweet relation. Maintain your concentration and, unlike proud Slubgrub, do not let over-confidence allow your manager to wriggle away from you.
Next time, I will share with you some of my experience on IT recruitment and how, in its most crude form, it can be employed to destroy IT projects…
Yours derisively, Uncle Screwpole.
With acknowledgement to CS Lewis’ "Screwtape Letters".
Phil Rice is CTO of software vendor Erudine