Customisation - how much does it take?
Often we end up either as a software product developer or as a business IT leader or as a solution architect - "how much does it cost, one-time and every time"? There is continuous pressure in every business to keep IT costs down and down, as minimal as possible. What does it actually take?
If we can view this from an angle, there are 2 kinds of solutions - take it straight from the shelf and use it or customise to suit your needs. Thus you get 4 options from the quadrants.
- PURE PLAY PRODUCT: You take a system from the market and use it to your solution: you have to suit your business processes as how they are defined in the product. Sounds easy for a company that is just starting up. If you are already an established player, then this gets complex, but still is worth giving a thought. Your cost gets controlled, business processes gets streamlined across your verticals and horizontals, you get upgraded easily. A good option from cost perspective and also in standardising your business processes.
- CUSTOMISED: You grow your own solution, highly customised to suit your business needs. You then end up maintaining the software, you maintain people who know the software, retain them at any cost, train new people on the system, continuously spend money on upgrading or leave yourself behind the upcoming technologies - how often do we see companies unable to upgrade because of the fact that software is too much customised to their needs? On the other hand, your business will feel very easy to work with the system as the system works as per their processes. Finally it all matters how big is your pocket!
- HALF GROWN: You take an upcoming software, you use with little customisation!!! Who cares as at the end of the day this is no way near quality. But it can come free!!!
- RETHINK STRATEGY: You take a product from the market and customise it to suit your needs. And you ask the product developer to maintain it! Life of the developer gets miserable. A famous banking product running in 100+ countries highly customised to each bank has it own nightmare that never gets resolved. Upgrading a customer to a newer version means you upgrade all those customised code as well. You end up keeping a big team just to do that. Is that all? You end up developing your own tools to manage the custom components, end up training people, create a huge knowledge base, maintain the knowledge base --- all at the end of the day comes at a huge cost. Time to rethink the strategy.
"Finally it all comes to how much money can you afford and how do you want to sustain the cost. It always makes sense to rethink your business processes, and fit in line with the industry standards. Think on all angles including a key aspect of recruiting new people from the market to sustain your growth."
Migrating any software application is like performing open heart surgery when the heart is still running or repairing an aircraft engine when flying in it. Decide Wisely.