Steps to avoid feature creep
- Create a list of features for the planned product version.
- Some people call this a specification.
- You know you can ship when the planned features are implemented and tested.
- Get product stakeholders approval on specified features before implementation begins.
- The agreement on specified features helps everybody (developers, testers, sales, marketing, customers) know what the product is supposed to do when it’s done.
- Create a feature wish-list to collect suggested future features.
- The key to avoiding feature creep is to prevent the features from sneaking into the existing product specification.
- Implement only the features that were agreed on for a planned product version.
- Even though it’s tempting to include little features, DON’T DO IT.
- Once you let a feature sneak in through the back door, they’ll bring their friends.
- Before you know it, the product will be over-time, over-budget, and out of control.
- Add new feature suggestions to the feature wish-list.
- The most important thing to avoid is a product mutation.
- Ship the intended product version
- If you stay focused, the intended product version will be released, then you can add new features
- Evaluate the feasibility of suggested features
- Some features might be “pie in the sky,” and might not be worth the time and effort.
- Other feature requests are “no brainers,” everybody sees the added value, it just makes sense to make the effort.
- Repeat steps 1 through 7
Questions:
- Does this mean that you ignore new feature requests until a product has been released?
- If a new feature is essential to the success of a product then what do you do?
Notes:
- Be very careful when considering the addition of any new features.
- Any time you are adding a feature to a planned project you should modify the product version to reflect the fact that it has been changed.
- Any change should require stakeholder approval to ensure everyone understands the updated specifications of the product.