はじめに
- 社内勉強会を行うこととなったため、資料も兼ねて記事として軽くまとめる
- 題材は以下書籍とする
対象エンジニア
- ジュニアクラスエンジニア
- 初心に帰って学び直したいエンジニア
用語
変更容易性
- 変更の対象を局所化し、要件変更や設計変更を受けても修正範囲を小さく抑える性質
- コードの依存関係を整理し、将来の拡張や差し替えを行いやすくする設計上の重要度
- 仕様変更が頻発する現場ほど価値が高い、保守性と適応力の指標
相互運用性
- 異なるモジュール、ライブラリ、システム同士が、前提差を吸収しながら連携できる性質
- 形式、通信方法、責務分担を整えることで、組み合わせの自由度を高める設計原則
- 個別最適より接続容易性を重視し、将来の統合コストを抑えるための基盤
信頼性
- 期待したとおりに動き続け、異常時にも破綻しにくい性質
- 例外処理、入力検証、再試行、冗長化などを通じて安定性を支える観点
- 正しさだけでなく、長時間運用や障害発生時の振る舞いまで含めた品質指標