この本では一貫して、 設計とは「判断をどこに閉じ込めるか」という行為である、という視点を扱ってきました。

  • 判断は必ず変わること
  • 壊れることを前提にすること
  • 判断をコードに残すこと
  • 判断をチームで共有すること

ここまで読み進めてきた読者であれば、 設計という行為が、単なる構造設計やパターン選択ではないことは、 すでに感じ取っているはずです。

この終章では、 そうした設計観を踏まえたうえで、 設計者の責任とは何か を改めて言葉にします。


設計者は、正解を当てる人ではない

設計者という言葉から、

  • 先を見通す人
  • 最適解を選べる人
  • 失敗しない構造を作る人

を想像するかもしれません。

しかし、本書の立場は明確です。

設計者は、 正解を当てる人ではありません。

なぜなら、

  • 要件は変わる
  • 前提は崩れる
  • 想定外は必ず起きる

からです。

設計者に求められるのは、 当てる力ではなく、外れたときに耐えられる力です。


設計者の責任は「選び直せる状態」を作ること

では、設計者は何に責任を持つべきなのでしょうか。

それは、 将来、判断を選び直せる状態を残すこと です。

  • どこに判断があるか分かる
  • どの判断が強いか弱いか分かる
  • どこを変えればよいか議論できる

この状態を作ることが、 設計者の責任です。

逆に言えば、

  • なぜこうなっているか分からない
  • 触るのが怖い
  • 壊したら戻せない

という状態を残すことは、 設計者の責任放棄だと言えます。


良い設計は、未来への配慮である

設計は、 その場の問題を解くだけの行為ではありません。

  • 数か月後の自分
  • これから参加するメンバー
  • 自分の知らない誰か

そうした未来の人たちが、 コードと向き合うことになります。

良い設計とは、 未来の他者に対する配慮 です。

  • 迷わなくて済むようにする
  • 壊してよい場所を示す
  • 判断の痕跡を残す

これは、 技術的な話であると同時に、 とても人間的な話でもあります。


設計し続けるという責任

設計は、一度して終わりではありません。

  • 要件が変わる
  • チームが変わる
  • 技術が変わる

そのたびに、 判断を見直し、置き直す必要があります。

設計者の責任とは、

  • 設計を固定しないこと
  • 変化を前提に更新し続けること

でもあります。

壊れることを恐れず、 壊したら直せる状態を保ち続けること。

それが、 設計者としての誠実さです。


この本のまとめ

最後に、この本全体を一文でまとめます。

設計とは、判断を閉じ込め、選び直せる状態を未来に残す行為である。

構造やパターンは、その結果にすぎません。

  • 判断をどこに置くかを考える
  • 判断の強度を選ぶ
  • 判断をコードとチームに残す

これらを繰り返すことが、設計です。

完璧な設計は存在しません。

しかし、 誠実な設計 は存在します。

この本が、 あなた自身の設計の判断を見直すきっかけになれば幸いです。