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-readiness3description: 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.4---56# Migration Readiness Assessment78## Step 1: Gather context910Ask the user:1112> What workload are you planning to migrate? Please share:13> - **Workload name** and code packages/directories to analyze14> - **Current environment** (on-premises, other cloud, colocation)15> - **Business drivers** (cost, agility, compliance, end-of-life hardware, etc.)16> - **Timeline constraints** (optional)1718If context is already provided or you are in a codebase, proceed directly.1920## Step 2: Application Stack Discovery2122Analyze the codebase to understand the current application stack.2324You MUST examine:25- Programming languages and runtimes (versions, compatibility with AWS services)26- Frameworks and libraries (web frameworks, ORM, messaging)27- Database technologies (relational, NoSQL, search, caching)28- Middleware and message brokers29- External service dependencies (APIs, SaaS integrations)30- Configuration management (config files, environment variables, secrets)31- Operating system dependencies and system-level requirements32- Build and packaging systems (Maven, npm, pip, Docker)3334For each component, document:35- File path and line numbers36- Technology and version37- AWS equivalent or migration path38- Migration complexity (simple lift, requires changes, requires rewrite)39- Dependencies on other components4041You MUST flag as BLOCKER:42- OS-specific dependencies without cloud equivalents43- Proprietary software with licensing restrictions (Oracle, specific Windows features)44- Hardware-specific dependencies (FPGA, specific CPU instructions, USB dongles)45- Hardcoded IP addresses or hostnames in application code46- Local filesystem dependencies (shared network drives, local storage)4748## Step 3: Infrastructure Discovery4950Analyze existing infrastructure configurations.5152You MUST examine:53- Server configurations (CPU, memory, storage requirements)54- Network topology (VLANs, firewalls, load balancers, DNS)55- Storage systems (SAN, NAS, local disk, file shares)56- Database configurations (engine, version, size, replication)57- Monitoring and alerting systems58- Backup and DR configurations59- Security controls (firewalls, IDS/IPS, WAF, certificates)60- Existing IaC if any (Terraform, Ansible, Chef, Puppet)6162For each infrastructure component, document:63- Current configuration64- AWS equivalent service65- Migration approach (rehost, replatform, refactor)66- Data volume and transfer considerations6768## Step 4: Dependency Mapping6970Map all internal and external dependencies.7172You MUST examine:73- Service-to-service communication (protocols, ports, patterns)74- Database connections (connection strings, pooling, multiple consumers)75- Shared databases or data stores (multiple services writing/reading)76- External API integrations (third-party services, partner APIs)77- Network dependencies (latency-sensitive connections, VPN tunnels)78- Batch job dependencies (scheduling, order of execution)79- Authentication/authorization dependencies (LDAP, AD, SSO)8081You MUST create a dependency diagram showing:82- All services and their connections83- Data flows and protocols84- External dependencies85- Migration wave groupings (what must move together)8687You MUST flag as HIGH RISK:88- Tight coupling between components that must move together (increases blast radius)89- Shared databases accessed by multiple services (migration ordering constraint)90- Latency-sensitive integrations that will span hybrid during migration91- Hard dependencies on on-premises systems that cannot move (require hybrid connectivity)9293---STOP---94**Checkpoint**: Discovery and dependency mapping complete — ready to determine migration strategy9596> 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.97>98> **Shall I proceed with determining the migration strategy (7 Rs) for each component and assessing readiness by pillar?**99100Do NOT proceed past this point until the user explicitly confirms.101---102103## Step 5: Determine migration strategy (7 Rs)104105For each component, evaluate which strategy fits based on code evidence:106107| Strategy | When to use | Code Indicators |108|----------|-------------|-----------------|109| **Rehost** | Fast migration, minimal changes | Standard OS, containerizable, no OS-specific deps |110| **Replatform** | Small optimizations during move | Self-managed DB → RDS, self-managed cache → ElastiCache |111| **Refactor** | Need cloud-native benefits | Monolith that should be decomposed, stateful → stateless |112| **Repurchase** | Replace with SaaS | Commercial software with AWS/SaaS equivalent |113| **Retire** | No longer needed | Unused code, deprecated services |114| **Retain** | Not ready to move | Hard dependencies, compliance blockers |115| **Relocate** | VMware workloads | VMware-specific configurations |116117You MUST justify each recommendation with code evidence.118119## Step 6: Assess readiness by pillar120121For each pillar, provide: **Readiness** (Ready/Conditionally Ready/Not Ready), **Evidence** (file:line), **Gaps**, **Actions needed**.122123### Operational Excellence Readiness124- Is there IaC? (CloudFormation, Terraform, CDK, Ansible)125- Are CI/CD pipelines in place? Can they target AWS?126- Is monitoring portable or tied to specific tools?127- Are operational procedures documented?128129### Security Readiness130- Are there compliance requirements affecting region/service choice?131- How are secrets managed? (hardcoded, vault, config files)132- Are there network security dependencies needing equivalents?133- Is identity management compatible with AWS IAM/Identity Center?134135### Reliability Readiness136- What is the current availability? What's the target?137- Are there HA mechanisms to replicate?138- What's the acceptable downtime during migration?139- Are backup/recovery procedures tested?140141### Performance Efficiency Readiness142- Are there latency-sensitive integrations?143- Are there hardware-specific dependencies?144- What are current performance baselines?145- Are there SLAs to maintain during cutover?146147### Cost Optimization Readiness148- What's the current TCO? (hardware, licensing, ops, facilities)149- Are there licensing implications? (BYOL, license-included, re-purchase)150- Are there existing contracts or prepaid commitments?151152### Sustainability Readiness153- Can migration reduce resource footprint?154- Are there opportunities for Graviton/serverless?155- Can managed services replace self-managed infrastructure?156157## Step 7: Risk Assessment158159For each risk, assess using Impact × Likelihood:160161**Impact**: Minor (schedule slip, minor rework) | Moderate (significant rework, extended hybrid period) | Severe (migration failure, data loss, extended outage)162163**Likelihood**: Low (unlikely with proper planning) | Medium (possible without specific mitigation) | High (likely given current state)164165| Impact | Likelihood | Risk Level |166|----------|------------|------------|167| Severe | High | Critical |168| Severe | Medium | High |169| Severe | Low | High |170| Moderate | High | High |171| Moderate | Medium | Medium |172| Moderate | Low | Medium |173| Minor | High | Medium |174| Minor | Medium | Low |175| Minor | Low | Low |176177---STOP---178**Checkpoint**: Risk assessment complete — ready to produce the final migration assessment179180> 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.181>182> **Shall I produce the full Migration Readiness assessment with migration plan and cost comparison?**183184Do NOT proceed past this point until the user explicitly confirms.185---186187## Step 8: Produce the assessment188189```markdown190# Migration Readiness Assessment: {Workload Name}191192## Executive Summary193- **Date**: {date}194- **Packages Analyzed**: {list}195- **Recommended Strategy**: {primary strategy}196- **Overall Readiness**: {Ready / Conditionally Ready / Not Ready}197- **Estimated Effort**: {T-shirt size with justification}198- **Key Risks**: {top 3}199- **Critical Blockers**: {count and brief description}200201## Application Stack Summary202| Component | Technology | Version | AWS Equivalent | Strategy | Complexity |203|-----------|-----------|---------|---------------|----------|------------|204| {name} | {tech} | {ver} | {aws service} | {7R} | {Low/Med/High} |205206## Dependency Map207{PlantUML diagram showing service dependencies, data flows, and migration wave groupings}208209## Readiness Scorecard210| Pillar | Readiness | Score (1-5) | Key Blocker | Action Needed |211|--------|-----------|-------------|-------------|---------------|212| Operational Excellence | {status} | {score} | {blocker} | {action} |213| Security | {status} | {score} | {blocker} | {action} |214| Reliability | {status} | {score} | {blocker} | {action} |215| Performance Efficiency | {status} | {score} | {blocker} | {action} |216| Cost Optimization | {status} | {score} | {blocker} | {action} |217| Sustainability | {status} | {score} | {blocker} | {action} |218219## Critical Blockers220{For each: ID, description, evidence (file:line), impact on migration, resolution approach, effort}221222## Risks and Mitigations223| Risk | Evidence | Risk Level | Migration Impact | Mitigation | AWS Service |224|------|----------|------------|-----------------|------------|-------------|225| {risk} | {file:line} | {level} | {impact} | {mitigation} | {service} |226227## Pre-Migration Checklist228{Ordered by priority — what must be done before migration starts}229- [ ] {action with evidence of why it's needed}230231## Migration Plan232233### Phase 1: Mobilize (Weeks 1-2)234| Task | Dependencies | AWS Service | Evidence |235|------|-------------|-------------|----------|236{Landing zone, connectivity, tooling setup}237238### Phase 2: Migrate (Weeks 3-6)239| Wave | Components | Strategy | Data Volume | Downtime Window |240|------|-----------|----------|-------------|-----------------|241{Component migration waves based on dependency analysis}242243### Phase 3: Optimize (Weeks 7-8)244| Optimization | Component | Expected Benefit | AWS Service |245|-------------|-----------|-----------------|-------------|246{Right-sizing, managed services, serverless, Graviton}247248## AWS Services for Migration249| Category | Service | Purpose | Relevant Components |250|----------|---------|---------|-------------------|251| Server | AWS MGN | Rehost EC2 | {components} |252| Database | AWS DMS | Replicate with minimal downtime | {components} |253| Data | DataSync / Snowball | Large-scale transfer | {components} |254| Schema | AWS SCT | Schema conversion | {components} |255| Network | Direct Connect / VPN | Hybrid connectivity | {components} |256| Governance | Control Tower | Multi-account | All |257258## Cost Comparison259| Category | Current (monthly est.) | AWS Estimated | Delta | Notes |260|----------|----------------------|---------------|-------|-------|261| Compute | {estimate} | {estimate} | {delta} | {basis} |262| Storage | {estimate} | {estimate} | {delta} | {basis} |263| Networking | {estimate} | {estimate} | {delta} | {basis} |264| Licensing | {estimate} | {estimate} | {delta} | {basis} |265| Operations | {estimate} | {estimate} | {delta} | {basis} |266267## Next Steps268{Top 5 concrete actions the team should take this week to prepare}269```270271## Step 9: Offer follow-up272273After delivering the assessment, offer:274275> Would you like me to:276> - Design the AWS landing zone architecture?277> - Create a detailed data migration plan for a specific database?278> - Estimate AWS costs in detail for specific components?279> - Build a pre-migration testing strategy?280> - Design the hybrid connectivity architecture?281> - Create IaC for the target AWS architecture?282283## Calibration Guidance284285- A workload already containerized with CI/CD and IaC is LARGELY READY — focus on AWS-specific optimizations and data migration planning286- Every blocker and risk MUST have code evidence — don't flag "licensing risk" without checking actual dependencies287- Migration strategy recommendations must be justified by code analysis (not assumptions)288- "Cannot Determine" is valid for runtime characteristics not visible in code (e.g., actual data volumes, network latency requirements)289- For shared databases, always flag the migration ordering constraint — this is the #1 cause of migration complexity290- Cost estimates from static analysis are rough — acknowledge uncertainty and recommend AWS Pricing Calculator for precision291- Acknowledge migration-ready aspects prominently (containerized, stateless, IaC already exists)