Guest Column | August 20, 2019

Controlling Feature Creep

By Nicole Hitner, Exago

Understanding-Clinical-Research

I expect many of you are familiar with the classic children’s book If You Give a Mouse a Cookie by Laura Numeroff. It inspired a whole If You Give… series, including such favorites as If You Give a Moose a Muffin and If You Give a Pig a Pancake. For those of you who don’t know it, the story begins, “If you give a mouse a cookie, he’s going to ask for a glass of milk. When you give him the milk, he’ll probably ask you for a straw.” One action triggers the next, sending the main characters down a slippery slope on a dizzying series of tasks that lands them right back where they started.

Features can be a lot like cookies, don’t you think? If you give your customers an export button, they’re going to ask for a new export format. When you give them the new export format, they’ll probably ask for the ability to set that format as a default...and on and on it goes.

No software company is stranger to feature creep. Even the most vigilant product teams will sometimes feel compelled to add extraneous features or overextend existing ones. More and/or bigger features doesn’t sound like a bad thing until it starts draining your resources, causing you to miss your release dates, creating technical debt, and hurting your user experience. Then it sounds very bad indeed.

Feature creep can be difficult to solve even when you see it happening. Perhaps you’ve agreed to build a feature for a particular customer, but the customer keeps adding to the scope of the project. How do you combat creep while also satisfying your service-level agreement (SLA) and maintaining the customer relationship? Or maybe you design an enhancement, thinking it will satisfy 80 percent of use cases, but discover in user testing that it will need to be expanded considerably to hit that target.

Understanding how and when your product team is most prone to feature creep is the first step toward mitigating it. Zero in on those problem scenarios and apply the rules of thumb below as you create processes to protect your product.

1. Stick To The 80/20 Rule

Do your best to satisfy the majority of use cases with each new feature. It won’t always be possible to hold to this ideal, but it’s a worthy goal. This not only helps keep your product lean but also helps ensure that you invest resources in features that will yield the highest returns.

Keep in mind that the 80/20 rule is about meeting user needs now as well as in the future. Don’t be so focused on satisfying feature requirements that you gloss over details integral to the product’s long-term health. Exago Product Manager Alex Agoado says, “It's difficult for product teams to have a mindset for factors like UX, performance, and stability because they are not always explicit requirements and thus not always granted first-class consideration in design.” So take extra care not to sacrifice quality on the altar of expediency.

2. Re-Evaluate Your Roadmap

Refining and restructuring your roadmap is essential to controlling creep. It’s normal for priorities to change over time, and stubbornly sticking to old plans never serves. Stay flexible by building buffers and contingency plans into processes impacting product development — things like SLAs, sprints, user testing periods, etc. This way, when the market shifts, you can respond accordingly.

3. Communicate With Stakeholders Early And Often

When it comes to feature design, you really can’t have too much communication. Don’t stop at the initial feature definition — keep both internal and external stakeholders up to date as the feature takes shape. Keeping the paths of communication open helps ensure that you meet requirements while also giving you the opportunity to triage any additional requests that crop up. Perhaps some of them are fit to be added to the feature’s initial release while others are so tangential to the product’s mission that they’ll likely never be introduced. Remember, feature suggestions don’t cause creep — lack of oversight does. Think of clear communication as the practice of keeping your eyes open.

4. Prune

Cull away features that no longer satisfy the 80 percent majority and can be eliminated from the product’s code base without throwing customers into turmoil. In short, find the dead weight and cut it so that you have less to test in QA and more space to add new, more valuable features.

5. Protect Your Core

Your product core is what defines and differentiates your offering, and while it may occasionally change or expand, it should generally be constant and universally agreed upon. The better your team understands the product’s core, the more easily they’ll be able to protect it. “Don't abandon the core business to chase other markets,” cautions Agoado. You want to grow your market share gradually, not play market segment whack-a-mole. Tempting as it may be to go after new revenue with a new feature set, it’s your existing market that’s keeping you afloat. Maintaining that foundation is essential to your company’s survival.

Follow these guidelines, and you will be able to respond to market pressures rather than react to them, safeguarding your product while conserving resources and generating trust among stakeholders. Veering from that path puts customer trust in jeopardy, and we all know what a slippery slope that can be.

About The Author

Nicole Hitner is Content Strategist at Exago, Inc., producers of embedded business intelligence for software companies. She manages the company’s content marketing, writes for their blog, hosts their podcast Data Talks, and assists the product design team in continuing to enhance Exago BI. You can reach her at content@exagoinc.com.