In part 2 of our series on composable architecture, we discuss the different ways you can take on a microservices migration. Check out part 1 here.
Once you have clarified your strategic direction and have the right focus on your initiative, you can move on to the next step: technical migration. Broadly speaking, you have two options: a full replacement of your systems, or a phased replacement.
Related Reading: Ecommerce Replatforming: Is Now the Time?
Let’s break down the two approaches to technically migrating to composable architecture or as we like to call it, microservices architecture.
What Are the Practical Steps to Take When Implementing a Full Replacement?
A full replacement is generally considered a risky and expensive exercise, so it should be reserved for special cases, such as:
- When you need a new platform anyway
- When you are starting a new digital commerce journey, such as a B2B business going D2C
Related Reading: Ecommerce Evolution: Platform-based vs Composable Architecture
Risks to a Full Microservices Migration
A full replacement is risky for the following reasons:
- With an extensive existing digital commerce business, recreating existing processes is significant work, even if it’s just setting up or configuring components.
- The work to re-platform takes immense time and resources before it delivers the same value the old platform provided. At that point, you haven’t even begun to earn a return on your investment.
- We often see an urge to “do everything better than before,” which means many untested assumptions get built into the solution, some of which don’t turn out useful and result in wasted effort.
- A classic mitigation strategy to avoid waste is to roll out a subset of planned features first in an MVP, but this can leave your customers disappointed, by missing features.
When Should I Consider a Full Microservices Migration?
Because of the risks associated with a full microservices migration, it should be approached delicately and with caution. However, there certainly are circumstances that call for a full migration. A full replacement provides benefits when:
- Existing systems are a bottleneck in your organization.
- Existing systems cost too much to maintain or are no longer supported.
How Do I Go About a Full Microservices Migration?
Use the following steps as a guide when diving into a full replacement:
- Begin with a minimal scope, and start the new platform alongside the old platform.
- Get the core architecture in place first, and avoid the urge to migrate everything to the new platform immediately.
- Consider which existing services and systems you can use in the new solution, such as ERP, CRM, PIM, DAM, PSM, WMS, shipping solutions, and more. There’s no need to replace them, and certainly not at the same time!
- Keep the scope of the changes to a minimum, and take additional steps gradually.
- Consider ways to drive a small sample of customers to your new platform before the general release, such as “soft launches.” Invite the friends and family of your employees to try the new site with an incentive. This provides you with a reasonable sample size while keeping the group “controlled.” Your friends and relatives may be more tolerant of issues with the new site, and willing to provide feedback.
Keep in mind that new technology that opens new possibilities for your business still requires your business to adapt in order to capitalize on the new opportunities!
The Benefits of a Phased Microservices Migration
We generally recommend a phased replacement because it carries lower risk when compared to a full replacement.
The benefits of a phased replacement include the following:
- You make smaller changes more often, and for each change, you can observe the effect and course-correct accordingly.
- Your business may respond in ways that are not fully predictable, such as exhibiting resistance to change and unexpected bottlenecks. A phased replacement allows you to respond to those more continuously rather than dealing with all of the side effects in one go.
- You have a working solution at all times.
- For each small change you make, you always have a safe fallback, if any change fails or takes longer to complete.
- You receive the benefits of individual best-of-breed components sooner, rather than having to wait while replacing your entire system.
- Along the way, you might identify components that you don’t actually need to move to new technologies because the effort outweighs the benefit.
- With a full replacement approach, this is less likely to happen, as this conclusion might not be evident at the start when you define your plans. While a phased-in approach may bring a slightly higher total cost when compared to a full replacement, the overall decrease in risk justifies the cost difference.
How to Go About a Phased Microservices Migration
Consider the following various ways to phase in composable architecture.
Start by Going Headless First
De-coupling your experience layer adds the flexibility to carry out changes “behind the curtains” without impacting the user experience. Decoupling the experience layer can be a big change technically, but usually not so much organizationally.
You can change to headless step by step. For example, replace your catalog navigation with a new frontend, but leave the complex checkout process on the old frontend, with the assumption that the ecommerce engine remains the same. You could style the old and new front ends in a way that makes it all feel seamless. After the switch to headless, decomposing your solution will be easier.
Alternatively, Change One Specific Feature
Alternatively, change one specific feature to a new best-of-breed implementation or service. For example, implement a new headless content management system and adapt the frontend to fetch content from the new content management system and render it. Visually the end customer might not even notice the difference, but your organization now has a best-of-breed content management solution that is focused on content and content workflows. In parallel to the work on your website, you can now evolve how you manage content in your organization and even add new channels such as social.
Move more and more features over to services, such as personalization, and potentially even checkout, until the old platform mostly deals with transactions. Then you have the freedom to eventually switch to a more streamlined commerce engine, if you should so desire.
Move Your Source of Truth
You could also go the route of moving the “source of truth” out of your single platform, even if the data is still copied to the commerce platform. For example, move the products into a PIM system. The product information can now be managed and enriched much better and be re-used outside of your commerce solution. Then the products in your commerce platform get populated and updated from the PIM.
Start enjoying the benefits of PIM straight away and make any future migration easier. Updating the integration later with a new commerce engine is easier than doing both the migration to PIM and integration to the new commerce engine in one go.
Find the Right Partners
To succeed with the phased-in approach, search for vendors that follow the MACH principles. The MACH Alliance places many vendors in the composable architecture space under one, future-proof umbrella. Also, look for connectors and accelerators that are already built, so you are not reinventing the wheel.
We work closely with our partners Adobe and commercetools and Contentful, vendors in the MACH Alliance. Our goal is to maintain a pool of the very best partners, tools, and functionality to provide the most optimal “building blocks” for our clients choosing the composable architecture route.
With over 14 years of experience in driving success in ecommerce, we have helped many clients implement headless and composable solutions. Talk to us today about how we can help you find the right approach to digital commerce. Let us help you provide your customers with a brilliant cross-platform experience that delivers exactly what they need, when, and where they need it.
Talk to us today about your digital commerce needs!