Deciding to move to the cloud is the easy part. Deciding how to get there and weighing up the costs and benefits of each is the hard part. At Bridgeall, we often see organisations fall into the trap of thinking every application needs the same treatment.
The truth is, moving a mess from an on-premise server to the cloud simply gives you a cloud-based mess and usually a more expensive one. To avoid this, we utilise the 5 R’s of Migration, a strategic framework designed to ensure every workload is placed exactly where it can deliver the most value.
The 5 Rs of Application migration
- Rehost (The Lift and Shift)
Rehosting is the fastest way to get into the cloud. You essentially take your existing server and applications and move them exactly as they are into the Azure environment.
This is the simplest approach and good for legacy applications that aren’t ready for a code overhaul or when you are facing a hard deadline (like a data centre lease expiry).Azure migrate is a key solution for rehosting. This central hub provides the tools to discover, assess, and migrate your on-premise servers directly into Azure Virtual Machines.
- Refactor (The Repackage)
Refactoring involves making minimal changes to your application code so it can take advantage of cloud-native features without a full redesign. You aren’t changing how the app works just where it is based.
This approach is designed for stable applications that would benefit from better scaling and reduced management overhead. If demand for the application variable and what skills does your team have will dictate the use of this approach. Azure App Service and Azure SQL Managed Instance are the choices here By moving your web apps and databases, you remove the need to manage the underlying OS or patching saving you effort but this does come with a slightly higher cost.
- Rearchitect (The Redesign)
Sometimes, the legacy architecture of an app is what’s holding it back. Rearchitecting involves modifying and extending the application’s code to shift it to a cloud-native architecture, often moving toward microservices.
For Mission-critical applications that need maximum scalability, high availability, and the ability to update individual components without taking the whole system down. Key services for this approach include Azure Kubernetes Service (AKS) and Azure Functions. These allow you to break your app into smaller, serverless pieces that scale independently.
- Rebuild (The Cloud-Native New)
If your legacy application has reached the end of its life, it is often more cost-effective to scrap it and start fresh. Rebuilding allows you to use modern frameworks (like .NET 9) to build a solution specifically for the Azure ecosystem.
For systems that are no longer fit for purpose, have a code base that’s a mess and have significant maintenance requirements, starting from scratch can often be the best way forward.
By starting fresh, you can utilise globally distributed databases and low-code integration layers for a truly modern experience utilising services like Azure Cosmos DB and Azure Logic Apps.
- Replace (The SaaS Switch)
The most efficient migration is often the one where you stop being a software owner and become a software user. Replacing involves moving from a custom-built or on-premise licensed app to a Software-as-a-Service (SaaS) platform. With the prolification of SaaS solutions there are now a range of applications for standard business functions like Email, CRM, or HR management that can be easily purchased and rolled out.
When looking at migrating your applications and servers to Azure its critical to understand that the best approach for one part might not work for the other. Your approach should be based on a workload by workload basis.
If you are looking for assistance Bridgeall is Microsoft solution partner for Azure Infrastructure and app innovation and offers a full range of Azure migration services. To have an expert plan and execute your Azure migration contact us today.



