Legacy systems غیر آرام دہ ہیں لیکن اکثر قیمتی ہوتے ہیں، وہ کاروبار کو چلاتے ہیں۔ refactor، replace یا retire کرنے کا فیصلہ لاگت اور قیمت سے ہونا چاہیے، پرانے کوڈ سے نفرت سے نہیں۔ "یہ پرانا اور بدصورت ہے" کوئی وجہ نہیں ہے؛ "یہ ہمیں خرچ ڑ رہا ہے" وجہ ہے۔
فیصلہ کرنے کی رہنمائی
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
