20.5 Schedule Compression and the Shortest Possible Schedule


20.5 Schedule Compression and the Shortest Possible Schedule

After the nominal schedule has been computed, the question often arises, "How much can we shorten the schedule if we need to?" The answer depends on whether the feature set is flexible. If features can be cut, the schedule can be shortened as much as you want, subject to your willingness to cut features. This amounts to doing less work in less time, which is reasonable.

If the feature set is not flexible, shortening the schedule depends on adding staff to do more work in less time, which is also reasonable, up to a point.

Over the past several decades, numerous estimation researchers have investigated the effects of compressing a nominal schedule. Figure 20-2 summarizes the results of their investigations.

image from book
Figure 20-2: The effects of compressing or extending a nominal schedule and the Impossible Zone. All researchers have found that there is a maximum degree to which a schedule can be compressed.

The horizontal axis on the graph represents the relationship between the nominal schedule and the compressed schedule. A figure of 0.9 on that axis indicates a compressed schedule that takes 0.9 times as much time as the nominal schedule (that is, 90% of the nominal). The vertical axis represents the total effort required when the schedule is compressed or expanded compared to the effort required when the nominal schedule is used. A value of 1.3 on the vertical axis indicates that the compressed schedule requires 1.3 times as much total effort as the nominal schedule would require.

Several conclusions can be drawn from the graph in Figure 20-2:

  • Shortening the nominal schedule increases overall effort All researchers have concluded that shortening the nominal schedule will increase total development effort. If the nominal schedule is 12 months with a team of 7 developers, you can't just use 12 developers to reduce the schedule to 7 months.

Shorter schedules require more effort for several reasons:

  • Larger teams require more coordination and management overhead.

  • Larger teams introduce more communication paths, which introduce more chances to miscommunicate, which introduce more errors, which then have to be corrected. Lawrence Putnam has observed that the shortest possible schedule is also the point at which error production is the highest (Putnam and Myers 2003).

  • Shorter schedules require more work to be done in parallel. The more work that overlaps, the higher the chance both that one piece of work will be based on another incomplete or defective piece of work and that later changes will increase the amount of rework that must be performed.

Expert findings vary in the degree to which schedule reductions increase effort, but the experts all agree that it does. Specific tradeoffs between schedule and effort are discussed in Section 20.6.

Tip #92 

Do not shorten a schedule estimate without increasing the effort estimate.

There is an Impossible Zone, and you can't beat it If 8 people can write a program in 10 months, can 80 people write the same program in one month? Can 1,600 people write it in one day? The ineffectiveness of the extreme schedule compression in these examples is obvious. The endpoint—1,600 people working for one day—is absurd and easy to recognize.

Finding the limits of less-extreme schedule compression is a more subtle problem, but all researchers have concluded that there is an Impossible Zone, a point beyond which a nominal schedule cannot be compressed. The consensus of researchers is that schedule compression of more than 25% from nominal is not possible.

As Figure 20-2 illustrates, for a project of a particular size, there's a point beyond which the development schedule simply can't be shortened. Not by working harder. Not by working smarter. And not by finding creative solutions or by making the team larger. It simply can't be done (Symons 1991, Boehm 2000, Putnam and Myers 2003).

Tip #93 

Do not shorten a nominal schedule more than 25%. In other words, keep your estimates out of the Impossible Zone.

Extending schedule beyond the nominal schedule usually reduces total effort, if you reduce team size Experts have generally concluded that increasing the schedule beyond the nominal allows for a reduction in overall effort for the same reasons that shortening a schedule increases effort. A longer schedule allows for a smaller team, which reduces communication and coordination problems. It reduces overlap among activities, which allows more defects to be fixed "in phase" before they contaminate other work and cause more rework.

For an extended schedule to reduce effort, you must actually reduce the team size. If you simply allocate the same people to the same project fractionally instead of reducing the number of people on the team, you'll likely make matters worse instead of better, because of the issues discussed in Section 3.1, "Is it Better to Overestimate or Underestimate?"

Tip #94 

Reduce costs by lengthening the schedule and conducting the project with a smaller team.




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