Bit rot

ビット腐敗 とか ソフトウェア腐敗 とかいう言葉があります。

長いこと触っていないと、コードというものは忘れられていくもので。
また大規模になれば、その存在すら記憶に残らないものが増えます。

コンパイル時に叱られればいいんですが、陥穽に嵌っていることすら気づかれない場合はとても悲惨。

必ず実行される部分が「腐った」ときは、動かせば一目で分かるバグが出ることが多いかもしれません。
しかし、「眠っている」部分に関してはそうはいきません。

さらにシステムを熟知した人が抜けていくと、誰も触れない、どんな処理が行われているかすらわからないコードが蓄積されていくのです。

ある日突然、全く弄っていない場所で不具合が出る。
原因の特定にかかるコスト、その部分の挙動とコードを理解し、適切に修正するコスト。

想像するだに恐ろしい…。