For accelerating business growth, CIOs plan to invest in enterprise software for simplifying routine, repetitive tasks. The right enterprise software can help foster employee productivity and enhance organizational agility.
According to Statista, global IT spending on enterprise software is expected to reach approximately $670 billion USD in 2022.
The first step towards building the right tech stack that is optimal for the business goals begins with deciding between build vs buy (i.e., choosing between building custom software or buying a commercially available SaaS product).
Specifically, the build approach versus buy approach comes down to:
-
- Building a custom software that addresses the exact functional and business requirements, nothing less and nothing more
Or,
- Buying a commercial, off-the-shelf, or SaaS software that solves the commonly prevalent business problems instantly
This write-up covers the major parameters that will answer should you build or should you buy software.
What is Enterprise Software?
Enterprise software is a type of software that businesses use internally to solve their everyday problems. In simple words, it serves the needs of the organization rather than that of its customers and clients.
Examples include a CRM, an inventory management system, a product information management system, or even an HR management system
What is Enterprise Commercial Off-the-Shelf Software (COTS)?
COTS or SaaS is ready-made software that solves common business problems instantly. The software has commonly defined features that satisfy the needs of its target audience and can be customized to a limited extent.
Enterprise COTS Example
Soaq is an enterprise video platform that aims to revolutionize corporate communications and boost employee engagement.
Net Solutions helped build Soaq, a product that got listed in Gartner’s list for cool vendors in 2018.
What is Enterprise Custom Software?
Custom software, also known as tailor-made or bespoke software, is built from scratch (in-house or outsourced) and solves the unique problems of a business.
Enterprise Custom Software Example
Net Solutions’ built a Power BI (Business Intelligence) solution that helped a client intelligently manage their inventories and leverage legacy data through data visualization.
How we built a fully functional dashboard for an eCommerce Giant?
10-Point Build vs Buy Checklist
The following are the essential parameters that help in making an informed decision between build vs buy:
1. Unique Problem vs Common Problem
What is a Unique Problem?
A unique problem is exclusive to an organization. There is no third-party software to solve it, which raises the urgency to custom build it.
What is a Common Problem?
A common problem is mutually faced across the industry. It is easy to find a third-party software that instantly solves the problem.
a. Unique Problem: Build
Build software from scratch when either the problem or the solution is unique.
Example: Basecamp was initially a web design firm that relied on emails for communication and collaboration. However, it didn’t work well for long-term projects. They tried a couple of COTS solutions, but they didn’t serve their needs well. That is when they decided to build their own project management app. It was the product’s internal success that led the team to launch Basecamp as SaaS later.
Questions to ask when deciding to build software:
- Are there any unique problems that the business is facing?
- Is the problem urgent and needs a solution immediately?
- Does the problem critically affect the business?
b. Common Problem: Buy
When a business is trying to solve a commonly occurring problem, choose commercially available software.
Example: Salesforce is commercially available software that helps manage customer relationships. This CRM software solves common problems such as contact and leads management for its customers. All a business needs to do is pay the annual or monthly subscription fee to get started with Salesforce.
Questions to ask when deciding between different COTS solutions:
- What are some of the best available software options to solve the problem?
- What software solutions do the competitors use?
- Does the feature set of COTS satisfy the business and functional requirements?
- What are the different pricing plans for the available options?
- Does the overall product and pricing plan suit the business size?
Build vs Buy: What is the Best Option?
Build if the problem is unique or There is a novel, out-of-the-box solution for an existing problem |
The problem is common, and software is readily available |
The long-term business plan involves monetizing the software | The available vendors can meet software requirements by up to 80% |
The problem and its solution contribute to the businesses’ secret sauce | The pricing plan and the features complement the business size |
2. Total Cost of Ownership (TCO)
What is TCO (Total Cost of Ownership)?
TCO is the sum total of the direct and indirect costs related to the software throughout its life cycle.
TCO of Building Software = Development Cost + Operation Cost
TCO of Buying Software = Monthly/Annual Cost + Operation Cost
a. TCO for Build
The cost drivers for calculating TCO of bespoke software include:
- Software Size: The higher the number of user interfaces, the higher the cost.
- Staffing: This cost of the in-house or outsourced team
- Complexity: Cost increases if the software requirements are complicated
- Feature Count: More features means higher custom software development costs
- MVP Development: The cost to build a minimum viable product
- UI/UX Design: The cost of the chosen design type including redesign costs
- API Capability: If integration with other software is needed, the development cost may increase
- Data Migration: The cost of migrating data from old software to the newly developed software
- Licensing: The cost to own, use, and access software
- Full-Scale Development: The cost of developing the fully-fledged software post the success of the MVP
- Cloud Infrastructure: Cost of deploying the software on the cloud for anytime-anywhere access
- Cybersecurity: The cost of building firewalls and security systems for the custom software
- Maintenance: The cost to fix bugs, introduce new features, and upgrade the software
b. TCO for Buy
The cost drivers for calculating TCO of off-the-shelf software include:
- Upfront Licencing Cost: The one-time cost to use and maintain a copy of the software
- Rent: The monthly, bi-annual, or yearly subscription that is paid to use the software. Some SaaS providers also set the pricing on a per-user basis, which scales with increasing users.
- Data Migration: The cost of data migration from the old software to the rented one
- API Integration: The cost of enabling API integrations and can be exclusively paid for each integration
- Training: The cost to train the workforce to effectively use the software
- Customization: The cost to tailor the software to address the specific business needs
Build vs Buy: What is the Best Option?
Scaling operations is a business strength as the aggregate maintainenance cost of software decreases with economies of scale | If it is reasonable to pay thousands of dollars for licensing fees, which are likely to increase with scaling |
The company has the funds to aid full-scale custom software development | If there are viable options in the market that solve the exact business problems |
A foolproof plan to manage time & cost overruns | The SaaS product has a low market risk |
3. Application Programming Interface (API)
What is an API?
An API (Application Programming Interface) is an interface that enables communication between two software applications and exchanging of data.
Real-life Example: Using Google Maps when booking a ride on Uber or placing an order on UberEats
a. Build for API-First Approach
Businesses supporting legacy software invest in new software that can smoothly integrate with the former. Often, the available COTS solutions fail to implement effective API integrations that aid the data merger between legacy and modern software. If that is the case, building enterprise software that follows an API-first approach becomes a prerequisite.
b. Buy When Pre Designed APIs are Available
When identifying potential COTS products, requesting a demo or a FAQs session with the sales team is helpful. Direct contact makes it easy to communicate and put the API-related queries upfront, such as:
- What type of API integrations are supported?
- Does the API integration work well with legacy software?
- Are there any case studies or demonstrated work related to smooth integrations?
If the answers are satisfactory enough, choosing to buy COTS is a good choice. On the other hand, if the integrations are not in the SaaS provider’s capacity, choosing to build is recommended.
Build vs Buy: What is the Best Option?
If off-the-shelf software does not support API integrations | API integration with traditional systems is possible, or if it is customizable |
The cost of manual integrations is high, and there is no roadmap for its implementation | The tech team is easily accessible to enable integrations for the software |
Development of customized APIs is required | COTS software has a foolproof plan to manage API security |
4. Opportunity Cost
What is Opportunity Cost?
The loss of economic benefits when one alternative is chosen over another.
a. Opportunity Cost of Build
The opportunity cost of building software can be high, especially when the development team’s time would be better spent on other tasks (e.g., research & development, managing technology, offering client support, managing operations, etc.).
Note: Outsourcing software development can minimize the opportunity cost while choosing to build.
b. Opportunity Cost of Buy
The opportunity cost of buying an existing software is comparatively low. The workforce can instantly gain access to the best off-the-shelf software that meets the business and functional requirements. The IT team can spend time and money on shipping code faster and managing the code’s integration, deployment, and delivery.
Note: If the business model is product-based, the core business activity is building and managing the software. In that case, building software is Hobson’s choice.
Build vs Buy: What is the Best Option?
There is clarity around what needs to be built | When looking for a negligible opportunity cost |
Access to a reliable outsourcing team is available | The off-the-shelf software solves major business problems |
The organization can take on and manage software development partners | Only interested in turn-key solutions |
5. Competitive Advantage vs Competitive Parity
What is Competitive Advantage?
A business achieves competitive advantage when they invest in software that allows leapfrogging competition.
What is Competitive Parity?
A business achieves competitive parity when they invest in software that offers same as that for the competitors.
a. Build for Competitive Advantage
To achieve a competitive advantage, building software that improves core activities’ performance is essential. The secret to unlocking differentiation is by investing in custom software that solidifies the USP.
b. Buy for Competitive Parity
To achieve competitive parity, investing in the COTS solution is recommended. The motive is to copy the tech stack of the competitors to win deals. However, the competitive parity is likely to lead to vendor lock-in (dependent on a third-party software provider), which can in turn lead to higher migration and operational costs.
Build vs Buy: What is the Best Option?
If the business wishes to gain a competitive advantage from building an entirely out-of-the-box solution or replicating software with added value | If the business wishes to achieve competitive parity and gain the same results as the competitors |
When solving a unique problem that needs a custom software | When solving a common problem that can be solved by available COTS solutions |
The aim is to disrupt the market and emerge as a market leader | When the business is in no position to take risks and have no bandwidth to afford software development failures |
Looking forward to avoiding vendor lock-in | When the vendor allows desired software customizations |
6. Scalability
What is Scalability?
Scalability refers to the capability of a business to handle the growing sales, given they have all the resources they need.
If a large-scale business invests in a software, it should be able to adapt to the changing needs without compromising on performance.
a. Scalability
No business prefers to tradeoff scalability for cost savings. Scalability is a virtue that is entrenched across these organizations of all sizes. If the shortlisted COTS solutions do not offer scalability, building should be a go-to option.
Unscalable
If off-the-shelf software is not scalable, the vendor sometimes promises to meet the business’ needs through SLAs or SLOs to facilitate customizations. However, when a vendor meddles with software’s architecture and code, the performance, availability, and upgrading capacity may take a backseat and cause technical debt to pile up.
I know it’s “funny” to blame “the cloud” for a lot of these scalability issues, but I will guarantee you it’s the software, not the infrastructure. You can put 1000s of machines behind the biggest pile of crap software and it’s not going to prevent scalability issues.
— Drew Marsh « drub0y.eth » (@drub0y) September 22, 2020
Build vs Buy: What is the Best Option?
None of the narrowed down COTS solutions are scalable | The COTS solution has a successful track record for handling scalability |
When there is access to a development team that is capable of writing quality code | The vendor understands the technicality behind the requested customizations |
When scalability is a measure of feature additions, performance, customer experience, and storage capacity. | If the vendor can manage scalability tests based on the following parameters:
Response time Network usage Request execution/second Screen transitions User expansion Easy Integrations |
7. Agile Methodology vs Traditional Methodology
What is Agile Methodology?
It is an approach to developing software that introduces flexibility and speed. Agile follows iterative and incremental development and promotes working in cross-functional setups.
What is Traditional Methodology
It is approach to developing software that follows a linear model. In traditional methodology, a particular development stage needs to be completed before moving on with the next stage. Waterfall development is a prominent example of traditional methodology.
a. Agile Methodology
According to the 15th State of Agile Report, 86% of the survey respondents have shifted towards Agile software development methodology. The primary reasons behind the move narrow down to:
A hands-on approach with Agile makes an organization mature enough to build custom software. On the other hand, if an organization is midway through the Agile transformation journey, reaching out to an outsourced software development team is a safer bet.
b. Traditional Methodology
According to the 15th State of Agile report, 35% of the survey respondents believe that their pervasiveness towards traditional development methods hinders scaling Agile development efforts. If an organization continues building using traditional software development methodologies, budget and project timelines are likely to be exceeded considering the engineering complexities involved. In this case, buying a COTS solution is a safe choice.
Demonstrating Power of Agile
Net Solutions helped IMG, a multi-billion dollar leader in brand licensing, build a workflow management system using Agile methodology. Initially, IMG supported a legacy system with an aging tech stack that was in need of modernization.
The objective of the project was to create a modern architecture that was both robust and scalable. The Agile development team rewired the entire architecture of the application from the ground up.
For an in-depth overview of the process, here’s our case study:
Build vs Buy: What is the Best Option?
If there is access to a trusted software development outsourcing partner that has experience with Agile development methodology | The vendor offers a continuous stream of value through fast bug fixtures and frequent upgrade releases |
The development team has Agile maturity and have rightly pulled off projects in the past | If the vendor can deliver customizations while ensuring faster time to market and quality delivery |
When the requirements are mostly constant and documented beforehand, waterfall development can be a go-to option | The vendor prioritizes innovation and is quick to adopt newer technologies |
8. Turnaround Time
What is Turnaround Time?
Turnaround time is the total time taken to fulfill a request or complete a process.
a. Turnaround Time for Build
Turnaround time for building software is certainly high. Building software requires going through the software development lifecycle (SDLC) stages. Moreover, turnaround time further increases as PoC, prototype, and an MVP all need to be developed.
If building custom software is preferred, the development team should be well-versed with Agile and DevOps practices to shorten the turnaround time.
b. Turnaround Time to Buy
COTS is more of a plug-and-play solution. If an immediate solution is required, buying off-the-shelf software is an excellent choice. Buying requires looking for available COTS solutions, shortlisting the right ones, scheduling demos, discussing pricing, and sealing the deal.
Build vs Buy: What is the Best Option?
The software is not immediately needed | The solution is urgently required |
Have access to a skilled and experienced Agile and DevOps team | Available COTS solutions solve the prevalent business problem |
If the COTS solution does not align with the long-term business goals | Test available COTS solutions to finalize requirements for custom software |
9. Control
What is Software Control?
Software control refers to the extent of modifications that are permissible to the users.
a. High Control
Businesses opt to build custom software to gain complete control of the software. The business owns the software and can tailor it to suit their exact needs. Moreover, they are the decision-makers when it comes to eliminating/adding new features.
b. Low Control
COTS solutions offer low control to the customers. The vendor is in charge and, no matter how good the software is, the customers have no access to the source code meaning they have to manage within the defined vendor constraints.
Build vs Buy: What is the Best Option?
Need full control over the software | The requirements match is around 70-80% |
The COTS vendor does not offer the level of customization needed | The COTS vendor explicitly defines the level of control in SLA |
Dependency is out of the equation | There is a lack of software development process maturity |
10. Data Security
What is Data Security?
Data security involves safeguarding proprietary data from all kinds of cyber threats and attacks.
a. Build Use Case
Sectors such as banks and healthcare deal with critical data and cannot give SaaS providers control over collecting, storing, and using customer data. Such sectors need software that can meet the industry standards around privacy and security. These standards include compliance with regulations such as:
- GDPR (General Data Protection Regulation)
GDPR is a privacy law applicable across the EU and EEA region. According to this law, the customers have the highest control over their personal data and no business holds the authority to share or meddle with that data.
The eight basic rights under the GDPR include:
According to a TrustArc report, only 20% of businesses are GDPR compliant. And, if the third-party software is not GDPR-compliant, it can lead to data breaches and high penalties.
- HIPAA (Health Insurance Portability and Accountability Act)
HIPAA is a federal law issued by the US Department of Health and Human Services that aims to protect patients’ health-related information. Any healthcare SaaS dealing with patients’ data must maintain that data’s confidentiality, integrity, and availability.
b. Buy Use Case
For businesses dealing with sensitive customer data, choosing a SaaS product can be unsafe. First, most of the third-party software is based on multi-tenant architecture where a single instance of the software serves multiple clients which causes the noisy-neighbor effect. Secondly, there is an ever-existent risk of losing critical data to cyberattacks at the back of the head.
In case a business still decides to evaluate SaaS products, here are some factors to consider:
- Request a demo with the shortlisted SaaS providers and ask questions concerning data privacy laws (such as GDPR or HIPAA) upfront.
What Questions to Ask?
- How will you handle the proprietary data?
- What level of control will I have over my customer’s data?
- Is the software aligned with required data privacy laws and standards?
- What cybersecurity best practices do you follow?
- Shortlist vertical SaaS over horizontal SaaS. Vertical SaaS is aligned with solving industry-specific problems. On the other hand, horizontal SaaS is industry-agnostic and serves several sectors at the same time.
- Ensure that the shared SLA includes details on how the SaaS provider will be dealing with customer data.
Build vs Buy: What is the Best Option?
Dealing with mission critical data | The SaaS product complies with data security laws and standards |
No COTS product satisfies data security needs | The software provider has a stable market position |
Priority is towards hosting the software on-premises or on a private cloud | The software promises to incorporate new privacy laws in the future |
Build, Buy, or Both? Unraveling the Best Path Forward
Businesses often find themselves on the fence when it comes to choosing to build or buy. The best path forward is to hedge the bets (i.e., a balance between build and buy).
The brainstorming should be centered around what to build and what to buy. Here’s a summary of which option to choose and when:
When to Build Software?
- Available COTS solutions cannot solve the business problems
- Software revolves around the core business and contributes to the secret sauce
- The business model is product-based
- The business plans to monetize software now or in the future
- Looking forward to achieving a competitive advantage
- Have access to an experienced software development team
When to Buy Software?
- Looking forward to solving peripheral business activities
- Software features match the requirements up to 70-80%
- Looking forward to achieving competitive parity
- If the COTS vendor offers the required customizations
- The shortlisted COTS vendors offer API integrations and safe data migrations
- If the chosen COTS vendor is unlikely to go out of business
Make an Informed Decision Between Build vs Buy
Request a free consultation with our experts today