Mistake #33 : Legacy Rot

100年モノの漬物石

「動いているからヨシ!」。
手を入れず、更新せず、ただそこに在り続けたシステム。
それは熟成されたヴィンテージワインではなく、もはや誰も持ち上げられないほど重く、
腐敗した「漬物石」と化しています。

🥫 塩漬け度診断
  • サーバーOSのバージョンが、メーカーサポート終了(EOL)を迎えている
  • 「このコードが何をしているか知っている人」が社内に一人もいない
  • 改修のお見積りを取ったら「作り直した方が安いです」と言われた
  • ドキュメントの最終更新日が2015年である
⚠️ 警告:あなたのシステムは「生きた化石」です。
今のうちに手を打たないと、ある日突然、寿命を迎えて動かなくなります。

01. 何もしないことのリスク

Since 1998
SYSTEM.jar

Do Not Touch!

ソフトウェアは、放っておけば腐ります。
周りのOSやブラウザ、法律が進化する中で、何もしないことは「後退」を意味します。
セキュリティホールは見つかり続け、ライブラリは古くなり、
やがて「Javaのバージョンが古すぎて、新しいライブラリが一つも入らない」という詰み状態(Checkmate)になります。

現状維持は、
緩やかな死である。

02. 2025年の崖

経済産業省が警告する「2025年の崖」。
レガシーシステムを使い続けることで、年間最大12兆円の経済損失が生じると言われています。
古いシステムのお守りにエンジニアのリソースを奪われ、新しい攻めの開発ができない。
これはもはや技術の問題ではなく、経営のリスクです。

03. ストラングラー・フィグ・パターン

巨大な漬物石を、一気に最新のシステムに置き換えるのは危険です(#15 ビッグバン移行の罠)。
代わりに「絞め殺し植物(Strangler Fig)」の戦略をとりましょう。
古いシステムの周りに、新しい小さなシステムを作り、機能を一つずつ剥がしていきます。
時間をかけて養分(機能)を吸い取り、最終的に古いシステムを枯らして捨てるのです。
これなら、サービスを止めずに若返りを図れます。

執筆:レガシーモダナイゼーション・チーム

古き良きコードに敬意を払いつつ、最新技術で蘇らせる再生医。
COBOLからクラウドへ、モノリスからマイクロサービスへの移行を支援する。