Estimating the Unknown: Projects or Budgets, Part 3

[article]
Summary:

You have options for estimation, once you have met the preconditions. If you don’t have the feature set in a ranked order, you are in trouble. That’s because if you use any lifecycle other than an agile lifecycle, the feature order matters to your estimates, and the team will discuss the feature order in addition to the size of the estimates. That will make your estimation time take longer and your team will not agree. It all starts to get stickier and stickier.

You have options for estimation, once you have met the preconditions. If you don’t have the feature set in a ranked order, you are in trouble. That’s because if you use any lifecycle other than an agile lifecycle, the feature order matters to your estimates, and the team will discuss the feature order in addition to the size of the estimates. That will make your estimation time take longer and your team will not agree. It all starts to get stickier and stickier.

When You Have a Decreed Date

It’s fine to live with a decreed date—that means you get to manage the features. Now, you have a choice. You can work in iterations or in flow (kanban). Let’s assume you work in iterations for now.

Use Timeboxes, Better Your Estimate as You Proceed

If you have worked on a project like this, with this exact team before, so that you can use this team’s velocity, go ahead and use this team’s velocity and estimate the entire backlog with the team. I would timebox this effort to no more than 2 hours total. It’s not worth spending any more time on it, because your estimate is bound to be wrong. Why? Because this is new work you have not done before.

This estimate is the first date you cannot prove you cannot make. This is your most optimistic estimate. It is not the most likely estimate, nor is it the most pessimistic estimate. Well, unless you are all Eeyore-type people, in which case it might be the most pessimistic. But, I doubt it. I would take that estimate, and say to my manager, “Here is an estimate that I have about 50% confidence in. I will know more at the end of the third iteration.”

The team tracks its velocity for three iterations and re-estimates the entire backlog again, and see what it has for an estimate again, and compares what it now knows with what it knew before. Now, you have something to compare. You now ask the team how much confidence they have in their estimate. Report that to management. Maybe they have 50% confidence, maybe they have less. Maybe they have more. Whatever they have, report that to management.

Repeat estimating the remaining backlog until you get to 90% confidence.

When You Have a Decreed Date and a Decreed Backlog

Some of you are saying, “JR, my manager has also decreed the feature set.” Fine. As long as your manager has decreed the feature set in rank order, you can make this work.

You still need to know in what order your manager wants the features in. Why? Because if you look back at the project pyramid and the preconditions in Part 1, several things can occur:

  1. Your customers/manager may not want all the features if you demo as you proceed
  2. Your customers/manager may not want to pay for all of features as you proceed, especially if you provide an estimate and demo
  3. You are getting dangerously close to having too many fixed constraints on this project, especially if you have a fixed number of people and a fixed working environment. Do you also have a fixed cost? You are in the danger zone! I can guarantee you that something will not be fixed once your management or customers see the number of defects.

Obtain Data First, Then Argue

If the manager has decreed the date and the feature set why are you estimating anything? Get to work! This is when using timeboxes or kanban and determining your true velocity and performing demos is useful to

About the author

Johanna Rothman's picture Johanna Rothman

Johanna Rothman, known as the “Pragmatic Manager,” helps organizational leaders see problems and risks in their product development. She helps them recognize potential “gotchas,” seize opportunities, and remove impediments. Johanna was the Agile 2009 conference chair. She is the technical editor for Agile Connection and the author of these books:

  • Manage Your Job Search
  • Hiring Geeks That Fit
  • Manage Your Project Portfolio: Increase Your Capacity and Finish More Projects
  • The 2008 Jolt Productivity award-winning Manage It! Your Guide to Modern, Pragmatic Project Management
  • Behind Closed Doors: Secrets of Great Management
  • Hiring the Best Knowledge Workers, Techies & Nerds: The Secrets and Science of Hiring Technical People

Johanna is working on a book about agile program management. She writes columns for Stickyminds.com and projectmanagementcom and blogs on her website, jrothman.com, as well on createadaptablelife.com.

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!

Upcoming Events

Oct 12
Oct 15
Nov 09
Nov 09