Feature creep is one of the most dangerous and insidious problems in software development. It is the silent software killer.
The problem with feature creep is that it often happens to teams who have the very best intentions. You start off with the right mentality; you listen to your users and their problems. You build the features they need. You iterate. You are Agile. You think you are doing all of the right things. But before you know it, your product starts to look a little like this:
How did you get here?
You built all of the features your users said they needed. That’s how! The paradox of feature creep is that by building all of the features your users say they need, you can create a product that is no longer useful.
What happens next is predictable. Your users start to complain. They call your product “cluttered”, “confusing” and “unusable”. Eventually, they switch to a competitor that is “sleek”, “user-friendly” and “intuitive”.
So, how could all of this have been avoided? In a previous post, I wrote about the importance of saying no. While saying no to all but the most crucial features is the best way to avoid feature creep, it can be useful to have a framework for deciding what to say no to.
Enter the Anti-Roadmap.
The Anti-Roadmap
Similar to a standard product roadmap, an anti-roadmap is a list of product features, customer problems, product themes etc. However, when you list a feature on an anti-roadmap, you are explicitly stating that you will NOT be delivering this feature.
Identifying features you will not be developing and problems you will not be solving has some big benefits when aiming to avoid feature creep:
It keeps you focused on your product’s core value proposition. By writing down all of the things you won’t do, you will develop a better idea of what you should do.
It helps you to avoid the feature-factory mindset. Putting features on an anti-roadmap can be very liberating. It helps you and your team to realise that “more features” isn’t always the right decision. Sometimes, the best way to help your users is by simplifying your current product experience.
Anti-roadmaps are a great communication tool. When customers and stakeholders request new features, you can point them to your anti-roadmap. Make sure to explain that the reason you have an anti-roadmap is because it keeps you laser-focused on the areas/features where you can provide the most value.
It sets a higher standard for new features. When considering new features to build, you now not only have to consider if they should make it onto your roadmap but also if they are even better than the features on your anti-roadmap.
Anti-roadmaps are a great teaching tool. Anti-roadmaps can really help when new people join your team. By understanding what your product is not about, new teammates will get a real understanding of your product ethos and your product’s core value proposition.
At first glance, the above list of anti-roadmap benefits can seem a little abstract . Let’s consider a practical example.
Not another note-taking app
Imagine you are building a new note-taking app. You’ve spoken with loads of potential users. Everyone talked about how clunky and confusing note-taking apps can be. How there are too many filters, labels and grouping features. Many people spoke about how they often give up on their note-taking app after a couple of months of use.
You think you have a unique angle on how to succeed in such a saturated market: Current note-taking apps are so focused on helping you to organise and group your notes while neglecting to help their users to take better, simpler, more actionable notes. You decide to build a product that focuses on better note-taking as opposed to better note organisation.
What might an anti-roadmap look like for such an app?
Not another note-taking app’s Anti-Roadmap:
Labels & Filters: We will not be building extensive organisational functionality into our app. No custom labels. No saved filters. Our focus is on helping our users take better notes, not be better at organising notes.
Reminders & Notifications: We will not be allowing users to set reminders and notifications. We are building a better way to take notes, not a better way to manage your tasks.
Checklists & Todos: Similarly, we will not be allowing users to record checklists, todos etc.
Advanced Text-Editing: Our goal is to help our customers take simple, effective notes. We are not building publishing software. Therefore, we will not be building advanced text-editing functionality such as font-selection, text colouring etc.
In reality, the above anti-roadmap would have a bit more detail. Nevertheless, it highlights how an anti-roadmap can help you to deliver the right value to customers and avoid feature creep. There are two very important things to note which will help you to create a useful anti-roadmap:
The features on the roadmap are potentially valuable to users. We didn’t list out things that are obviously bad. Each feature on the anti-roadmap could be easily rationalised as important and added to a roadmap.
The features are neither too prescriptive nor too generic. We didn’t call out any specific fonts that won’t be added to our text editor. However we also didn’t add something as generic as “We won’t be adding organisation-based features”. The items on your anti-roadmap should sit in that goldilocks zone where people can easily understand the high-level direction of your product while also understanding the specifics of what you won’t be focusing on.
What do you users actually want?
Anti-roadmaps aren’t a magic antidote to fixing your product direction and avoiding feature creep. It might still happen. But they are an incredible tool for helping you to internalise one of the most important truths of product development:
Users don’t actually care about features. They care about getting a job done, as simply and effectively as possible.
Sometimes, helping your users to get a job done means building features. But often it means making your product simpler, faster or easier to use. Most teams are so stuck in a feature-factory mindset that they forget this. Taking the time to create an Anti-roadmap might just help you to avoid the same fate.