Application migration process
You can migrate applications, or workloads, to the AWS Cloud by using a mechanism that consists of repeatable processes. This mechanism has distinct stages that represent key milestones of the migration.
These stages can be classified as the following:
-
Application and Portfolio Discovery
-
Application Deep-Dive followed by Design of the target state in the AWS Cloud
-
Build by implementing the design, creating reusable artifacts to establish the foundations of an iterative, agile process called Migration Factory
-
Integrate with dependencies identified during the deep-dive and with native AWS services
-
Validate the build by performing testing on the target architecture and addressing any gaps or issues that are identified
-
Cut over to the application in the cloud by following a well-defined cutover plan (date, time, tasks, and their respective owners) as agreed to by the migration and application teams
The cutover runbook helps in planning the activities, from Build all the way to Cutover, from setting up the prerequisities until the application has been completely cut over to the AWS Cloud. The following diagram highlights the different stages of migrations that are covered by the cutover runbook.

Cutover stage
In the cutover stage of the migration process, the traffic is moved from the existing endpoints to the newly deployed resources in the cloud. As an example, for a classic web application, you might switch the Domain Name System (DNS) records to the new endpoints. However, if your application has several independent components and integration points, the process might get much more complicated. You can migrate the full stack, the data layer, or independent components, such as microservices. Each of these has a specific cutover strategy, but for all of them, preparation is key.
During cutover, you implement the cutover plan that was agreed to by the migration team and application owners. All application stakeholders should be informed about the cutover. Proper planning of the cutover phase is critical to the success of a cloud migration. In large enterprises, deployments can be complicated, requiring steps to be conducted in a particular sequence to properly configure environments and applications in production. If anything goes wrong, you might experience unplanned outages, loss of data, missed scaling expectations, and poor user experience. At this stage, you should perform a user acceptance test to support a successful cutover.
After the successful cutover, monitor your application dashboard and decommission your source environment. Before decommissioning the source environment, consider the following points:
-
Successful regression testing by the business users
-
Health of the application
-
Performance metrics
We recommend automating your cutover plan as much as possible. For example, use AWS CloudFormation templates for infrastructure provisioning, and use automated test scripts for regression testing. It is easy to introduce a human error during a stressful production workload cutover.
Additionally, plan for failure. If the migration is not successful, the outlined rollback procedure of the cutover plan should be performed.