Legacy systemen zijn oncomfortabel maar vaak waardevol, ze runnen het bedrijf. De beslissing om refactoriseren, vervangen of buiten gebruik te stellen moet gedreven worden door kosten en waarde, niet door afkeer van oude code. "Het is oud en lelijk" is geen reden; "het kost ons geld" is dat wel.
A decision guide
REFACTOR (improve in place) when:
- Core logic is sound; it's holding business value
- Problems are localized; you can improve incrementally
REPLACE (rewrite/migrate) when:
- It blocks important work and can't be incrementally fixed
- Maintenance cost > rebuild cost over a sensible horizon
- It's a growing security or reliability liability
RETIRE (remove entirely) when:
- Its value no longer justifies any maintenance cost
- Usage has dwindled; a simpler path exists
