技術的負債

短期的な開発速度を優先した結果、将来的に追加コストが発生する状態。Ward Cunninghamが提唱。

負債のメタファー

金銭的な負債と同様、技術的負債には「利子」がつく。放置すると複利的に悪化し、変更コストが増大する。

発生要因

認知負荷との関係

技術的負債が蓄積すると、コードベースの複雑さが増し、認知負荷の保持負荷と翻訳負荷が増大する。プロダクションモデルの構築精度が低下し、変更の影響範囲が予測困難になる。

負債の分類

意図的 vs 無意識的

意図的負債は計画的に返済する前提で受け入れるべき。

発生源による3分類

種類 特徴 対応
意図的負債 技術知識を活用しない選択 必ず避けるべき
変化による負債 技術進化・ドメイン変化で発生 早期回収が望ましい
学習による負債 後から学んだ知識で判明 成長の証:早期改善を推奨

割れ窓理論との関係

割れ窓理論が示すように、技術的負債を放置すると改善機会が失われる。市場圧力は継続的で、負債返済の時間が確保できず、スパイラル的に悪化する。

返済方法

関連

参照