Five ingredients are essential for successful Migration:
1. Managing the migration project as a strategic business project
A migration program at scale will mobilise a significant volume of the organisation’s resources and impact on the ability to manage in parallel new projects or functional evolutions requested by businesses. In order to guarantee the capacity to mobilise, the migration program needs to be a strategic program for the company as a whole with objectives aligned with the company’s strategic challenges (e.g. reduction[s] in time to market, digitalisation of customer services, cost optimisation, innovation capacity, capacity to address markets in other geographical areas, etc.).
Consequently, it must be sponsored at the highest level of the company (general management) in order to guarantee the resources allocated to the program over time and the alignment of the various stakeholders: business management, IT Department, Communication Department, Finance Department, Human Resources Department, Innovation Department, etc. The governance structure that must be put in place is a governance structure for a strategic company program.
2. Considering the human factor as critical to the success of the program
The success of a migration program is linked to the company’s ability to mobilise resources with a high level of investment over a reasonably long period. This requires:
- Sharing the objectives of this transformation and of the perspectives at the level of each team and/or each staff member.
- A skills progression plan adjusted in relation to the targeted positioning of the staff involved and their role in the program, which combines formal, social and experiential learning
- Experience sharing at all levels through communities, handson and gamedays
- Implementing a retention plan for key resources which, in particular, makes it possible to anticipate the demand for teams (value of cloud skills on the market)
- Communication that involves all stakeholders • Celebrating key milestones as a team
It is recommend to use collective intelligence approaches in order to facilitate continuous alignment, to take into account the difficulties encountered and provide collective solutions, to answer questions on the objectives, method and means, and to adapt the support plans in relation to the weak signals that have come up.
3. Having foundations that are stable and ready at the right time
In order to perform Migration of applications, it is essential that the following foundations are ready for the first pilot applications during the Mobilise phase:
- A landing zone that is industrial enough to meet the needs of the applications, where autonomy is granted to application operations while controlling the use of AWS services: a clear and industrialized cloud management strategy within a structured organization that allows control of usage through policies, network management that makes it possible to hide complexity from factories.
- Security services: encryption, traceability, protection of incoming and outgoing internet access, the ability to authorise inter-application flows, role management that allows the tasks to be performed, which are required to deploy and administer applications, etc.
- Shared infrastructure and operations services: DNS, AD, file transfers, system and application log management, observability, backup
- A robust and secure CI/CD chain that enables AWS services and application components to be deployed secured
4. Automating at all levels
Identifying the scope of the migration is one of the first tasks to be performed on a migration project. The work of analysing the portfolio and the characteristics of the applications (different environments, flows, components, etc.) must be automated as much as possible in order to monitor the project from start to finish, right up to the decommissioning phase of the on-premise components.
Deploying applications at scale requires a landing zone (creating AWS accounts, VPCs and subnets, intra-AWS network flows with the on-premises and the Internet, endpoints to access AWS services, DNS management, AMI management, EBS volume, EFS sharing, etc.) and security services (IAM roles, logging, WAF tunnels, certificate management, data encryption) that can be consumed at scale for application deployment. Creating the resources required to deploy an application to the landing zone must be delegated to the Devops teams which is migrating an application, but must not depend on the availability of CCOE resources.
Migration of applications often means that on-premise data must be adopted. The time required to export, transfer and load data to AWS is often unacceptable owing to the downtimes involved. Providing data synchronisation mechanisms between on-premises and AWS, and making them directly activatable by DevOps teams speeds up migrations and limits service downtimes.
Managing a migration project often means managing 100 to 300 migrations in parallel, which are all projects with potentially different teams. Industrialising program/project management is necessary with such volumes: detailed schedules for migration projects must be aggregated to have a consolidated management-type view that is useful for decision-making. KPIs must be able to issue alerts on projects that are behind schedule or remain too long in one phase.
A combination of agile project/program management tool (such as JIRA) and a BI product can enable information centralisation and production automation of KPIs.
Migration managers must automatically retrieve their “Project Control Panel” and spend most of their time identifying the major risks and dependencies that may impact optimal progress of the project.
5. Managing at scale
In concrete terms, a few hundred migrations will have to be managed over a period of one year or 18 months with firm planning constraints because this often guarantees the business case (a datacentre is released at the end of the contract, with extensions generally at dissuasive prices by a supplier who loses at least a significant part of its hosting turnover). Behind a portfolio of several hundred applications, there is, at the very least, a pool of several dozen operational project managers. Behind these applications, there are also thousands of technical resources whose decommissioning or even takeover by one or more brokers will have to be monitored.
To perform this type of management, it is important to have an effective delegation mechanism. If an accurate overall view of the progress of the program needs to be presented to the strategic committee, it is important to guarantee the reliability of information, whether it be budgetary or planning information. In order to implement the appropriate measures (technical, resources, planning, dependencies, etc.), it is equally critical to have short escalation circuits that will allow risks or deviations to be dealt with as quickly as possible as soon as they are diagnosed.
If agile methods at scale are already practised by the teams, these approaches are capitalised on. If this is not the case, they cannot be implemented in such a short period of time. Instead, LEAN Management type (Lean management principles aims to create a stable workflow based on actual customer’s demand) approaches will be preferred, such as Obeya, which facilitates decision-making to achieve the objectives.