Growing businesses are keen to utilize technology to make their operations more efficient and serve their customers better. This typically involves implementing a software solution to address this need. Most common operational tasks have commercially available SaaS software that can be subscribed to on a monthly or annual basis. Another option, although increasingly less common, is to purchase software and implement it on internal servers. Either way, there is a licensing cost associated with the software which must be considered in the decision process. Another option your organization may consider is building the software to meet your operational and/or customer’s needs. This option presents itself with a set of benefits and challenges. In this article, we present a few questions to consider before making the crucial decision that can have a lasting impact on your business.
1. Is This in My Strategic Interest?
One major benefit of building a custom software application is that you can build it to your exact business and operational needs without compromising on functionality. Your operational process flow can be implemented as it currently is, without the need for making adjustments to your business process. An additional key benefit of building a proprietary platform is the software can be amended relatively easily to accommodate changes in your company’s processes. The software can evolve with the organization and continue to provide a competitive advantage. Another strategic advantage is that the investment made in building the software will be treated as an asset adding value to the organization, which can make a big difference if the company goes through an acquisition. While these are great advantages, it should be noted that it is much harder to understand and document internal processes, requiring interviewing current and future users, studying the operations and creating detailed specifications. While this is a common process for an experienced software development team, it is not common for an organization inexperienced in product and application development. The amount of time, effort and cost required from all stakeholders can easily be underestimated.
When buying a pre-existing on-premise or subscription-based SaaS platform, you have little control over the product’s offering in terms of features, functionality, and process flows. Potential users of the software will likely have to make adjustments to the way they operate to effectively use the application. The extent of such adjustments will depend on how close the chosen software meets your business need. An advantage sometimes not given enough credit is that if the purchased software is well designed and has been in the market for a long time, you will benefit from the process innovations and mature business model the software will have incorporated over time. But if you need customization or changes to the software, you will be at the mercy of the software vendor or may need to hire another firm to implement the software for you. Your dependence on an external software application may become a strategic disadvantage when competing within your industry. However, if it helps your organization strategically, you can switch at any time to an industry leading commercial application that can give you a nearly instant advantage over someone that is saddled with expensive legacy internal software.
2. What is it Going to Cost?
Building new software is not a trivial task even for simple applications. Complex software requires a much more focused approach, requiring plenty of planning, and resources to create a robust function-rich platform. The range of skill-sets required are numerous and varied including, project managers, business analysts, architects, UI designers, usability experts, software engineers, and quality engineers to name a few. Top notch engineers are expensive and to assemble a high-quality team can quickly add up becoming expensive. Despite detailed planning, cost overruns are common owing to scope creep and underestimated effort.
If a subscription-based SaaS platform is available for what you need, there is an advantage that the initial cost outlay is much lower. However, the recurring expense is a long-term commitment. So the estimation of the total software cost should include the annual subscription cost times the number of years you plan on using the application in order to adequately compare the ROI with the build option. Common mistakes include calculating ROI on a lower-end subscription model that may not cover all required features for an organization, as well as the number of licenses needed. Additionally, as your organization grows, so will the cost of subscriptions, which should be factored into the budgeting analysis.
3. So, How Long Will This Take?
This is one of the more obvious downsides of choosing to build your own software. The time it takes to build software and make it production ready can be frustratingly long and is very often underestimated. The more complex the software the longer it will take allowing more chances to miss the planned timeline. However, the timeline can be reduced with better planning and assembling a larger experienced team. Planning should include the time it takes to assemble a large team as well as the time required for the team to start working together effectively achieving deadlines. The experience of your organization in standing up such teams will play a crucial role in determining the eventual timeline for launch of an internally built solution.
The biggest advantage to buying an existing software platform (e.g. subscribing to a SaaS based software) is the shorter time it takes to get up an running. If this is a critical factor in your decision making, buying an existing platform may be your answer. A few additional considerations include time for setup, time to possibly customize to fit your needs and time required to train new users.
4. What are the Risks Involved?
One can easily make the argument that there are more risks associated with this option and the reasons are quite apparent. Building software takes experience, skill, perseverance, and a commitment to succeed even when faced with great challenges. Capturing the requirements of what your organization needs in the software can be a daunting task. There may be many stakeholders involved supplying input or making requests of the application’s requirement. Getting the requirements and design right along with building the application close to what the organization truly needs can be a major risk. Building a scalable, easy-to-use, feature-rich, and secure software application is a challenging engineering problem laden with a host of big and small decisions that must be made in coordination. There are plenty of examples of large enterprises failing in their software development projects. So the risks of lost time, money and market opportunities are very real.
The risks associated with buying an existing platform is lower than building a new platform. Potential risks are more long-term and strategic, in that this could determine the competitiveness of your organization and ability for it succeed over time. If you select a stable , established commercial platform after careful evaluation, it can certainly get you up and running faster without great risk. However, long-term strategic value and competitiveness may also be at risk if your organization becomes dependent on third party software for the core functions of your company.
5. I Have Made the Decision, Now What?
Internally built software will require ongoing maintenance and continued enhanced feature development to support evolving business needs over time. On one hand, having your development team maintain the software will encourage your company to stay abreast of your specific business needs therefore staying more competitive. But that is a double-edged sword as you will have to plan for retaining a portion of the development team for as long as you need to operate the application. Frequent changes in technology will necessitate regular upgrades to your software to keep it current.
A big advantage in buying SaaS or even on-premise commercial software is that maintenance of that software is not your responsibility. Enhancing and keeping the software bug-free as well as competitive is the software provider’s responsibility and most of them have well-planned initiatives in place with an extensive release schedule along with a product roadmap to keep the platform current. In many cases, you may have an opportunity as a customer to provide input into the features included in their product roadmap. You may have the opportunity to interact with the user community of the product which could prove beneficial. However, not everything on your wish list may be accepted and there is risk that over time the product may stray from your core business needs.
As discussed in this article, the decision as to whether to build your next software application or buy a pre-existing commercial software platform is complicated. Several considerations outlined should be reviewed and discussed in depth within your organization including many stakeholders. In addition to the questions and considerations in this article, there may be other factors affecting your organization’s decision which must also be included. Developing a detailed checklist and decision framework is a good place to start your evaluation.