Sunday, December 30, 2007

Death By Feature

The Cutter Consortium, which has been analyzing data on software projects for many years, has found that an over aggressive feature list is the second most common reason for project overruns (the first is changing requirements). At times, trying to provide too many features actually ends up providing less (or none, in the case of a failed project).

Reducing the feature list is a key step in recovering a software project that is on the road to ruin. Paring this list to an acceptable minimum is no easy task. Reducing the list too much will produce a deliverable that is completely ineffective and serves no business purpose.

In the feature list reduction process, or more simply "goal reduction", is it essential to know who in the company sets the project goals. Any changes to the project's goals will require the approval of those who originally set them.

When reducing the list of goals to those deemed "essential", there are three basic categories to keep in mind:

  • Essential: requirements without which the project will have no real value.
  • Important: requirements that significantly improve the project.
  • Would be nice: requirements that add things such as attractiveness, ease of use, bells and whistles, etc.

Remember: the longer you wait to define realistic goals, the less you can actually deliver.

No comments: