Late Project: Feature Cuts

Feature-set control continues to be important through the end of a project. Even if you were successful at specifying a minimum feature set up front and controlling changes through the middle of the project, for a variety of all-too-familiar reasons you can still find yourself behind schedule at the end of the project.

By the time you reach that point, one of the most potent schedule-reduction options is the elimination of low-priority features. This practice is effective because it eliminates effort associated with further implementation, testing, and documentation. This practice is in common use at Microsoft, where it has been found to be an effective means of reigning in late software projects (Cusumano and Selby 1995, McCarthy 1995b).

The drawback of this practice is that by the time you reach the end of the project, you've probably already done the design work and part of the implementation and testing for the features that you cut. You might even have to do some small amount of work to remove the feature—strip out unused code or disable it, remove test cases that exercise the feature, remove documentation that refers to the feature, and so on. If you plan to release another version of the product, this is only a small problem because you'll eventually use the work that you strip out or disable for the current version.

For maximum efficiency, start with a scrubbed requirements document, design and implement the features you know will be in the product, and then add lower-priority features if you have time. Don't waste time working on features that will be cut later.

If you don't think you can live up to that ideal, then plan ahead for the eventuality of cutting features late in the project. Use a lifecycle model such as evolutionary prototyping, evolutionary delivery, design-to-schedule, or design-to-tools that supports late-project feature changes.

CROSS-REFERENCE

For more on development styles that support late-inthe- project changes, see Chapter 7, Chapter 7.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.220.202.209