Moving to The Cloud: Different Approaches to Adobe Experience Manager Migrations
A migration to Adobe Experience Manager (AEM) as a Cloud Service can be a fun and exciting time for your organization. The prospect of new functionality, modern design systems and infrastructure, better security, increased efficiency (and so much more) can be very appealing. It’s also an initiative that needs to be handled with careful planning. Taking the time and effort to develop a migration plan that is right for your organization is crucial to ensure you not only leverage the latest and greatest technologies the new platform has to offer, but that the valuable time and money you spend today continues to pay dividends for years to come.
There are several approaches to a migration and it’s important to take the time to do it right. Options could vary from a Lift & Shift implementation to a complete Rewrite or landing somewhere In-Between.
Taking the time to carefully consider the right approach for you can mean the difference between a single smooth and successful migration or several costly attempts that may still result in a less-than-stellar implementation. This unfortunate situation occurred recently with one of our clients: their previous partner built their initial solution around support for a single country and developed what appeared to be a fully functional and successful implementation. When we were brought in and time came to support a multi-national approach, however, the previous solution unfortunately could not support the new requirements and required reworking from the ground up. Careful planning before the initial phase could have prevented the time and money wasted on the initial, short-sighted implementation.
The Lift & Shift Method
A Lift & Shift approach can be very attractive because it appears to cut cost and effort by porting everything over to the new platform quickly with the mindset that “we’ll update it later”. Without careful planning, however, this can quickly become a problematic and costly approach.
This approach requires that code is compatible with the new platform. A simple implementation, using primarily out of the box functionality, can really benefit from this approach if it can reuse the features of the new platform without heavy development or customization.
That said, when performing a migration of a mature website, it’s safe to assume that the site has existed and been iterated on for some time. Attempting to quickly recreate a site that has taken years to develop and author can quickly spin out of control. Not taking proper care to review and clarify business logic and resolve existing technical debt will start you off on a new platform already a step behind. This approach may also carry over or introduce new security risks, inefficiencies in process and performance, accessibility issues, branding inconsistencies, and technical bugs.
Going the route of a Lift & Shift may also limit you from getting the most out of the new platform. Reusing existing technology could mean not making use of new functionality the new platform has to offer. One such example is a long-standing client that has focused on lowest-effort upgrades over the years for their enterprise-level AEM Implementation with a primary focus of getting running on the new platforms. Over multiple upgrades, this meant that their implementation was now many years behind and not utilizing many of the great improvements AEM has developed.
A successful Lift & Shift can get you up and running on the new platform quickly but may carry over process, performance, technical debt, and experience issues from the previous implementation while not benefitting from the new functionality and features the platform has to offer.
The Rewrite Method
On the other end of the spectrum, the Rewrite method takes the time to review the existing implementation to save good, reusable logic while recreating and rebuilding from scratch most impactful items. Every scenario is unique and in some cases a Rewrite will be a cheaper alternative to a Lift & Shift. In other cases, the up front cost can seem like it would be a larger investment in the short term. However, done correctly, even these situations can pay off with long term gains.
This approach allows you to avoid the risks of the Lift & Shift method, giving your new codebase and platform the best chance to be secure, efficient, performant, and maintainable. Any well written logic that can be reused from the old implementation will be migrated after being audited to ensure there are no potential improvements to efficiency, security, modernization and future proofing.
The Rewrite approach will also give you the opportunity to make use of the latest technology and features of your new platform while shedding deprecated features that may not be supported in the future. This helps ensure you will be spending less time after the migration worrying about upkeep on your implementation and spending more time on generating a bigger ROI through impactful decisions like personalized and targeted experiences and developing new features to increase customer satisfaction.
A successful Rewrite can resolve branding inconsistencies, accessibility issues, and existing bugs and technical debt while improving performance, infrastructure and security, content creation, and ongoing maintenance.
The In-Between Method
An “In-Between” approach uses a thorough audit of the existing implementation and includes a plan to flag what functionality can be carried over from the previous implementation, what needs to be updated and modernized, and what will require a full Rewrite.
Like the “Lift & Shift” method, this approach has some dependency on enough system compatibility between the old and new platforms to allow code to be shared between them. It attempts to harness the best of both the “Lift & Shift” and “Rewrite” approaches but can also be susceptible to their risks.
Taking this approach gives the opportunity to resolve inconsistencies in branding, update and modernize important pieces of functionality, eliminate highest priority existing bugs and security risks, and make use of the new and most business-critical features of the platform. This approach, however, requires increased planning and research phase and may require a notable investment of time from your business teams.
A successful implementation will depend on a system that is already built reasonably well and has enough logic that can be shared with the new system. It will get your implementation up on the new platform without having to rewrite all of your existing business logic while giving you an opportunity to make use of new features and functionality and resolving critical issues that may be carried over.
Taking the time to carefully plan your migration strategy is critical to ensure you are set up for the best chance of success on your new platform. This gives you the opportunity to focus on driving value through the platform and removes costs associated with postponing updates and fixes to existing issues carried over from your previous implementation. Your teams can direct their efforts on marketing and business strategy, personalization and marketing campaigns, and bringing the best experiences possible to your customers.
A careful review and audit of your existing implementation and technologies by an expert partner can assure you of the best approach for your migration. Making an effort to intentionally build out your new implementation correctly and efficiently will see a net return on the investment for years to come.