While reviewing technological Digg‘s on my cellphone yesterday, I stumbled upon this neat article from Jacob Gube of Six Revisions about how to manage feature creeps.
If you’re in web development, you’ve been hit by feature creeps at least once. Quoting Six Revisions, the concept refers to “unforeseen requests for additions and changes that are outside the project scope”.
While many think it’s a “beginner’s mistake”, I know many pros who get caught every now and then, especially with certain clients who are more sympathetic and creative than others.
Gube outlines 8 tips for managing it :
- Accept that feature creep will happen. Because needs are dynamic, and that you can’t stop ideas – good or bad – from popping in everyones head.
- Commit enough time to requirements-gathering. Because the “beginner’s” cause to feature creep is planning on incomplete requirements, thus omitting important ones and the features that comes with it.
- Giving a hand might cost you your arm. Because good faith and good will is noble, but giving away features creates an habit with the customer, and on-the-fly feature evaluation often occults later stages of development such as quality assessment.
- Be the devil’s advocate when changes are requested. The stakeholders will come with the pros of adding the feature, but rarely the cons. Make sure they are aware of them.
- Be task-oriented, not vision-oriented. A vision oriented deliverable like “Building a web site that will be findable by search engines” is an open door to feature creeps. Task oriented deliverables like “Building a web site with a Google Sitemap, intelligent Meta tags, and clean & valid XHTML/CSS” makes everything clearer to all stakeholders from production day 1.
- Shed the “Customer is Always Right” mentality. Because he’s not. If he always was, he wouldn’t hire specialists like you and me.
- Research before committing. Know what a specific feature addition involves in terms of time. I can’t think of a better example than Gube’s one: Before agreeing to migrate a web site from your servers to the client’s servers, you should first research to realize that his are Windows IIS 6.0 based and yours are Linux based, and that the migration will most likely require modifications to the programming.
- Realize that feature creep is a two-way street. You forget, they request, you accept. Enough said.
Shall you want to read the whole article on Six Revisions, you’ll find it here.
Update (Feb 22nd, 11:47 AM): I mistakenly attributed the Six Revision’s article to Martin Kingsley. Credits corrected, thanks to the real author, Jacob Dube, for pointing it out for me. Martin Kingsley is the author of the little orange cards’ picture.
If you like this article, leaving a comment, tweeting ofr liking it is always appreciated.
Friday 22 February 2008 10:35 am
Hey Tommy,
Thanks the write-up! the author’s name is actually Jacob Gube. The lead-in photo featured in the article is by Martin Kingsley.
Excellent looking blog by the way.
Cheers,
Jacob