技術的負債
短期的な開発速度を優先した結果、将来的に追加コストが発生する状態。Ward Cunninghamが提唱。
負債のメタファー
金銭的な負債と同様、技術的負債には「利子」がつく。放置すると複利的に悪化し、変更コストが増大する。
発生要因
- 短期的な納期優先
- 知識不足
- 設計の陳腐化
- ドキュメント不足
認知負荷との関係
技術的負債が蓄積すると、コードベースの複雑さが増し、認知負荷の保持負荷と翻訳負荷が増大する。プロダクションモデルの構築精度が低下し、変更の影響範囲が予測困難になる。
意図的負債と無意識的負債
- 意図的負債: ビジネス上の判断で戦略的に受け入れる
- 無意識的負債: 知識不足や怠慢で発生
意図的負債は計画的に返済する前提で受け入れるべき。