Level 10 / Project 13 - Legacy Modernization Planner¶
Home: README
Learn Your Way¶
| Read | Build | Watch | Test | Review | Visualize | Try |
|---|---|---|---|---|---|---|
| Concept | This project | — | Quiz | Flashcards | — | — |
Focus¶
- Multi-dimensional scoring (urgency, effort, risk) for prioritization
- Strangler Fig pattern for incremental migration
- Phased roadmap generation with time estimates
- Strategy selection (rewrite, refactor, wrap, replace, retire)
Why this project exists¶
Legacy systems are the backbone of most enterprises. Rewriting everything at once is risky and expensive. The Strangler Fig pattern wraps legacy functionality in new interfaces and redirects traffic incrementally. This project builds a planner that scores components and generates phased roadmaps.
Run (copy/paste)¶
Expected terminal output¶
{
"components_analyzed": 4,
"total_estimated_weeks": 60,
"priorities": [
{"component": "billing-monolith", "priority": 45.2, "strategy": "WRAP"},
...
]
}
Alter it (required)¶
- Add a
team_capacityparameter that limits how many weeks of work can happen in parallel. - Add a
cost_estimatebased on effort score multiplied by an hourly rate. - Add a RETIRE strategy for components with zero monthly traffic.
Break it (required)¶
- Set
business_criticalityto 0 — observe the validation error. - Create a component with zero effort and watch how priority calculation handles division.
- Score a tiny well-documented component and verify it recommends REFACTOR.
Fix it (required)¶
- Add a minimum effort floor of 1 to prevent division-by-zero in priority calculation.
- Handle the edge case where all components have the same priority — add a tiebreaker.
- Test both fixes.
Explain it (teach-back)¶
- What is the Strangler Fig pattern and why is it safer than a big-bang rewrite?
- How do the three scoring dimensions (urgency, effort, risk) interact in the priority formula?
- Why does
has_documentationreduce effort score? - When would you choose REPLACE over WRAP as a modernization strategy?
Mastery check¶
You can move on when you can: - score a legacy component and interpret its priority ranking, - generate a phased roadmap and explain the five phases (assess/wrap/migrate/validate/decommission), - compare Strangler Fig to branch-by-abstraction, - describe real-world modernization examples (e.g., Amazon's monolith decomposition).
Related Concepts¶
| ← Prev | Home | Next → |
|---|---|---|