Migration Readiness Assessment
Step 1: Gather context
Ask the user:
What workload are you planning to migrate? Please share:
- Workload name and code packages/directories to analyze
- Current environment (on-premises, other cloud, colocation)
- Business drivers (cost, agility, compliance, end-of-life hardware, etc.)
- Timeline constraints (optional)
If context is already provided or you are in a codebase, proceed directly.
Step 2: Application Stack Discovery
Analyze the codebase to understand the current application stack.
You MUST examine:
- Programming languages and runtimes (versions, compatibility with AWS services)
- Frameworks and libraries (web frameworks, ORM, messaging)
- Database technologies (relational, NoSQL, search, caching)
- Middleware and message brokers
- External service dependencies (APIs, SaaS integrations)
- Configuration management (config files, environment variables, secrets)
- Operating system dependencies and system-level requirements
- Build and packaging systems (Maven, npm, pip, Docker)
For each component, document:
- File path and line numbers
- Technology and version
- AWS equivalent or migration path
- Migration complexity (simple lift, requires changes, requires rewrite)
- Dependencies on other components
You MUST flag as BLOCKER:
- OS-specific dependencies without cloud equivalents
- Proprietary software with licensing restrictions (Oracle, specific Windows features)
- Hardware-specific dependencies (FPGA, specific CPU instructions, USB dongles)
- Hardcoded IP addresses or hostnames in application code
- Local filesystem dependencies (shared network drives, local storage)
Step 3: Infrastructure Discovery
Analyze existing infrastructure configurations.
You MUST examine:
- Server configurations (CPU, memory, storage requirements)
- Network topology (VLANs, firewalls, load balancers, DNS)
- Storage systems (SAN, NAS, local disk, file shares)
- Database configurations (engine, version, size, replication)
- Monitoring and alerting systems
- Backup and DR configurations
- Security controls (firewalls, IDS/IPS, WAF, certificates)
- Existing IaC if any (Terraform, Ansible, Chef, Puppet)
For each infrastructure component, document:
- Current configuration
- AWS equivalent service
- Migration approach (rehost, replatform, refactor)
- Data volume and transfer considerations
Step 4: Dependency Mapping
Map all internal and external dependencies.
You MUST examine:
- Service-to-service communication (protocols, ports, patterns)
- Database connections (connection strings, pooling, multiple consumers)
- Shared databases or data stores (multiple services writing/reading)
- External API integrations (third-party services, partner APIs)
- Network dependencies (latency-sensitive connections, VPN tunnels)
- Batch job dependencies (scheduling, order of execution)
- Authentication/authorization dependencies (LDAP, AD, SSO)
You MUST create a dependency diagram showing:
- All services and their connections
- Data flows and protocols
- External dependencies
- Migration wave groupings (what must move together)
You MUST flag as HIGH RISK:
- Tight coupling between components that must move together (increases blast radius)
- Shared databases accessed by multiple services (migration ordering constraint)
- Latency-sensitive integrations that will span hybrid during migration
- Hard dependencies on on-premises systems that cannot move (require hybrid connectivity)
---STOP---
Checkpoint: Discovery and dependency mapping complete — ready to determine migration strategy
Mapped the application stack ({X} components), infrastructure configurations, and dependency relationships. Identified {Y} blockers, {Z} high-risk dependencies (shared databases, latency-sensitive integrations), and migration wave groupings.
Shall I proceed with determining the migration strategy (7 Rs) for each component and assessing readiness by pillar?
Do NOT proceed past this point until the user explicitly confirms.
Step 5: Determine migration strategy (7 Rs)
For each component, evaluate which strategy fits based on code evidence:
| Strategy |
When to use |
Code Indicators |
| Rehost |
Fast migration, minimal changes |
Standard OS, containerizable, no OS-specific deps |
| Replatform |
Small optimizations during move |
Self-managed DB → RDS, self-managed cache → ElastiCache |
| Refactor |
Need cloud-native benefits |
Monolith that should be decomposed, stateful → stateless |
| Repurchase |
Replace with SaaS |
Commercial software with AWS/SaaS equivalent |
| Retire |
No longer needed |
Unused code, deprecated services |
| Retain |
Not ready to move |
Hard dependencies, compliance blockers |
| Relocate |
VMware workloads |
VMware-specific configurations |
You MUST justify each recommendation with code evidence.
Step 6: Assess readiness by pillar
For each pillar, provide: Readiness (Ready/Conditionally Ready/Not Ready), Evidence (file:line), Gaps, Actions needed.
Operational Excellence Readiness
- Is there IaC? (CloudFormation, Terraform, CDK, Ansible)
- Are CI/CD pipelines in place? Can they target AWS?
- Is monitoring portable or tied to specific tools?
- Are operational procedures documented?
Security Readiness
- Are there compliance requirements affecting region/service choice?
- How are secrets managed? (hardcoded, vault, config files)
- Are there network security dependencies needing equivalents?
- Is identity management compatible with AWS IAM/Identity Center?
Reliability Readiness
- What is the current availability? What's the target?
- Are there HA mechanisms to replicate?
- What's the acceptable downtime during migration?
- Are backup/recovery procedures tested?
Performance Efficiency Readiness
- Are there latency-sensitive integrations?
- Are there hardware-specific dependencies?
- What are current performance baselines?
- Are there SLAs to maintain during cutover?
Cost Optimization Readiness
- What's the current TCO? (hardware, licensing, ops, facilities)
- Are there licensing implications? (BYOL, license-included, re-purchase)
- Are there existing contracts or prepaid commitments?
Sustainability Readiness
- Can migration reduce resource footprint?
- Are there opportunities for Graviton/serverless?
- Can managed services replace self-managed infrastructure?
Step 7: Risk Assessment
For each risk, assess using Impact × Likelihood:
Impact: Minor (schedule slip, minor rework) | Moderate (significant rework, extended hybrid period) | Severe (migration failure, data loss, extended outage)
Likelihood: Low (unlikely with proper planning) | Medium (possible without specific mitigation) | High (likely given current state)
| Impact |
Likelihood |
Risk Level |
| Severe |
High |
Critical |
| Severe |
Medium |
High |
| Severe |
Low |
High |
| Moderate |
High |
High |
| Moderate |
Medium |
Medium |
| Moderate |
Low |
Medium |
| Minor |
High |
Medium |
| Minor |
Medium |
Low |
| Minor |
Low |
Low |
---STOP---
Checkpoint: Risk assessment complete — ready to produce the final migration assessment
Assessed {N} risks across the migration. Risk distribution: {X} Critical, {Y} High, {Z} Medium, {W} Low. Overall readiness: {Ready / Conditionally Ready / Not Ready}. Critical blockers and mitigations identified.
Shall I produce the full Migration Readiness assessment with migration plan and cost comparison?
Do NOT proceed past this point until the user explicitly confirms.
Step 8: Produce the assessment
# Migration Readiness Assessment: {Workload Name}
## Executive Summary
- **Date**: {date}
- **Packages Analyzed**: {list}
- **Recommended Strategy**: {primary strategy}
- **Overall Readiness**: {Ready / Conditionally Ready / Not Ready}
- **Estimated Effort**: {T-shirt size with justification}
- **Key Risks**: {top 3}
- **Critical Blockers**: {count and brief description}
## Application Stack Summary
| Component | Technology | Version | AWS Equivalent | Strategy | Complexity |
|-----------|-----------|---------|---------------|----------|------------|
| {name} | {tech} | {ver} | {aws service} | {7R} | {Low/Med/High} |
## Dependency Map
{PlantUML diagram showing service dependencies, data flows, and migration wave groupings}
## Readiness Scorecard
| Pillar | Readiness | Score (1-5) | Key Blocker | Action Needed |
|--------|-----------|-------------|-------------|---------------|
| Operational Excellence | {status} | {score} | {blocker} | {action} |
| Security | {status} | {score} | {blocker} | {action} |
| Reliability | {status} | {score} | {blocker} | {action} |
| Performance Efficiency | {status} | {score} | {blocker} | {action} |
| Cost Optimization | {status} | {score} | {blocker} | {action} |
| Sustainability | {status} | {score} | {blocker} | {action} |
## Critical Blockers
{For each: ID, description, evidence (file:line), impact on migration, resolution approach, effort}
## Risks and Mitigations
| Risk | Evidence | Risk Level | Migration Impact | Mitigation | AWS Service |
|------|----------|------------|-----------------|------------|-------------|
| {risk} | {file:line} | {level} | {impact} | {mitigation} | {service} |
## Pre-Migration Checklist
{Ordered by priority — what must be done before migration starts}
- [ ] {action with evidence of why it's needed}
## Migration Plan
### Phase 1: Mobilize (Weeks 1-2)
| Task | Dependencies | AWS Service | Evidence |
|------|-------------|-------------|----------|
{Landing zone, connectivity, tooling setup}
### Phase 2: Migrate (Weeks 3-6)
| Wave | Components | Strategy | Data Volume | Downtime Window |
|------|-----------|----------|-------------|-----------------|
{Component migration waves based on dependency analysis}
### Phase 3: Optimize (Weeks 7-8)
| Optimization | Component | Expected Benefit | AWS Service |
|-------------|-----------|-----------------|-------------|
{Right-sizing, managed services, serverless, Graviton}
## AWS Services for Migration
| Category | Service | Purpose | Relevant Components |
|----------|---------|---------|-------------------|
| Server | AWS MGN | Rehost EC2 | {components} |
| Database | AWS DMS | Replicate with minimal downtime | {components} |
| Data | DataSync / Snowball | Large-scale transfer | {components} |
| Schema | AWS SCT | Schema conversion | {components} |
| Network | Direct Connect / VPN | Hybrid connectivity | {components} |
| Governance | Control Tower | Multi-account | All |
## Cost Comparison
| Category | Current (monthly est.) | AWS Estimated | Delta | Notes |
|----------|----------------------|---------------|-------|-------|
| Compute | {estimate} | {estimate} | {delta} | {basis} |
| Storage | {estimate} | {estimate} | {delta} | {basis} |
| Networking | {estimate} | {estimate} | {delta} | {basis} |
| Licensing | {estimate} | {estimate} | {delta} | {basis} |
| Operations | {estimate} | {estimate} | {delta} | {basis} |
## Next Steps
{Top 5 concrete actions the team should take this week to prepare}
Step 9: Offer follow-up
After delivering the assessment, offer:
Would you like me to:
- Design the AWS landing zone architecture?
- Create a detailed data migration plan for a specific database?
- Estimate AWS costs in detail for specific components?
- Build a pre-migration testing strategy?
- Design the hybrid connectivity architecture?
- Create IaC for the target AWS architecture?
Calibration Guidance
- A workload already containerized with CI/CD and IaC is LARGELY READY — focus on AWS-specific optimizations and data migration planning
- Every blocker and risk MUST have code evidence — don't flag "licensing risk" without checking actual dependencies
- Migration strategy recommendations must be justified by code analysis (not assumptions)
- "Cannot Determine" is valid for runtime characteristics not visible in code (e.g., actual data volumes, network latency requirements)
- For shared databases, always flag the migration ordering constraint — this is the #1 cause of migration complexity
- Cost estimates from static analysis are rough — acknowledge uncertainty and recommend AWS Pricing Calculator for precision
- Acknowledge migration-ready aspects prominently (containerized, stateless, IaC already exists)
1---
2name: migration-readiness
3description: Assess a workload's readiness to migrate to AWS by analyzing existing code, dependencies, configurations, and infrastructure to produce evidence-backed findings covering the 7 Rs, risks, and a migration plan.
4not_for: architecture decision records, single-pillar assessments, cost optimization of existing AWS workloads, full cross-pillar WA review
5version: 2.0.0
6---
7
8# Migration Readiness Assessment
9
10## Step 1: Gather context
11
12Ask the user:
13
14> What workload are you planning to migrate? Please share:
15> - **Workload name** and code packages/directories to analyze
16> - **Current environment** (on-premises, other cloud, colocation)
17> - **Business drivers** (cost, agility, compliance, end-of-life hardware, etc.)
18> - **Timeline constraints** (optional)
19
20If context is already provided or you are in a codebase, proceed directly.
21
22## Step 2: Application Stack Discovery
23
24Analyze the codebase to understand the current application stack.
25
26You MUST examine:
27- Programming languages and runtimes (versions, compatibility with AWS services)
28- Frameworks and libraries (web frameworks, ORM, messaging)
29- Database technologies (relational, NoSQL, search, caching)
30- Middleware and message brokers
31- External service dependencies (APIs, SaaS integrations)
32- Configuration management (config files, environment variables, secrets)
33- Operating system dependencies and system-level requirements
34- Build and packaging systems (Maven, npm, pip, Docker)
35
36For each component, document:
37- File path and line numbers
38- Technology and version
39- AWS equivalent or migration path
40- Migration complexity (simple lift, requires changes, requires rewrite)
41- Dependencies on other components
42
43You MUST flag as BLOCKER:
44- OS-specific dependencies without cloud equivalents
45- Proprietary software with licensing restrictions (Oracle, specific Windows features)
46- Hardware-specific dependencies (FPGA, specific CPU instructions, USB dongles)
47- Hardcoded IP addresses or hostnames in application code
48- Local filesystem dependencies (shared network drives, local storage)
49
50## Step 3: Infrastructure Discovery
51
52Analyze existing infrastructure configurations.
53
54You MUST examine:
55- Server configurations (CPU, memory, storage requirements)
56- Network topology (VLANs, firewalls, load balancers, DNS)
57- Storage systems (SAN, NAS, local disk, file shares)
58- Database configurations (engine, version, size, replication)
59- Monitoring and alerting systems
60- Backup and DR configurations
61- Security controls (firewalls, IDS/IPS, WAF, certificates)
62- Existing IaC if any (Terraform, Ansible, Chef, Puppet)
63
64For each infrastructure component, document:
65- Current configuration
66- AWS equivalent service
67- Migration approach (rehost, replatform, refactor)
68- Data volume and transfer considerations
69
70## Step 4: Dependency Mapping
71
72Map all internal and external dependencies.
73
74You MUST examine:
75- Service-to-service communication (protocols, ports, patterns)
76- Database connections (connection strings, pooling, multiple consumers)
77- Shared databases or data stores (multiple services writing/reading)
78- External API integrations (third-party services, partner APIs)
79- Network dependencies (latency-sensitive connections, VPN tunnels)
80- Batch job dependencies (scheduling, order of execution)
81- Authentication/authorization dependencies (LDAP, AD, SSO)
82
83You MUST create a dependency diagram showing:
84- All services and their connections
85- Data flows and protocols
86- External dependencies
87- Migration wave groupings (what must move together)
88
89You MUST flag as HIGH RISK:
90- Tight coupling between components that must move together (increases blast radius)
91- Shared databases accessed by multiple services (migration ordering constraint)
92- Latency-sensitive integrations that will span hybrid during migration
93- Hard dependencies on on-premises systems that cannot move (require hybrid connectivity)
94
95---STOP---
96**Checkpoint**: Discovery and dependency mapping complete — ready to determine migration strategy
97
98> Mapped the application stack ({X} components), infrastructure configurations, and dependency relationships. Identified {Y} blockers, {Z} high-risk dependencies (shared databases, latency-sensitive integrations), and migration wave groupings.
99>
100> **Shall I proceed with determining the migration strategy (7 Rs) for each component and assessing readiness by pillar?**
101
102Do NOT proceed past this point until the user explicitly confirms.
103---
104
105## Step 5: Determine migration strategy (7 Rs)
106
107For each component, evaluate which strategy fits based on code evidence:
108
109| Strategy | When to use | Code Indicators |
110|----------|-------------|-----------------|
111| **Rehost** | Fast migration, minimal changes | Standard OS, containerizable, no OS-specific deps |
112| **Replatform** | Small optimizations during move | Self-managed DB → RDS, self-managed cache → ElastiCache |
113| **Refactor** | Need cloud-native benefits | Monolith that should be decomposed, stateful → stateless |
114| **Repurchase** | Replace with SaaS | Commercial software with AWS/SaaS equivalent |
115| **Retire** | No longer needed | Unused code, deprecated services |
116| **Retain** | Not ready to move | Hard dependencies, compliance blockers |
117| **Relocate** | VMware workloads | VMware-specific configurations |
118
119You MUST justify each recommendation with code evidence.
120
121## Step 6: Assess readiness by pillar
122
123For each pillar, provide: **Readiness** (Ready/Conditionally Ready/Not Ready), **Evidence** (file:line), **Gaps**, **Actions needed**.
124
125### Operational Excellence Readiness
126- Is there IaC? (CloudFormation, Terraform, CDK, Ansible)
127- Are CI/CD pipelines in place? Can they target AWS?
128- Is monitoring portable or tied to specific tools?
129- Are operational procedures documented?
130
131### Security Readiness
132- Are there compliance requirements affecting region/service choice?
133- How are secrets managed? (hardcoded, vault, config files)
134- Are there network security dependencies needing equivalents?
135- Is identity management compatible with AWS IAM/Identity Center?
136
137### Reliability Readiness
138- What is the current availability? What's the target?
139- Are there HA mechanisms to replicate?
140- What's the acceptable downtime during migration?
141- Are backup/recovery procedures tested?
142
143### Performance Efficiency Readiness
144- Are there latency-sensitive integrations?
145- Are there hardware-specific dependencies?
146- What are current performance baselines?
147- Are there SLAs to maintain during cutover?
148
149### Cost Optimization Readiness
150- What's the current TCO? (hardware, licensing, ops, facilities)
151- Are there licensing implications? (BYOL, license-included, re-purchase)
152- Are there existing contracts or prepaid commitments?
153
154### Sustainability Readiness
155- Can migration reduce resource footprint?
156- Are there opportunities for Graviton/serverless?
157- Can managed services replace self-managed infrastructure?
158
159## Step 7: Risk Assessment
160
161For each risk, assess using Impact × Likelihood:
162
163**Impact**: Minor (schedule slip, minor rework) | Moderate (significant rework, extended hybrid period) | Severe (migration failure, data loss, extended outage)
164
165**Likelihood**: Low (unlikely with proper planning) | Medium (possible without specific mitigation) | High (likely given current state)
166
167| Impact | Likelihood | Risk Level |
168|----------|------------|------------|
169| Severe | High | Critical |
170| Severe | Medium | High |
171| Severe | Low | High |
172| Moderate | High | High |
173| Moderate | Medium | Medium |
174| Moderate | Low | Medium |
175| Minor | High | Medium |
176| Minor | Medium | Low |
177| Minor | Low | Low |
178
179---STOP---
180**Checkpoint**: Risk assessment complete — ready to produce the final migration assessment
181
182> Assessed {N} risks across the migration. Risk distribution: {X} Critical, {Y} High, {Z} Medium, {W} Low. Overall readiness: {Ready / Conditionally Ready / Not Ready}. Critical blockers and mitigations identified.
183>
184> **Shall I produce the full Migration Readiness assessment with migration plan and cost comparison?**
185
186Do NOT proceed past this point until the user explicitly confirms.
187---
188
189## Step 8: Produce the assessment
190
191```markdown
192# Migration Readiness Assessment: {Workload Name}
193
194## Executive Summary
195- **Date**: {date}
196- **Packages Analyzed**: {list}
197- **Recommended Strategy**: {primary strategy}
198- **Overall Readiness**: {Ready / Conditionally Ready / Not Ready}
199- **Estimated Effort**: {T-shirt size with justification}
200- **Key Risks**: {top 3}
201- **Critical Blockers**: {count and brief description}
202
203## Application Stack Summary
204| Component | Technology | Version | AWS Equivalent | Strategy | Complexity |
205|-----------|-----------|---------|---------------|----------|------------|
206| {name} | {tech} | {ver} | {aws service} | {7R} | {Low/Med/High} |
207
208## Dependency Map
209{PlantUML diagram showing service dependencies, data flows, and migration wave groupings}
210
211## Readiness Scorecard
212| Pillar | Readiness | Score (1-5) | Key Blocker | Action Needed |
213|--------|-----------|-------------|-------------|---------------|
214| Operational Excellence | {status} | {score} | {blocker} | {action} |
215| Security | {status} | {score} | {blocker} | {action} |
216| Reliability | {status} | {score} | {blocker} | {action} |
217| Performance Efficiency | {status} | {score} | {blocker} | {action} |
218| Cost Optimization | {status} | {score} | {blocker} | {action} |
219| Sustainability | {status} | {score} | {blocker} | {action} |
220
221## Critical Blockers
222{For each: ID, description, evidence (file:line), impact on migration, resolution approach, effort}
223
224## Risks and Mitigations
225| Risk | Evidence | Risk Level | Migration Impact | Mitigation | AWS Service |
226|------|----------|------------|-----------------|------------|-------------|
227| {risk} | {file:line} | {level} | {impact} | {mitigation} | {service} |
228
229## Pre-Migration Checklist
230{Ordered by priority — what must be done before migration starts}
231- [ ] {action with evidence of why it's needed}
232
233## Migration Plan
234
235### Phase 1: Mobilize (Weeks 1-2)
236| Task | Dependencies | AWS Service | Evidence |
237|------|-------------|-------------|----------|
238{Landing zone, connectivity, tooling setup}
239
240### Phase 2: Migrate (Weeks 3-6)
241| Wave | Components | Strategy | Data Volume | Downtime Window |
242|------|-----------|----------|-------------|-----------------|
243{Component migration waves based on dependency analysis}
244
245### Phase 3: Optimize (Weeks 7-8)
246| Optimization | Component | Expected Benefit | AWS Service |
247|-------------|-----------|-----------------|-------------|
248{Right-sizing, managed services, serverless, Graviton}
249
250## AWS Services for Migration
251| Category | Service | Purpose | Relevant Components |
252|----------|---------|---------|-------------------|
253| Server | AWS MGN | Rehost EC2 | {components} |
254| Database | AWS DMS | Replicate with minimal downtime | {components} |
255| Data | DataSync / Snowball | Large-scale transfer | {components} |
256| Schema | AWS SCT | Schema conversion | {components} |
257| Network | Direct Connect / VPN | Hybrid connectivity | {components} |
258| Governance | Control Tower | Multi-account | All |
259
260## Cost Comparison
261| Category | Current (monthly est.) | AWS Estimated | Delta | Notes |
262|----------|----------------------|---------------|-------|-------|
263| Compute | {estimate} | {estimate} | {delta} | {basis} |
264| Storage | {estimate} | {estimate} | {delta} | {basis} |
265| Networking | {estimate} | {estimate} | {delta} | {basis} |
266| Licensing | {estimate} | {estimate} | {delta} | {basis} |
267| Operations | {estimate} | {estimate} | {delta} | {basis} |
268
269## Next Steps
270{Top 5 concrete actions the team should take this week to prepare}
271```
272
273## Step 9: Offer follow-up
274
275After delivering the assessment, offer:
276
277> Would you like me to:
278> - Design the AWS landing zone architecture?
279> - Create a detailed data migration plan for a specific database?
280> - Estimate AWS costs in detail for specific components?
281> - Build a pre-migration testing strategy?
282> - Design the hybrid connectivity architecture?
283> - Create IaC for the target AWS architecture?
284
285## Calibration Guidance
286
287- A workload already containerized with CI/CD and IaC is LARGELY READY — focus on AWS-specific optimizations and data migration planning
288- Every blocker and risk MUST have code evidence — don't flag "licensing risk" without checking actual dependencies
289- Migration strategy recommendations must be justified by code analysis (not assumptions)
290- "Cannot Determine" is valid for runtime characteristics not visible in code (e.g., actual data volumes, network latency requirements)
291- For shared databases, always flag the migration ordering constraint — this is the #1 cause of migration complexity
292- Cost estimates from static analysis are rough — acknowledge uncertainty and recommend AWS Pricing Calculator for precision
293- Acknowledge migration-ready aspects prominently (containerized, stateless, IaC already exists)
294
295<!--
296Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
297SPDX-License-Identifier: MIT-0
298-->