Composable architecture is a way of building an organisation’s IT systems, or ‘tech stack’ to coin the geeky terminology, which combines a number of platforms and potentially reusable components. These compnents have different purposes and functions but are combined in one unified system in which data is shared, and platforms communicate, via APIs. This breaks down complex IT ecosystems into more manageable chunks which allows for greater flexibility, scalability, agility and security.
It also means that an organisation is no longer reliant on a single vendor or technology which might not be the right fit or that effective in certain areas as it’s hard to be good at everything. For example, we have been talking to a company recently whose ecommerce platform is actually an add-on to their ERP. No doubt this was seen as a cheap option at the time, but it's now recognised within the organisation as a very poor solution that was actually losing them customers as it was not made for their specific business needs. They have lived with it despite the consequences, but now they’re facing a double whammy because they’re implementing a new ERP the knock on effect of which will see their existing ecommerce become defunct. This was creating a serious issue within the business as a new ecommerce platform will have to be built but within a very limited timeframe as the date when the old ERP will be taken down had been set. A composable architecture means that you’re not ‘locked in’ giving you total freedom to add or change components into your systems to do exactly what you need.
What are the key benefits of composable architecture?
Agility
Technology moves at an ever increasing pace with the only certainty that technology will change, meaning you need to try and future proof your business as much as possible. This means that getting stuck with a rigid system can be a huge obstacle for businesses that want to keep up with a constantly shifting tech world. Composable architecture helps organisations to be as agile as possible with a system that is always ready to adapt because it’s essentially made up of building blocks which can be added to, swapped for better ones or removed.
With Open Source and APIs it’s become much easier to integrate technology, so the time it takes to add new programs or improve existing ones is reduced. It means you can embrace the best and latest advancements with minimal friction, to take advantage of improvements with as little interruption as possible. You can combine new products, reusable components you’ve already created or develop custom components based on best of breed. This also means for any changes you decide to make will be as swift as possible with minimal downtime. Furthermore, you can repeat this process as many times or as often as you like to meet further changes, new requirements or take advantage of new tech.
Independence
All-in-one systems are attractive because they’re convenient, but (as per our recent example) they also come with a key drawback, namely you’re totally dependent on one vendor. So if you want some function that’s not available there’s usually a difficult, expensive and slow process of trying to get the vendor to develop it, or find some third party workaround with all the risk that implies. Effectively you’re locked in, which has other implications in terms of price rises, licencing and risks should that vendor cease to exist for any reason.
Composable architecture lets you build piece by piece which means that if one vendor doesn’t have everything you need, or there’s a better solution elsewhere, you can use different technology. All these disparate products will still be able to communicate and work together without needing to rely on a single vendor. Usually it also saves money because you’re only paying for what you need. Most of the big, all-in-one enterprise solutions have loads of functionality you never use. Whilst the sytem can be configured so these are disabled, you’re probably still paying for a large portion of the work that went into building them. In turn, this can help cut down on any unnecessary, unused programs and avoid overly complex systems that require more user training or just get in the way.
Omnichannel
Customers are demanding more ways and more channels through which they can connect with an organisation. Adopting an omnichannel approach – where content is designed to reach multiple channels – is a solution to meet this demand. Composable architecture allows you to embrace this kind of marketing because you can choose the specific technology you want to use. It means that you’re free to add or remove technology to meet your specific needs. There’s no limit to scaling, and because the components are designed to be reusable and interchangeable, it’s a fast and easy way to grow in a way that’s optimised for each specific channel with adoption much faster and easier. For example, if you want to add some new channel, thanks to the separate components that make up the system, it’s usually relatively easy to connect it to the rest system.
Security
There are inherent risks with directly connected programs in systems that don’t use composable architecture. By way of a metaphor it’s a bit like a a game of Jenga. Because it’s a monolith by it’s very nature, one security hack or program failure can potentially crash the whole system. And, by way of an example, we had a client that got hacked last Christmas. Please note this was of their internal systems and not the website that we support which was a separate platform illustrating the benefits of a component based approach. Their entire IT infrastructure was reduce to a single laptop, they had to rebuild everything at an estimated cost of £1M, coincidentally the same value as the ransom demand they received from the hackers. Composability not only makes systems easier to use, it also makes them safer because each piece of technology can operate independently. It means that one element of technology crashing or being compromised will not affect others. The risk can be quarantined by easily disconnecting it from the system and then replacing it. That makes composable architecture an easy way to safeguard user data, important records, and ensure uptime.
At this year’s Codegraden Conference, Umbraco’s annual developer get together in Odense, one of the sessions we attended was delivered by the CEO of Enterspeed who have developed one of the many components that are adding to Umbraco’s growing marketplace of composable products which integrate with its CMS. It’s a slightly weird coincidence that in a former role he’d been CTO at Lego which is of course the ultimate example of a building block system. And it’s more than a little ironic that his example of why you don’t want to be stuck in a monolothic system was from his days at Lego where he explained he’d had to spend millions of Euro on an upgrade that was essentially a giant security patch that gave him absolutely no business benefit whatsoever. This was one of the experiences that led him to start up Enterspeed which is a solution that makes it possible to decouple legacy and new systems with performance benefits.
The following are taken from his slide deck which outlined the benefits of composable - as well as his Enterspeed solution, somewhat inevitably, likewise an obligatory Lego analaogy.
Below is a schema showing a composable style architecture we’ve devised for a long-standing client combining their existing ERP and CRM with a proposed PIM server and a whole series of websites with differing functionality and user audiences. The websites, which we’ve largely developed, include catalogue solutions for the organisation’s various brands, a new corporate site, a new and completely bespoke online repository and ecommerce sites. The ability to add further sites and new solutions is now a much easier possibility with data shared using APIs across the digital estate.
Finally, the question of whether composable architecture is the right solution for business isn’t a given. Like most things in business, there’s no one-size-fits-all but there are a few key things to bear in mind. Every business has unique needs and any number of mitigating factors that will ultimately determine if this approach is the right one for them. Typically it’s more relevant to larger businesses with complex needs who need to integrate different systems, or modify an existing one. On the whole, smaller organisations with simpler requirements might not find it worth their time and resources to invest in composable commerce, but a growing organisation that’s looking to expand, which needs to integrate new systems, to experiment with new tools and react quickly to market changes would benefit from composable.