Book「Software Architecture and Decision-Making」1
Software Architecture and Decision-Making: Leveraging Leadership, Technology, and Product Management to Build Great Products
日本語訳書籍
ソフトウェアアーキテクトのための意思決定術 リーダーシップ/技術/プロダクトマネジメントの活用
Amazonで購入
1 Introduction to Software Leadership
ソフトウェア・システム構築の設計図であるソフトウェア・アーキテクチャの目標
目標
品質基準を満たし、長期的またはあらかじめ定義された時間軸において最高の投資収益率(ROI)をもたらすシステムを構築する
判断の役割
ほとんどの設計ミスは、知識不足ではなく、判断力の欠如によって引き起こされます。判断とは
最も重要な結果を最適化するために、考慮された決定を下す能力、または賢明な結論に到達する能力。間違いを犯すのは、将来について、システムを使うユーザーについて、そしてシステムがその能力の限界でどのように機能するかについて、私たちが知らないからである。
私は判断の必要性を感じている。
技術的な課題ではなく、リーダーシップの課題。リーダーシップとは
不確実性を管理し、混沌に秩序をもたらし、より良い未来への希望を与え、その未来に向かって前進すること
自分のビジョンとその実現を他の人々に伝え、そのビジョンに向かって彼らを導くべきである。
優れたリーダーシップと優れたソフトウェアアーキテクチャの判断力の間にはギャップがある。
書籍の目的
リーダーシップとソフトウェアアーキテクチャの判断という2つのギャップを論じる。
ソフトウェアのリーダーシップと、システムを構築する際にそれを最大限に活用する方法について説明。
技術書なので、技術的判断に関する本である。
アーキテクチャとデザインという用語はしばしば同じ意味で使われる。
デザイン
完全な詳細設計図(クラス図やシーケンス図など)
アーキテクチャ
高レベルの概念図(コンポーネント図やコンポーネントレベルのシーケンス図など)
オープン・グループ・アーキテクチャー・フレームワーク(TOGAF)
https://www.opengroup.org/togaf
アーキテクチャーの3つのレイヤー
ビジネスアーキテクチャー層
情報システム・アーキテクチャ層
テクノロジーアーキテクチャ層
書籍の中心は情報システム・アーキテクチャ層。
システムアーキテクチャには、2つの顕著なアプローチ
ウォーターフォール
アジャイル
書籍の焦点はアジャイル・アプローチ。
第1部
不確実性に対処するための 5 つの質問と 7 つの原則
第2部
パフォーマンスとユーザーエクスペリエンス(UX)の2つの分野について掘り下げる
第3部
システムやアプリケーションの構築方法に焦点を当てる。
第4部
すべてをまとめる
memo
「ほとんどの設計ミスは、知識不足ではなく、判断力の欠如によって引き起こされます。」
この文章が全てを表していると思います。