In the previous section, we talked about the first phase of the Microsoft Cloud Adoption Framework. In the next phase we will deal with the development of a cloud adoption plan. Cloud adoption plans convert the aspirational goals of a cloud adoption strategy into an actionable plan.
Digital estate is an important point when it comes to planning. A digital estate is an abstract reference to a collection of tangible owned assets. In a digital estate, those assets include virtual machines (VMs), servers, applications, data, and so on. Essentially, a digital estate is the collection of IT assets that power business processes and supporting operations. The importance of a digital estate is most obvious during the planning and execution of digital transformation efforts. During transformation journeys, the cloud strategy teams use the digital estate to map the business outcomes to release plans and technical efforts. That all starts with an inventory and measurement of the digital assets that the organization owns today. After an organization understands the most important form of transformation, digital estate planning becomes much easier to manage.
To complete the digital estate analysis, one could take the following steps:
- Determine analysis approach.
- Collect current state inventory.
- Rationalize the assets in the digital estate.
- Align assets to cloud offerings to calculate pricing.
Digital estate planning can take several forms depending on the desired outcomes and size of the existing estate. There are various approaches that you can take like the top-down assessment approach, the asset-driven approach or the incremental approach. It is strongly suggested to go with an incremental approach, as we do for many processes in the Cloud Adoption Framework. The process of an incremental approach could look like this:
- Initial cost analysis: If financial validation is required, start with an asset-driven approach to get an initial cost calculation for the entire digital estate.
- Migration planning: After you have assembled a cloud strategy team, build an initial migration backlog using a workload-driven approach that’s based on their collective knowledge and limited stakeholder interviews.
- Release planning: At each release, the migration backlog is pruned and reprioritized to focus on the most relevant business impact.
- Execution analysis: Before migrating, modernizing, or replicating any asset, assess it both individually and as part of a collective release.
After the approach is selected, the inventory can be collected. The inventory that supports a digital estate changes depending on the desired digital transformation and corresponding transformation journey. It is often recommended that during a cloud migration, one collect the inventory from scanning tools that create a centralized list of all virtual machines and servers. Also mapping the customer experience from start to finish is a good place to begin. Cloud-enabled data innovation efforts focus on the product or service. One has to consider that an inventory is rarely complete in its first iteration.
After an inventory is compiled and validated, it can be rationalized. Cloud rationalization is the process of evaluating assets to determine the best approach to hosting them in the cloud. After one have determined an approach and aggregated an inventory, cloud rationalization can begin.
After the rationalization of the digital estate, you can align it to equivalent costing models with the chosen cloud provider. Azure pricing tools like Azure Migrate, total cost of ownership calculator, Azure pricing calculator or Azure Cost Management can help to manage cloud spend with transparency and accuracy. Providing the tools to monitor, allocate, and optimize cloud costs, empowers customers to accelerate future investments with confidence.
Initial organization alignment
The most important aspect of any cloud adoption plan is the alignment of people who will make the plan a reality. The next step is to map specific people to the necessary capabilities. To do so one cloud answer several questions. What person (or group of people) will be responsible for completing technical tasks in the cloud adoption plan? What person will be accountable for the team’s ability to deliver technical changes? What person (or group of people) will be responsible for implementing protective governance mechanisms? What person will be accountable for the defining those governance controls? Are there other capabilities or people that will have accountability or responsibility within the cloud adoption plan?
After answering these questions, one can establish plans for skills readiness to define plans to prepare these people for forthcoming work. As the organization prepares for a cloud adoption effort, each team should document staff concerns as they arise by identifying the type of concern. For example, workers might be resistant to the changes in job duties that come with the adoption effort or resistance to adoption might result in workers being slow to execute the required changes. IT staff members commonly have concerns about acquiring the training needed to support expanded functions and new duties. Learning the training preferences of the team helps to prepare a plan. Identifying gaps is another important aspect of organization readiness. A gap is a role, skill, or process that is required for your digital transformation but doesn’t currently exist in your enterprise. Emphasize new responsibilities and existing responsibilities to be retired. For each new responsibility, check how closely it aligns with the area. Some responsibilities might span several areas. This crossover represents an opportunity for better alignment that you should document as a concern. Identify the skills necessary to support each responsibility, and check if your enterprise has existing resources with those skills. The skills necessary to fill the gaps in your organization’s digital transformation are typically not confined to a single role or even a single department. Those roles might exist in several departments. For example, a workload owner might require someone in an IT role to provision core resources like subscriptions and resource groups. Track these dependencies and make note of the processes that will support them.
Agile employees who explore and learn new cloud technologies can lead the adoption of cloud services by helping the organization understand and embrace the associated changes. A mapping of skills to IT roles in a cloud-hosted environment could look like this.
Cloud Adoption Plan
Concluding the planning phase, we are going to look how a cloud adoption plan helps companies balance their IT portfolio and manage transitions over time. Planning for cloud adoption can be a significant change for some organizations. IT organizations have long focused on the application of linear or sequential models of project management, like the waterfall model. The replacement of acquisition cycles with an operating-expense approach helps businesses move more quickly and with smaller financial commitments. This approach helps teams to engage in projects before all requirements are well known. It also creates room for a growth mindset, which frees the team to experiment, learn, and deliver without artificial constraints. That’s why it is highly recommended that teams use agile or iterative approaches to cloud adoption planning.
Establishing clear, actionable priorities is one of the secrets to successful cloud adoption. A good approach is that a team focus on thoroughly prioritizing and documenting the first 10 workloads. After implementation of the adoption plan begins, the team can maintain a list of the next 10 highest-priority workloads. This approach provides enough information to plan for the next few iterations. Limiting the plan to 10 workloads encourages agility and alignment of priorities as business criteria change.
To eliminate any confusion, in the context of a cloud adoption, a workload is a collection of IT assets (servers, VMs, applications, data, or appliances) that collectively support a defined process. Workloads can support more than one process. However, a workload should have defined boundaries regarding the dependent assets and the processes that depend upon the workload. After initial priorities have been defined and workloads have been added to the plan, each of the workloads can be defined via deeper qualitative analysis. Before including any workload in the cloud adoption plan, try to provide the following data points for each workload.
Agile and other iterative methodologies are built on the concepts of iterations and releases. In an iterative approach to technical implementation, one is planning technical efforts around recurring time blocks. Iterations tend to be one-week to six-week time blocks. The choice of iteration duration depends on the type of technical effort, the administrative overhead, and the team’s preference. Aligning efforts to iterations and releases requires an understanding of velocity. Velocity is the amount of work that can be completed in any given iteration. During early planning, velocity is an estimate. After several iterations, velocity becomes a highly valuable indicator of the commitments that the team can make confidently. You can measure velocity in abstract terms like story points. You can also measure it in more tangible terms like hours. Cloud adoption teams estimate the effort required to complete various tasks. Those tasks are then assigned to the first available iteration. During iteration planning, the cloud adoption teams validate and refine estimates. They do so until they have aligned all available velocity to specific tasks. This process continues for each prioritized workload until all efforts align to a forecasted iteration.
Work breakdown structures (WBS) are commonly used in sequential project-management tools. They represent how dependent tasks will be completed over time. Such structures work well when tasks are sequential in nature. The interdependencies in tasks found in cloud adoption make such structures difficult to manage. To fill this gap, one can estimate timelines based on iteration-path assignments by hiding complexity. To develop a timeline, start with releases. Those release objectives create a target date for any business impact. Iterations aid in aligning those releases with specific time durations. If Azure DevOps is used to manage the cloud adoption plan, consider using the Microsoft Delivery Plans extension. This extension can quickly create a visual representation of the timeline that is based on iteration and release assignments.
About the Author:
I am Matthias Gessenay, and I am a Microsoft MVP for Azure, Microsoft Certified Trainer and Azure Architect for Corporate Software. I am in IT for about 20 years, and dealing with Azure since about six years. I am passionate about community and run four Meetup groups.
Gessenay, M. (2020). Microsoft Cloud Adoption Framework for Azure – Plan (Part II). Available at: https://cloudspeed.ch/post/azure-cloud-adoption-framework-part2/ [Accessed: 19th May 2020].
Check out more great Azure content here