『ソフトウェアアーキテクチャの基礎 ― エンジニアリングに基づく体系的アプローチ』を読みました。

表紙

本書はタイトル通り、代表的なアーキテクチャのカタログや、検討すべきアーキテクチャ特性(イリティ)や、アーキテクチャの定量的な評価方法といった、ソフトウェアアーキテクチャの基礎的な内容を網羅しています。しかし、私自身は、第三部を中心としたソフトウェアアーキテクトとして身につけるべきソフトスキルの話や、技術スキルの知識ピラミッドをどのように維持していくかといった話が、特に興味深く感じました。

ボリュームのある本で、正直まだあまり内容を咀嚼できていないので、自分なりのまとめを書くかわりに、印象に残った文章をいくつか引用します。

要するに、アーキテクトが下すほとんどの決定は反発される。

未知の未知があるため、すべてのアーキテクチャはイテレーティブにならざるを得ない。

決定の根拠を示す際にビジネス価値を提示することは、どのようなアーキテクチャ決定であっても極めて重要だ。それはまた、そもそもそのアーキテクチャ決定を下すべきかどうかを判断するための良いリトマス試験でもある。あるアーキテクチャ決定がビジネス価値を提供しないのであれば、それはおそらく良い決定ではなく、再考されるべきだ。