XSolve exec discusses value of bespoke vs off-the-shelf solutions

Jaroslaw Kroczek breaks down the pros and cons of customised solutions versus out-of-box offerings

Tags: Cloud computingUnited Arab EmiratesXSolve (xsolve.software/)
  • E-Mail
XSolve exec discusses value of bespoke vs off-the-shelf solutions Jaroslaw Kroczek, head of Engineering, XSolve.
By  Jaroslaw Kroczek Published  September 23, 2017

Choosing the right software solution for your business is a challenge. At some point you will face a dilemma: use ready-made products or platforms or build a custom tailored solution?

The stakes are high. Your choice of solution may have a crucial impact on the success of your project. In this article I will consider arguments for each option and offer guidance to help make the right decision.

Custom and ready-made

First, let’s agree on terms and limit the choice to two groups.

Ready-made software is a configurable or adaptable product. The core features are those provided by the vendor, and you often have the option to add plugins or third-party extensions. Sometimes you might extend its features by coding, but not without limits. Ready-made software comes with a variety of licensing options, free or paid, hosted (SaaS) or installed on premise.

Custom software, on the other hand, is a solution prepared specifically for the needs of your business and organisation. The scope of functionalities, design, choice of technology (including frameworks, architecture, hosting) is up to you and the development team and ideally should be whatever best fits your company’s business and expectations. It can be designed and built from scratch or be assembled from ready-made components, frameworks or platforms.

Differences

Building a custom product requires time, money and energy from your organisation, and there is always a risk of just reinventing the wheel. The alternative is to just pick something off the shelf and start using it. There are so many products on the market, it is tempting to just choose and deploy the one that seems closest to your needs. But... would it respond to all your needs? There are always compromises and what if they’re unacceptable? Let’s break down this question by examining a number of important factors.

Features

Ready-made solutions, including mass-market products or adaptable platforms offer features good enough for the majority. They’re quick to start using and adequate for most cases. But every business has its nuances which make it distinct from others and your software may need features that reflect that nuances. This may mean innovative features, integrations, or user experience, and may be the key to satisfying your clients. In a competitive market, details can make a huge difference. Building your own product enables you to follow your own vision and create something well-suited and polished that is not already available to the mass market. This comes at cost of more invested time, energy and budget.

Adaptability

Many ready-made platforms are adaptable beyond simple configuration, enabling development teams to implement custom features or change their behavior. This can be really useful for minor modifications and extensions and in many scenarios is all you need.

At a larger scale, versatility shows its costs. Complicated setup or custom changes introduced to ready-made products can dramatically raise their technical complexity, eventually making for a system that is slow, and hard to extend or maintain.

Well-built custom solutions do not suffer from such problems. Tailored software architecture and technology enable development teams to keep pace with the market and the latest cutting edge development.

Integrations

Sometimes you might want to integrate your software with third party apps or services using an API. Ready-made software often offers convenient mechanisms to connect with the most popular, globally operating services and platforms, for example payment services, e-commerce or task management.

Where it becomes troublesome (or even impossible) is when you need to integrate ready-made solutions with less popular, locally operating services, or with other custom software already in place. Creating custom software means unlimited options to integrate and connect via an API with other systems - within your company, and with your clients, users or business partners.

Scaling

If you plan to grow your business quickly, you need to ensure that the solution you choose is ready to grow too. Regardless of whether you are building your own, or using a ready-made product, at some point and in some scenarios you will face performance and stability problems. In both scenarios you can respond by scaling up infrastructure, which will introduce extra costs. Having a custom solution means you are less constrained by technology, software architecture, licenses and your development team can perform optimisations more easily.

Time & Cost

There are so many possible scenarios and factors to include that there is no general answer which option is more budget-wise. What is usually true is that ready-made software is ready to use more quickly and more cheaply than a custom option.

If you build your own, you need to invest time and money before the software is ready to function. This can be compensated for by using fast prototyping and an iterative, agile approach (i.e. Scrum) to building minimum viable products (MVPs). Furthermore, in later phases, custom software can be extended, scaled and adapted. There is a lower risk of encountering constraints implicating unexpected costs.

Going through a budget and scope analysis might be really challenging for organisations not experienced in this area and predictions are likely to be far from actual results. A good option may be to consult product vendors, or reach out to companies providing professional software development services to help you estimate your project.

Building vs. buying

Building custom software is usually more challenging than using ready-made. You need to find a competent software development team and actively support product creation by explaining your needs, making key decisions, and reviewing results. On the other hand, a well-organised agile process can help you reach your key goals and deliver an MVP very quickly.

A professional development team working, for example, in Scrum is capable of delivering new features each sprint, allowing you to provide quick feedback and tailor the outcomes to user expectations, quickly maximising product value.

Conclusion

Ready-made products are just fine when our needs are well-defined and your primary goal is to handle well-established or common business processes (i.e. internal company processes). These may include simple e-commerce applications, task or project management, and content management. There is a wide choice on the market and you would probably find something to match your requirements.

Custom tailored software has most benefit when you want to innovate. If your product needs to stand out from the crowd, or your business provides a unique service not yet present or common on the market, then creating custom software would undoubtedly be the better option.

Jaroslaw Kroczek, head of Engineering, XSolve.

Add a Comment

Your display name This field is mandatory

Your e-mail address This field is mandatory (Your e-mail address won't be published)

Security code