3.4 Value of Predictability Compared with Other Desirable Project Attributes


3.4 Value of Predictability Compared with Other Desirable Project Attributes

Software organizations and individual software projects try to achieve numerous objectives for their projects. Here are some of the goals they strive for:

  • Schedule Shortest possible schedule for the desired functionality at the desired quality level

  • Cost Minimum cost to deliver the desired functionality in the desired time

  • Functionality Maximum feature richness for the time and money available

Projects will prioritize these generic goals as well as more specific goals differently. Agile development tends to focus on the goals of flexibility, repeatability, robustness, sustainability, and visibility (Cockburn 2001, McConnell 2002). The SEI's CMM tends to focus on the goals of efficiency, improvability, predictability, repeatability, and visibility.

In my discussions with executives, I've frequently asked, "What is more important to you: the ability to change your mind about features, or the ability to know cost, schedule, and functionality in advance?" At least 8 times out of 10, executives respond "The ability to know cost, schedule, and functionality in advance"—in other words, predictability. Other software experts have made the same observation (Moseman 2002, Putnam and Myers 2003).

I often follow up by saying, "Suppose I could offer you project results similar to either Option #1 or Option #2 in Figure 3-4. Let's suppose Option #1 means that I can deliver a project with an expected duration of 4 months, but it might be 1 month early and it might be as many as 4 months late. Let's suppose Option #2 means that I can deliver a project with an expected duration of 5 months (rather than 4), and I can guarantee that it will be completed within a week of that date. Which would you prefer?"

image from book
Figure 3-4: When given the option of a shorter average schedule with higher variability or a longer average schedule with lower variability, most businesses will choose the second option.

In my experience, nearly all executives will choose Option #2. The shorter schedule offered by Option #1 won't do the business any good because the business can't depend on it. Because the overrun could easily be as large as 4 months, the business has to plan on an 8-month schedule rather than a 4-month schedule. Or it delays making any plans at all until the software is actually ready. In comparison, the guaranteed 5-month schedule of Option #2 looks much better.

Over the years, the software industry has focused on time to market, cost, and flexibility. Each of these goals is desirable, but what top executives usually value most is predictability. Businesses need to make commitments to customers, investors, suppliers, the marketplace, and other stakeholders. These commitments are all supported by predictability.

None of this proves that predictability is the top priority for your business, but it suggests that you shouldn't make assumptions about your business's priorities.

Tip #10 

Many businesses value predictability more than development time, cost, or flexibility. Be sure you understand what your business values the most.




Software Estimation. Demystifying the Black Art
Software Estimation: Demystifying the Black Art (Best Practices (Microsoft))
ISBN: 0735605351
EAN: 2147483647
Year: 2004
Pages: 212

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net