Saturday, 11 July 2009

Insistence on implementing 100% of the features before doing a release.

Work on the top 20% features. Quite often these features will give 80 % of what the end users want. They can get using the system far quicker and start adding to the profitability of your company.

What’s amazing is that these top 20% of features are often well known, easy to describe and test. Concentrating on these features can kick start your project. Keep the users closely involved as each feature is developed. When a useful set of features is fully ready do a release. Yes that’s right a release as soon as possible, let the system be used in a live environment. Design problems can then be caught at an early stage in the life of the application.

Develop some more features then do another release in a month or two. Doing this means that the users and business community do not get big surprises. More importantly they are not left with an unusable and unwanted system that cost you millions to produce.

When you have completed the first set of 20% of features, move on to the next set. In all probability, feedback from the users will cause the features to be altered in priority or not required at all. You’ll have saved a great deal of time by not have written a detailed set of requirements.

You also avoid the situation where so much time has been spent on gathering requirements, documenting and reviewing them, that they must be implemented no matter what. So even though the user has discovered that a feature is no longer needed, the momentum of the project means that it must get implemented. That really is stupid.

No comments: