Build Versus Buy Systems

Ensuring that your business receives the benefit of long-term adaptability

Sponsored Content by QCI

Build Versus Buy Systems

There are two quite different approaches to gaining a new system: build versus buy and introduce vendors, and this traditional choice comes with a twist. With the build, you are going to engage with a business process where you scope out the requirements, build a system to meet those requirements, then code that you own is responsible for the ongoing delivery of those features. With a buy, you are looking at a product that is proven across multiple locations and has a roadmap of new features, and the vendor is responsible for support of the application and for building new features to meet the needs of its customer base. The twist is that when you introduce vendors, they can use the build or buy approach to deliver your functionality, and on the surface, they may look similar; they are, in fact, completely different kinds of technical and business models. Let’s call them the Build Vendor and the Buy Vendor, and in this article, we describe the difference between these two kinds of vendors and why it matters to you. At the end, we will give you two questions to ask every vendor to discover if they are a Build Vendor or a Buy Vendor.

What Is Code?

Code is the lifeblood of your organization – it is the wiring, the logic, and it is literally everywhere. In today’s world, nearly every part of your business is running on code that is responsible for the smooth operation of that business area. This code runs everything, from your smart fish tank to your hotel check-in system to the code that sits behind your social media site.

Why You Care

The authors work with a large number of different vendors since we work in the data integration space, therefore, it is our job to understand source systems and the subtle differences between them. As we do this, we see deployment of code that is site-specific, how that code makes upgrades complex, and involves teams of developers adapting the custom code to provide the upgrades to move your organization forward in its technology advancement.

Why Vendors Do This

In the history of computer science, there a classic study that describes the effort to go from a one-off working code base to a scalable, supportable, configurable code base. These studies show that it is about nine times the effort to develop a robust, repeatable software package than it is to deliver a one-off development effort. This means that the software developers can very quickly take their existing code and make something that works just as well in a real-world environment as a one-off in about 11 percent of the time that it takes to deploy a robust product designed to operate in many different sites.

The Build Vendor

The Build Vendor is a software company who will have a library of code that they can use as a starting point for a system build. This code has often been installed in many sites and can even have branding and a name. A typical process with the Build Vendor is to deploy the latest copy of the code, then that code is adapted to the specific needs of the customer. Think of it like a book that is taken, then edited each time it is read. Vendors often start out with the best of intentions to avoid custom code, but pressure from customers to deliver to their specific needs results in compromise. The challenge is that once this process of code evolution is underway, it is a massive integration job to go back and build a product that can support the wide range of customer needs.

The Buy Vendor

The Buy Vendors are plentiful outside of gaming, with companies such as Microsoft delivering a product like MSSQL that is standard across all of their deployments. This applies equally to on-prem or cloud solutions; the difference is not in how the software is deployed, but in how the code (and associated data structures) are managed. The Buy Vendor’s work has a very different kind of team of software engineers and product managers. These software engineers are applying rigorous processes that enable them to write code once, build exhaustive test procedures, and deploy the same code at scale.

For a Buy Vendor, normally about half of the development effort is focused on the testing and monitoring of software. Bugs – and these exist in all software – are considered to be a failure in testing more than a failure in software engineering. As such, you will find enormous amounts of effort being placed into building robust diagnostics that allow issues in the software to be found long before any user notices them.

Critical Mass or Critical Mess

During the startup time with a company, it is hard to tell the difference between a Build Vendor versus a Buy Vendor. They can both produce working code and both have high-quality engineers applied to meeting your business needs. The challenge comes as the company grows and their code bases diverge. Each additional deployment with the Build Vendor results in additional support load eventually transforming the company into a continuous scramble support mode running from one set of custom code to the next.

Identifying the Type of Vendor

The two questions to ask vendors:

How many versions of your software code are deployed in the field at different customers and, specifically, what are the version numbers?

Please show me the configuration parameters that are available, and how can they be set up to meet my business needs without changing the software code?

There are two quite different approaches to how to build out this completely integrated customer data model, and along with that are two quite different skill sets. The first approach is to build it specifically to your business; with this approach you will need a team of developers who will write code specific to your business. With the second approach, you engage a code-complete solution that is robust, easy to deploy, and ready to use out-of-the-box.

These authors recommend the latter solution, selecting a Buy Vendor providing a robust, proven, repeatable software package purposefully designed for gaming organizations and capable of making configurations to fit your specific business needs. This way, your business receives the benefit of long-term adaptability offered by Build Vendors, while benefiting from the immediate operational efficiencies provided by the Buy Vendor.