Why Is It So Hard for Companies to Add Feature Requests to Software?
Written by Chris Picard
Chris explains to Melissa why getting a company to add a feature to their software is tough.
Can You Relate?
Submitting a feature request to support only to get an auto-generated message that says they will consider it but can’t promise it will ever happen.
If you have ever submitted a feature request for a large software product, website, or mobile application, you know it can take years to see that feature in the product. For example, we recently asked Honeybook for the capability to edit the signature line on our contracts or Square Space to allow us to change the site map. We received the generic message that they would consider our feature request, but it is not guaranteed to make it in.
Why is this so complicated?
It can be difficult to understand why this is the case for anyone who has never worked on these systems. This article will explain the reasons and discuss a unique solution.
Drawing Parallels to Construction to Explain Why It’s So Complicated?
When thinking about software systems, I always draw parallels to construction. Think of the large-scale software system as a skyscraper. Making changes to a skyscraper is much more challenging than making changes to a single-family home. For example, let's say you need to add an additional bathroom to one of the floors. In a single-family house, this is straightforward; you have a contractor add one and pay a flat fee. Now, let's look at adding a bathroom to a building. You would need to consider the entire building when making this change. Does the supply to the building have sufficient capacity? Does the floor below have a multi-billion-dollar data center that would not allow water above? These are just small examples to show that it is a significant effort even to make a relatively small change. Large software systems have the same concerns.
Concerns About Changing Software Systems
1. Changes can’t be isolated to specific clients
On top of the scale of what to consider when changing a software system, changes have some unique problems. For example, changes cannot easily be isolated to individual clients. They often impact most or all clients, causing rippling impacts even for the most minor changes.
2. A balance between profitability and happy customers
Another issue to consider is the profitability of the change. Because changes are costly, large systems prioritize the changes that will make the most significant profits to recoup the cost of the change as quickly as possible. This means your change may never be made if other changes come in that will be more profitable.
Considering all these factors, it is no wonder that large systems make few changes, which are time-consuming and costly.
What Can Be Done About This Problem?
If you are a small to medium-sized business (500 or less), the solution is easy: make every system custom for an individual client. I am sure some of you are saying that is not cost-effective. With many approaches, that sentiment is correct; however, with the proper approach, you can have all the benefits of these large systems without having the drawbacks. Our company has developed a unique approach to accomplish this goal. To learn more, check out our custom software page or contact us.