Over a million developers have joined DZone.

Estimating the Unknown: Dates or Budgets, Part 1

· Agile Zone

Learn more about how DevOps teams must adopt a more agile development process, working in parallel instead of waiting on other teams to finish their components or for resources to become available, brought to you in partnership with CA Technologies.

 (Free Estimation Ebook)

Almost every manager I know wants to know when a project will be done. Some managers decree when a project will be done. Some managers think they can decree both the date and the feature set. There is one other tiny small subset, those managers who ask, “When can you finish this set of ranked features?”

And, some managers want you to estimate the budget as well as the date. And now, you’re off into la-la land. Look, if you had any predictive power, you’d be off somewhere gambling, making a ton of money. But, you do have options. All of them require iterating on the estimates and the project.

First, a couple of cautions:

  1. Never, ever, ever provide a single date for a project or a single point for a budget without a range or a confidence level.
  2. Expect to iterate on the release date and on the budget, and train your managers to expect that from you.
  3. If you get a ranked feature set, you can provide working product in the order in which your managers want the work done, while you keep refining your estimates. This has to be good for everyone.
  4. If you can say this without being patronizing, practice saying, “Remember, the definition of estimate is guess.”

First, remember that a project is a system. And, a system has multiple aspects.

Project Pyramid

If you’ve been managing projects for a while, you know that there is no iron triangle. Instead, there is more of a project pyramid. On the outside, there are the typical corporate constraints: Who will work on the project (the people and their capabilities), the work environment, and the cost to release. Most often, those are fixed by the organization. “Bud, we’ll give you 50 people, 5 months, and this pile of money to go do that project. OK?”

Whether or not it’s ok, you’re supposed to nod your head like a bobble-headed doll. But, if your management has not thought about the constraints, they may be asking you to smush more features in insufficient time that the people can accomplish, given the requested time to release, with the expected number of low defects in the expected cost to release.

The time to release is dependent on the number of people and their capabilities and the project environment. You can make anything work. And, there are delays with geographically distributed teams, lifecycles that do not include iteration with long lists of features.

This is why estimation of the budget or the time to release is so difficult.


Discover the warning signs of DevOps Dysfunction and learn how to get back on the right track, brought to you in partnership with CA Technologies.

Topics:

Published at DZone with permission of Johanna Rothman, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}