はむはむエンジニアぶろぐ

プログラミングやファイナンスや健康や目標設定などを中心にブログを書いてます

Clean Architectureの2章( A Tale of Two Values)を読んだまとめ

Clean Architectureの2章( A Tale of Two Values)を読んだまとめ。
私なりの解釈が入っているので注意。


ソフトウェアの価値

ソフトウェアがステークホルダーに提供する2つの価値

  • 振る舞い(機能)
  • 構造(アーキテクチャ)

エンジニアは、この2つの価値を維持する責任がある。
2つはバランスが大事。

優先度を取り間違えて、振る舞いに集中してしまうことが多く発生している。
振る舞いに集中してしまうと、簡単に変更できないソフトウェアになってしまう。
要件変更のたびに、構造が変更されてしまっては新しい機能が構造に適合しなくなってくる。

優先度

重要度と緊急度で優先度をつける。

f:id:secret_hamuhamu:20180227083031j:plain

構造は①と②
振る舞いは①と③

経営陣やマネージャーはアーキテクチャの重要性を評価できないので、よくある間違いは③を①に昇格させてしまうこと。
ソフトウェアアーキテクトは、機能の緊急性よりもアーキテクチャの重要性を主張する責任がある。

ソフトウェアアーキテクトの責任

エンジニアもステークホルダーの一人。
ソフトウェアを保護する責任がある。

ソフトウェアアーキテクトは、機能よりも構造に対して責任を持つ。
機能を簡単に開発・変更・拡張できるアーキテクチャをつくること。

アーキテクチャをないがしろにすると開発コストはどんどん高まっていき、やがて変更不能となる。