Business software often is hard to implement. That means it takes a lot of work to get it into a usable state after purchasing it. Sometimes this process can take years, which is not only very costly, but also risky as the whole implementation project might get cancelled. Here are some examples of big and troubled implementation projects:
- It took the German supermarket chain Edeka five years and 350 million Euro to fully implement an ERP software.
- Deutsche Post invested 345 million Euro, but never managed to successfully implement.
- Revlon - an American skin care company - managed to implement, but lost $64 million in sales due to production stoppages caused by the new software.
Difficult implementations aren’t limited to on premise software, but also affect business software sold as a service (a.k.a. cloud software). Just because a software is provided as a service, doesn’t mean that it is ready to use out of the box as business software often needs a lot of configuration to match the customer’s business processes. As customers don’t necessarily have the know-how to configure the software, they may rely on third party consultants. This can be problem in the mid-term: Once the configuration is done, these consultants will move on to new projects and a lot of know-how will be lost. If a customer encounters problems at a later point in time, it will be difficult for him to fix these as he doesn’t know his own configuration very well. This is one of the reasons why incompatible software changes which require configuration changes should be avoided. It is fine to add new features which require additional configuration, but everything which was already working needs to keep working. You should always keep in mind that customers use the software to solve a problem and are not interested in spending time on the software itself.
But why is it important that business software can be very difficult to implement? After all, customers still buy the software, right? That’s true, but what if you could sell your software at higher prices? You need to keep in mind that an easy to implement product is more valuable than a hard to implement one. Here’s a non-software example to illustrate this point: Let’s assume that you want to get into shape and decide to buy a workout program. Of course, just buying the program is not enough, you also need to implement it by sticking to it. Assuming that all of these programs are equally effective, would you prefer a workout program which requires you to train every day and to follow a strict meal plan or one which only requires three sessions a week and allows you to eat whatever you want? What about one that just requires you to take a pill every day? As you can see, the workout program becomes more valuable the less the buyer has to do. The same is true for software. If your software is easier to implement than your competitor’s, then you can charge more as both cost and risk decreases for the buyer. It will be easy to charge the customer more in licensing if the implementation is easy given how expensive big implementation projects are. This can give you an edge to conquer a market. But how can you minimize the implementation effort?
First, you have to minimize the complexity of your software. Business software needs to be flexible enough to fulfil the needs of heterogenous businesses and to handle the different legal requirements of countries all over the world. This combined with the inherent complexity of the problem the software solves creates a baseline complexity. You cannot reduce this complexity any further without making the software useless. You should strive to avoid any additional, accidental complexity which you add to the product by making coding and product design mistakes. Furthermore, the product should contain reasonable defaults and configuration templates which customers can use as a starting point in their implementation. For example, if most customers in a certain country have to configure the product in a certain way, then you should build a suitable template for this. It is important that these kind of configuration aids are in the software itself and not just hidden away in the documentation. In addition, you need effective tools to understand the system configuration (e.g., a tool to search the configuration for certain values). Otherwise, it will be very difficult to understand it in case something goes wrong. It is a great idea to use your own software and to pay close attention to all the pain points during the implementation. This way, you’ll know what to improve. Of course, any customer feedback on the matter is highly valuable as well and should be taken seriously.
Implementing business software can take a lot of time and cost a lot of money. Products which are easy to implement are more valuable. If your product is easier to implement than your competitor’s, you probably can increase your pricing. If you liked this blog post, please share it with somebody. You can also follow me on Twitter/X.