Les systèmes hérités sont inconfortables mais souvent précieux, ils font tourner l'entreprise. La décision de refactoriser, remplacer ou retirer doit être motivée par le coût et la valeur, non par du dégoût pour le vieux code. « C'est vieux et moche » n'est pas une raison ; « ça nous coûte » l'est.
Pourquoi c'est important
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
