コンテクスト不足
Definition
コンテクスト不足とは、前提や判断理由が共有されないまま変更が積み重なり、 ソフトウェアの状態を説明できない状況が繰り返し観測される力学を指す。
Dynamics(どう進行していくか)
- 判断や変更が、その時点の局所的な前提だけで行われている状況が観測される
- 前提や理由が構造として残らず、暗黙知として消費されている
- 時間の経過とともに、正の所在や判断基準が不明確になっていく
Observable Signals(現場で見える兆候)
- なぜその実装や挙動になっているのかを説明できない状況が観測される
- 「昔からそうなっている」という説明が増えている
- 仕様・設計・実装のどこに正があるかを特定できない状態が観測される
Amplifying Conditions(強まりやすい条件)
この力学は、次の条件が重なることで強まりやすい。
- 変更の頻度が高く、前提を確認する時間が確保されない
- 判断や合意が、記録や構造として残されない
What This Is Not
- ドキュメント量を増やすことを目的としない
- 特定の開発手法やプロセスを推奨しない
- 個人の記憶力や注意力に依存した改善を求めない
Consequences(続いたときに起きること)
- データ、状態、責務の正を特定できない状況が続き、壊れ方が固定化されていく
- Requirement Analysis が事後的推測として扱われ、判断の再現性が低下する
Connections
- What Breaks: データが壊れる, 状態が壊れる, 責務が壊れる
- Failure Patterns: Decision-less Agility
- Appendix: Information Hiding & Boundaries, Responsibility & Decision, Pattern Language