Monolith Versus Microservice Architectures: It’s Time To Let the Latter Revive the Former
Thanks to the impacts of COVID-19, a host of black swan disruption events, and evolving consumer behavior, retailers’ digital transformation strategies went from being a long-term roadmap to an overnight necessity. However, upon this realization, and the incumbent need to revisit their current digital infrastructures, many have been faced with something cumbersome… rigid… almost unmovable.
What they were faced with is a monolith.
Exposing Monolith’s Limitations
Revisiting that chaotic period in early 2020, what retailers realized they didn’t have good enough access to, was visibility – visibility of store inventory, availability and general movement across the supply chain in an e-commerce and omni-channel world. They have since needed to pivot quickly amid a sudden influx of online operations but have struggled to do so.
The reason why revolves around the very nature of their monolith digital infrastructures. Individual applications – be they order management (OMS), ERP, planning, assortment, etc. – had traditionally been architected in a way that made them very good at that single use. However, customization had always been a challenge given the specialized rigidity of monolith designs. Upgrade issues even in the calmest of times were – and still are – a notorious challenge, leaving businesses with a decision of whether to take the hit of a cost to redesign more bespoke systems, or to remain in a more limited, but supported environment.
A final kicker to this monolithic situation, is that even the smallest of new requirements would require an entirely new application. Time, money and sheer effort have always been at a premium when it comes to a rethink around these inflexible, complicated, specialized applications.
And, in an era so dependent on quick digital transformation across core supply chain metrics, a different approach is needed.
The answer for many is a more iterative, flexible and modular microservice approach. And rightly so. However, in making this much-needed transition, there also needs to be a clearer acknowledgement of the actual relationship between old and new. Between monolith and microservice.
What most are finding as a result, is that microservices can revive the old, as well as usher in the new.
Avoid Open-Heart Surgery
The monolith versus microservices soundbite is ubiquitous in its nature. The reality is that every business has legacy systems, technical debt, and digital debt. This can sometimes amount to hundreds of millions, and they can’t just be thrown away. Even if the finances and existing software contracts allowed, ripping apart existing architectures isn’t as easy as it might sound, or as some people think, either.
Taking the OMS space as an example, it would be akin to open-heart surgery, to cut apart an existing application geared towards this element of supply chain operations. So, what do you do, if it’s too dangerous and costly to tinker with it, but the goalposts for what constituted good OMS have changed so considerably?
Step one is realizing that the applications currently in place are not complete mistakes. In fact, they are often the best versions of software that were available at the time; only the requirements have since changed. What they require, rather than an open-heart operation, is keyhole surgery. A micro tweak that extracts the elements of the application that are no longer fit for purpose, while replacing them with a specific service that addresses the exact – often, new – need that the initial architecture couldn’t cater for.
Looking at ERP as another example – their recent struggle has been to cope with the level of “chattiness” on the web, and the extent of interaction that is now required through the system. In their original states, ERP applications as monolith designs addressed what people were doing, not these real-time interactions. However, by placing an OMS microservice between the ERP and the web, the entire working relationship of that part of the ecosystem evolves and takes on a new lease of life.
Reigniting Legacy Systems
The same opportunity lies in OMS itself, as well as in planning, execution, warehousing, store fulfillment, replenishment, and almost every element of the digital ecosystem that retailers require to ensure a smooth and agile supply chain.
What microservices ultimately allow, is the breaking up of use cases and application functions into their constituent pieces, before building them back together to form platforms. Just like the oft-misunderstood monolith design, they appear as individual applications; only with add-on and customisable characteristics.
This nuance not only fulfills the need to transform infrastructures for modern day requirements, but it enables far greater speed in doing so.
But the best benefit of all, is that microservices are an iterative solution, not an overhaul proposition. By upgrading a specific portion of what used to be an entire application – maybe inventory, the available to promise (ATP) engine, etc. – implementation is quicker, easier and more cost-effective.
Furthermore, in doing so, you’re not just upgrading that area of the supply chain process – you’re reigniting the value of the existing legacy application in place as well.
The vitriol around monolith being outdated and unfit for purpose is simply untrue. They are still usually good platforms, in need of augmentation where they were previously unchangeable. By creating a more flexible set of services around that application, to address new requirements, the original platform can go back to flourishing in areas it was initially designed for.
Moving the Needle
The notion and philosophy of “composable architectures” was always geared towards the premise of buying best-in-breed and incorporating the best platforms into the overall infrastructure, to cover all required bases.
However, “microservices” isn’t an alternate definition of this ideology. It is the how!
It is a deployment methodology that facilitates the holy grail of a composable architecture, even in spite of the monolith architectures and legacy software that most businesses currently have in play.
Microservices’ consequent role as a step change, as well as an igniter of old solutions, makes the approach more than just a short-term powerplay. In reality, it’s a long-term mitigator for businesses as a whole, to be able to inject relevant solutions into old architectures with minimum risk and maximum reward, in double quick time.
There is a potential to replace everything all at once should the need be there, but in reality, it is an augmentation opportunity that offsets issues around existing software contracts, potential downtimes during tech upheavals, and the traits of monolith applications that are no longer relevant.
By embarking on a more methodical, tailored and iterative decomposition of the status quo, retailers are able to carefully move the needle as far as they actually need, rather than spinning it in an expensive and desperate hope to keep up.
As such, digital transformation need not be a terrifying prospect when it comes to retailers’ supply chains. When faced with that daunting, monolithic view of legacy infrastructures, those same businesses should look towards microservices that can now work with – not against – them.
Learn more about Blue Yonder’s Order Management (OMS) microservices.