Ways to Migrate

Philipp Melab / Nov 6, 2024

In Part One of this Migration blog series, we explored the various reasons why a website migration might be necessary, from improving performance to addressing outdated technology. Now that we’ve established the "why," it’s time to focus on the "how." Migrating a website can be a complex process, but with the right strategy, it doesn’t have to be overwhelming. In this blog, we’ll walk you through the different approaches to migration, helping you navigate the best path forward for your business.

Strategies

With decoupling in mind, our migration strategies are designed to first create a system that allows for flexibility and separation between the backend and frontend. Once that foundation is in place, we can gradually implement improvements. Depending on your specific migration needs – whether it’s design, performance, or functionality – these strategies can be tailored to your unique situation, allowing for a smooth and efficient transition.

"The facade"

An obvious disguise

If the need for change is mainly end-user focused, be it due to a new corporate design or the need for a responsive website, we can start by adding an API layer to your existing content management system and build a new website, or just a mobile variant, on top of that. In this case, you retain the existing backend as-is. No need to re-train your editorial staff or migrate content, but the new decoupled setup already puts you in a good position for when this becomes necessary.

"The tablecloth stunt"

Magic trick with a tablecloth

In this scenario, the existing frontend is still considered modern and sufficient, but the content management system has to be replaced due to workflow, security, licensing or financial reasons. This case is a little more invasive. We will set up a new Drupal backend that matches your existing content structure, migrate the existing content and also rebuild the frontend. This means they will be almost completely replaced on a technical level, but we will be able to retain all design and concept work, down to reusing the existing CSS stylesheets. This alone can save a lot of time and money compared to an entirely new project. Plus, you’re then in a good position for the visual relaunch at a later stage.

"The strangler fig"

Illustration of a strangler fig software pattern

Sometimes, especially in larger websites that model multiple business processes at once, the horizontal separation does not cut it. The blog section is maybe not that important, but the startpage along with the conversion funnel that leads to a sale is. Investing in a full rebuild of the website just to improve the latter is simply not cost-effective. In this case we suggest going for the "strangler" pattern, originally described by Martin Fowler. In this model, a new website is set up which sits "in front" of the old one and handles all user interactions it is responsible for. All other requests are transparently handed off to the legacy system. For the end user, both appear to be one single website, but the new system can be developed and improved independently. With every new piece on the new website, a piece of the old one disappears and over time, the (slightly violent) metaphor of a strangler fig wrapping and eventually replacing a tree is realised.

"The shock freezer"

Austin Powers, frozen

This is more an honourable mention, but sometimes the situation is so dire that desperate measures are necessary. If the current system is so outdated and insecure, or the upkeep cost is simply so high that it poses a risk to your business, but there are no funds or time to improve the situation, we can freeze your website in time and deploy the frozen version to a static hosting provider. This will not directly put you in a better situation, and making changes to the website becomes even harder, but it can buy you time to plan and execute a proper migration.

Conclusion

Migrations are a complex and risky endeavor, but they are not always necessary. At Amazee Labs, we are there to help analyse your situation and find the best way forward. We are not afraid to tell you that a full relaunch is not the best solution, but we are also not afraid to tackle the challenge if it is necessary. And we are always there to help you maintain and improve your website, so that you don't end up in a situation where a huge website relaunch is the only way out.