When I was first thinking about writing this article, I did some research to see what the rest of the industry was saying about bespoke and off-the-shelf software. And there was a word I saw cropping up a lot: “versus”. So many people pit bespoke development against off-the-shelf software as if there’s going to be a single victor. And if you ask me, there won’t be.
“Versus” doesn’t tell a story – or help anyone get what their organisation needs from software. Whether your organisation chooses bespoke, off-the-shelf, or a third potential option of a hybrid approach, depends entirely on who you are, what you need, and how quickly you need it.
So, instead of talking about whether one approach is better than the other, let’s look at some of the pros and cons of each – and pose some questions that can help you choose a path.
Software development is a lot like property development
There’s a comparison I keep coming back to when I think about software development: procuring and developing software is a lot like buying and building property.
Think of buying an off-the-shelf product (such as a CRM) like purchasing an apartment within a residential block. All the specifications are already set in concrete and, most of the time, it’s ready for you to move in straight away. It’s far faster and easier than building your own house from scratch, but you will have to work within the apartment’s constraints. So, you can replace the oven and paint the walls, but you won’t be able to add an en-suite bathroom or another bedroom.
With off-the-shelf software, you can deploy right away and start using your new tool, and it will let you tweak settings, but you’ll likely find it difficult or even impossible to expand its scope or make any significant structural changes.
In an apartment block, you’ll pay ground rent and maintenance fees to support the building’s upkeep – in the software as a service world, that’s the role your licensing costs play, as the vendor keeps your tools updated automatically.
Bespoke software is like buying a plot of land and building your own dream home, from the foundations right down to the individual cupboard handles and light fixtures. You can have almost anything you want – the only constraints are time, budget, and the skill of your contractors. Want space for a bigger bed? Just expand the footprint of the master bedroom. Want to introduce a self-service portal that lets marketers easily access data from your CRM? Just ask your developers to build it.
In the software world, that also means you own the intellectual property. There aren’t any ground rent-type fees to pay, but you’re responsible for your own maintenance and updates. The upside is that you don’t need to deal with new features just because the vendor introduces them, but the downside is it’s easy to let upkeep slip while you’re busy with other things.
The Grand Designs problem
As I said, the most likely constraints to bespoke development are time, budget, and skill. And that means to get the best out of your bespoke software, you need to be collaborative and structured in how to evaluate what offers true value and benefit, and make sure you’ve got a proven software delivery approach for the job.
If you don’t, you’ll end up facing the common-yet-devastating Grand Designs problem. We’ve all seen a defeated landowner lament a building project that’s a year behind schedule and a couple of thousand pounds over budget – and usually there’s something leaking, too.
If you get carried away with bespoke, you can find yourself spending more than you want to and not getting the features you actually need. Set a realistic budget and timescale, the right partner who’s experienced in software delivery and has the knowledge help with what you are trying to achieve, and don’t get carried away adding machine learning tools (or marble countertops) if you don’t really need them.
The hybrid option
Bespoke and off-the-shelf aren’t the only approaches to software; there’s also the option to combine them and take a hybrid approach. This means you take an off-the-shelf product and adapt it to your needs. (To return to my property metaphor, this is a lot like buying a new build house and adding on a conservatory, or converting the loft into a home office.)
For example, in our work with Cornwall Council, we work extensively with their Microsoft Dynamics deployment to extend its capabilities and tailor the platform to their specific requirements.
For a hybrid approach to be successful, you need two things: a flexible off-the-shelf product that you can develop on top of, and a strong team of developers that can work within the constraints of the platform.
In a lot of cases, hybrid lets you combine the best of both worlds – the speed and convenience of off the shelf with the customisation of bespoke.
So when do you need off-the-shelf, bespoke, or hybrid?
Whenever you procure a new solution, there’s a lot of investigation that needs to go on beforehand to make sure you’re choosing the right vendor, software, and deployment approach.
Some companies make the mistake of thinking an off-the-shelf product doesn’t require as much thought as bespoke software. The upfront work of outlining your needs, identifying required integrations, and examining the licensing agreement is invaluable if you don’t want any nasty surprises. Too often companies deploy a new solution and realise too late that it doesn’t integrate well with one of their core systems, for example.
Here are some pointers to help you figure out the best approach for your organisation:
When to use off-the-shelf solutions: If you have an immediate need or a generic functional application that a solution already exists for, off-the-shelf software is often your best bet. However, only serving immediate demand can limit your strategic planning so, if your requirements are likely to change, make sure you choose software you can shift into a hybrid model and adapt in the future.
When to use bespoke development: Fully bespoke development is ideal if your organisation has very specific requirements – such as working in a heavily regulated industry – or you want a solution that’s completely tailored to your processes. As I mentioned above, you need to manage your timescale and budget, as well as the flexibility to adjust your requirements as the project progresses. (You don’t want to scope for two years of work and follow it to the letter, because your needs will always change, and at the end of the project you’ll find yourself with software that’s no longer fit for purpose.)
When to use hybrid development: If you have a need that can be mostly serviced by an existing tool, but you need a few extra bells and whistles to fit it into your infrastructure, hybrid is the way to go. Of course, you could build your own version of Microsoft Dynamics, but it’ll be hugely expensive and time-consuming, and it won’t slot into the Microsoft ecosystem for example.
If you’re finding it difficult to find the right approach for your project, a third-party assessment can help you identify your real requirements, map out all your integrations, and find out whether there’s an off-the-shelf solution suitable, or whether you need that bespoke touch.