π§ Strategy Selection Guide
Making the right choice between Rehost and Refactor strategies
π― Decision Framework
Choosing the right migration strategy is crucial for success. This guide provides a systematic approach to help you make informed decisions.
π Assessment Questionnaire
π Workload Assessment
Answer these questions for each application youβre planning to migrate:
ποΈ Technical Characteristics
Question | Rehost Score | Refactor Score |
---|---|---|
Application Age | Β | Β |
Legacy (10+ years) | +3 | 0 |
Mature (5-10 years) | +2 | +1 |
Modern (0-5 years) | +1 | +3 |
Code Maintainability | Β | Β |
Poor documentation, hard to modify | +3 | 0 |
Some documentation, moderate changes possible | +2 | +2 |
Well-documented, easy to modify | +1 | +3 |
Current Performance | Β | Β |
Acceptable, no issues | +3 | +1 |
Some bottlenecks | +1 | +3 |
Major performance issues | 0 | +3 |
β° Business Requirements
Question | Rehost Score | Refactor Score |
---|---|---|
Migration Timeline | Β | Β |
Urgent (< 3 months) | +3 | 0 |
Moderate (3-6 months) | +2 | +2 |
Flexible (6+ months) | +1 | +3 |
Budget Constraints | Β | Β |
Limited budget | +3 | 0 |
Moderate budget | +2 | +2 |
Flexible budget | +1 | +3 |
Risk Tolerance | Β | Β |
Low risk tolerance | +3 | +1 |
Moderate risk tolerance | +2 | +2 |
High risk tolerance | +1 | +3 |
π₯ Team & Skills
Question | Rehost Score | Refactor Score |
---|---|---|
Cloud Expertise | Β | Β |
Limited cloud experience | +3 | 0 |
Some cloud experience | +2 | +2 |
Strong cloud expertise | +1 | +3 |
Development Resources | Β | Β |
Limited development capacity | +3 | 0 |
Some development capacity | +2 | +2 |
Strong development team | +1 | +3 |
π Scoring Your Assessment
---
title: Strategy Selection Decision Tree
---
flowchart TD
A[π Complete Assessment] --> B{π Calculate Total Scores}
B --> C{Rehost Score vs Refactor Score}
C -->|Rehost > Refactor + 5| D[π¦ Choose REHOST]
C -->|Refactor > Rehost + 5| E[π Choose REFACTOR]
C -->|Scores within 5 points| F[π€ Hybrid Approach]
D --> G[β
Fast Migration Path]
E --> H[β‘ Optimized Cloud Path]
F --> I[π― Phased Migration]
G --> J[π Proceed to Rehost Guide]
H --> K[π Proceed to Refactor Guide]
I --> L[π Consider Both Strategies]
style D fill:#f3e5f5,stroke:#4a148c,stroke-width:2px
style E fill:#e8f5e8,stroke:#1b5e20,stroke-width:2px
style F fill:#fff3e0,stroke:#f57c00,stroke-width:2px
π― Common Decision Scenarios
π¦ Strong Rehost Candidates
π’ Scenario: Legacy ERP System
- β 10-year-old SAP system with customizations
- β Critical business operations depend on it
- β Limited development team familiar with system
- β Tight migration deadline due to data center closure
- β Regulatory requirements for infrastructure control
π‘ Why Rehost?
- Minimal disruption to business operations
- Leverages existing team knowledge
- Meets urgent timeline requirements
- Maintains regulatory compliance
π Strong Refactor Candidates
π» Scenario: Customer Web Portal
- β 3-year-old .NET application with good documentation
- β Performance issues during peak traffic
- β Development team available for enhancements
- β Cost optimization is a priority
- β Scalability requirements are growing
π‘ Why Refactor?
- Leverage Azure App Service for better performance
- Implement auto-scaling for peak traffic
- Reduce long-term operational costs
- Improve development and deployment processes
π― Hybrid Approach Scenarios
ποΈ Scenario: Multi-Tier Application
- Database tier: Rehost to Azure SQL VM (complex stored procedures)
- Application tier: Refactor to Azure App Service (well-architected code)
- Web tier: Refactor to Azure Front Door + CDN (static content)
π Detailed Decision Criteria
π¦ When to Choose Rehost
β Technical Indicators
- Complex dependencies that are hard to untangle
- Legacy frameworks not supported in PaaS
- Custom kernel modules or specific OS requirements
- Third-party software with licensing restrictions
- Compliance requirements for infrastructure control
β Business Indicators
- Time-critical migrations (data center closure, contract expiration)
- Limited budget for application changes
- Risk-averse organization preferring minimal changes
- Proof of concept for cloud adoption
π Example Cost Analysis
Rehost Costs:
βββ π Migration: $10,000 (low complexity)
βββ π° Monthly Operations: $5,000 (VM costs)
βββ π οΈ Ongoing Maintenance: High (OS patches, updates)
Total Year 1: $70,000
π When to Choose Refactor
β Technical Indicators
- Well-architected applications with clear separation of concerns
- Standard frameworks (.NET, Java, Node.js) supported by PaaS
- Performance bottlenecks that cloud services can address
- Scalability requirements that benefit from cloud elasticity
- Integration needs with other cloud services
β Business Indicators
- Long-term cloud strategy with optimization goals
- Development resources available for modernization
- Cost optimization is a priority
- Performance improvement requirements
π Example Cost Analysis
Refactor Costs:
βββ π Migration: $50,000 (development effort)
βββ π° Monthly Operations: $2,000 (PaaS services)
βββ π οΈ Ongoing Maintenance: Low (managed services)
Total Year 1: $74,000
Year 2+: $24,000/year (significant savings)
π οΈ Assessment Tools
π Azure Migrate Hub
- Automated discovery of on-premises workloads
- Dependency mapping for application relationships
- Performance assessment and right-sizing recommendations
- Cost estimates for different migration strategies
π Application Assessment Tools
- Azure App Service Migration Assistant for web applications
- Data Migration Assistant for SQL Server databases
- Server Assessment Tool for infrastructure evaluation
π Decision Matrix Template
---
title: Assessment Framework Summary
---
flowchart LR
subgraph Input [π₯ Inputs]
A[ποΈ Technical Assessment]
B[β° Business Requirements]
C[π₯ Team Capabilities]
D[π° Cost Analysis]
end
subgraph Process [βοΈ Decision Process]
E[π Scoring Matrix]
F[π Risk Assessment]
G[π ROI Analysis]
end
subgraph Output [π€ Strategy Selection]
H[π¦ Rehost Strategy]
I[π Refactor Strategy]
J[π― Hybrid Approach]
end
Input --> Process --> Output
style Input fill:#e3f2fd,stroke:#1976d2
style Process fill:#f3e5f5,stroke:#7b1fa2
style Output fill:#e8f5e8,stroke:#388e3c
π― Decision Validation
β Validation Checklist
Before finalizing your strategy choice:
- π Assessment scores clearly favor one approach
- π₯ Stakeholder alignment on chosen strategy
- π° Budget approval for estimated costs
- β° Timeline feasibility confirmed
- π‘οΈ Risk mitigation plans in place
- π Success criteria defined and measurable
π Strategy Review Points
Plan to review your strategy at these milestones:
- π After pilot migration (first application)
- π Every 10 applications migrated
- π― At major project phases (quarterly reviews)
- β οΈ When issues arise that challenge assumptions
π― Key Takeaways
- π Use the scoring matrix to objectively assess each workload
- π― Consider hybrid approaches when scores are close
- π° Factor in total cost of ownership, not just migration costs
- β° Balance speed vs. optimization based on business priorities
- π Strategy can vary by application - one size doesnβt fit all
- π Document decisions and rationale for future reference
π Next Steps:
- π¦ Chosen Rehost? β Rehost Overview
- π Chosen Refactor? β Refactor Overview
- π€ Need more planning? β Prerequisites & Planning
- Azure VM Baseline Landing Zone
- Azure Migration GitHub Repository