How to Develop the Right Features With Limited Resources

Everyone in software development keeps a long list of suggestions and feature request in some file. But there are not enough hours in a day or a number of developers on a team to get them all done. That’s why we need to know where to focus and which features to develop. But there’s a much deeper problem.

We all (whether we’re product managers, marketers, or developers) think:

The number of features makes software better and helps sell it.

Except it doesn’t.

This sentiment is misleading at best, dangerous at worst. Just adding new features randomly and relying on a sheer number doesn’t make software better. Trust us. We’ve been there.

How We Used to Develop (Or Why We Had to Start From Scratch)

Our core company skill is development. We used to see ourselves primarily as a development company, and not a product company. Because we focused on development (thinking features sell software), previous versions of Active Collab were all about adding new features.

Active Collab 4 was the most feature packed release of them all — which, to our surprise, didn’t make our users as happy as we thought it would, and thus the sales didn’t grow as we expected it to.

Active Collab 4 was so configurable that you could do pretty much anything you wanted, but it came at a cost — the app was intimidating to new users. Once they got over the learning curve, it was OK, but getting them over was really hard, and many never returned to their trial again

Once we redesigned Active Collab and started fanatically focusing on user experience, we saw an immediate growth.

So making a lot of features isn’t good. But not improving software and adding things people need is even worse. That’s why developing new features takes a lot of balancing and tact.

We can’t just keep adding features without thinking how it affects the overall experience.

Add something new, and risk new users finding your software too complex; don’t add anything and risk existing users find something that better suits their workflow.

How We Design and Develop New Features Now

So we changed our product philosophy and the way we develop new features. Now we have a roadmap of upcoming new features and choosing them is a fine process:

  1. We gather feedback from our support channels (customer emails, forms, chat, social media) in a spreadsheet.
  2. We analyze the results and see how frequently each feature is requested.
  3. The product owner decides what to work on next.
  4. We have a meeting, discussing how the feature should work.
  5. The designer makes a prototype in Sketch based on meeting notes, while developers prepare an attack plan.
  6. Developers get the design and start developing.
  7. Once the feature is finished, it goes through quality assurance for bug fixing.
  8. When it’s released, support writes the documentation and marketing notifies people about the feature.

Read more about our development process on our blog, where we talked more about Gathering Feedback & Analyzing Results, Defining Scope & Design, and Development & Release.