Incremental replacement of a legacy monolith
Our strangler-pattern approach for replacing a critical legacy system domain by domain without downtime.
This is a reference architecture describing how Shivacha approaches this class of system. It does not describe a specific client engagement and contains no client names or results.
Challenge
A business-critical monolith has slow releases, outdated dependencies and undocumented rules. A full rewrite is too risky; standing still is too costly.
Context
Common in banking, insurance, logistics and public sector organisations with systems built over many years.
Approach
How we approach it
- 1
Characterise behaviour
Build tests and extract business rules from code and production data.
- 2
API facade
Route consumers through a facade that can direct traffic to old or new implementations.
- 3
Domain-by-domain replacement
Extract the highest-value, lowest-coupling domains first.
- 4
Parallel running
Compare outputs of old and new paths before switching.
Implementation
Key implementation elements
Change data capture
Keep legacy and new stores consistent during migration.
Reconciliation jobs
Detect divergence between old and new outputs.
Progressive cut-over
Per-customer or per-feature routing changes.
Decommission checklist
Retire legacy components safely.
Outcome
The approach aims to deliver continuous value and reduced risk: each extracted domain ships independently, and the legacy footprint shrinks steadily rather than in one risky event.
Lessons
- Characterisation tests are the safety net for everything that follows.
- Parallel running turns cut-over from a leap of faith into an evidence-based decision.
- Documenting rediscovered business rules has value beyond the migration.
Services
Services involved
Legacy System Modernization
Replace or transform legacy and mainframe-era systems incrementally using strangler patterns, data migration and parallel running.
Learn moreSoftware Modernization
Modernize applications for the cloud: refactor, re-architect, upgrade frameworks and improve performance without disrupting users.
Learn moreMicroservices Development
Microservices architecture done deliberately: domain boundaries, service communication, data ownership and operability.
Learn moreMore work
Other reference architectures
Multi-tenant SaaS foundation built for enterprise readiness
The foundations we put in place when building a SaaS product that will need to sell to enterprises.
Learn morePermission-aware enterprise knowledge assistant
How we design a RAG assistant that answers from thousands of internal documents while respecting every user's access rights.
Learn moreAgentic claims intake with human approval
A reference design for an AI workflow that reads claim submissions, extracts and validates data, and prepares cases for adjusters.
Learn moreNext step
Discuss a similar project.
Building something like "Incremental replacement of a legacy monolith"? Tell us about your goals and constraints and we will reply with an approach and next steps.
- Senior engineer reads every enquiry
- Reply within one business day
- NDA on request
Your details are used only to reply to this enquiry.
