Legacy systems are rarely replaced because they are old. They are replaced because every new requirement lands slower and riskier than the one before. The instinct is to fix everything with one program and one cutover weekend. That instinct has an expensive failure history.
The alternative is not living with the legacy. It is sequencing its retirement.
Strangler, not switch
Incremental modernization builds the new system around the old one, moving one capability at a time behind stable interfaces. Each increment ships something users touch, retires one dependency on the legacy core, and leaves a rollback path open.
The pattern trades a single terrifying cutover for a series of boring ones. Boring is the goal.
Sequence by risk retired
The order of increments matters more than their size. Rank candidate slices by the risk they retire: the integration nobody understands, the component with one maintainer, the process with a compliance deadline. Value delivered and risk retired, quarter after quarter, is what keeps a modernization program funded and believed.