ソフトウェアアーキテクチャ・ハードパーツ(ソフトウェアアーキテクチャハードパーツ)
分散アーキテクチャのためのトレードオフ分析
- 著者:
- Neal Ford/Mark Richards/Pramod Sadalage/Zhamak Dehghani/島田 浩二(ニール フォード/マーク リチャーズ/ピラモド サダラージ/ズハマック ダギャニー/シマダ コウジ)
- 出版社:
- オライリー・ジャパン
- 出版日:
- 2022年10月27日頃
- ISBN:
- 9784814400065
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
技書の森解説
アーキテクチャの意思決定には「唯一の正解」がないものが多く、本書のタイトルにある「ハードパーツ」とは、まさにそうした正解のない難しい判断を指します。サービスの分割粒度、データの所有権、通信パターン、トランザクション境界など、分散システムを設計するうえで避けて通れない選択を、トレードオフ分析の枠組みに乗せて論じるのが本書の主題です。
著者の Neal Ford をはじめとする ThoughtWorks のアーキテクトたちは、架空のプロジェクトを題材にしたケーススタディで議論を進めます。モノリスをどこで切るか、結合度と凝集度の定量評価をどう行うか、 saga や CQRS をいつ採用すべきかといった問いに対し、複数の選択肢を並べた上で各選択の代償を明示するスタイルは、実務の設計レビューと同じ思考の流れです。
前提知識としてマイクロサービスの基本概念や分散システムの初歩は必要で、設計経験がまったくない段階で読むと抽象度の高さに苦しむかもしれません。ただし、モノリスの限界を感じ始めたチームが「次にどう動くか」を議論する際に、共通の語彙と判断軸を与えてくれる書籍として、分散設計のリファレンスの役割を果たします。
言及 Qiita 記事 (12 件)
なぜ、組織のつくりとソフトウェアアーキテクチャは似てしまうのか
♡ 1093UX, アーキテクチャ, 技術的負債, CleanArchitecture急にマイクロサービスやってと言われた時に読む本
♡ 51アーキテクチャ, microservices, マイクロサービス, マイクロサービスアーキテクチャ, 分散システム共働き世代パパでもできる!?エンジニアらしいアウトプット色々やってみよう!
♡ 37ポエム, ライフハック, AWS認定試験オープンロジを支える技術(2022年版)
♡ 16AdventCalendar2022トランザクショナルサーガパターンを過去のアーキテクチャしくじり例と照らし合わせて振り返ってみる
♡ 13アーキテクチャ, AdventCalendar2023「ソフトウェアアーキテクチャ・ハードパーツ」を読んだので、その感想など
♡ 9設計, アーキテクチャ, 読書感想文「ソフトウェアアーキテクチャメトリクス」を読んだ感想
♡ 8読書感想文, ソフトウェアアーキテクチャ, 適応度関数2022 年 55 冊 本を読むまで知らなかったこと
♡ 7読書, 感想文分散アーキテクチャにおけるデータモデリングのパラダイムシフト
♡ 3イベントソーシング, マイクロサービス, CQRS, データモデリングソフトウェアアーキテクチャはハードパーツである
♡ 2ポエム, アーキテクチャ
言及 Zenn 記事 (1 件)
この本に興味がある方におすすめ
この本に関連
関連記事
本棚を見ればエンジニアのレベルがわかる
エンジニアの本棚に並ぶ本の構成は、その人のスキルレベルとキャリアの方向性を映し出します。本棚の変遷パターンから、自分の現在地と次のステップを読み解く方法を紹介します。
ChatGPT に聞けば済む時代に、あえて本を開く理由
生成 AI で何でも聞ける時代に、技術書を読む意味はあるのか。AI の回答と書籍の知識の決定的な違いを掘り下げ、両者の使い分けを提案します。
1 万行のコードより 1 冊の設計書が勝つ場面
大量のコードを書く力と、適切な設計を選ぶ力は別物です。コード量では解決できない問題に直面したとき、設計の知識がどう効くのかを具体例で解説します。
関連用語
オニオンアーキテクチャ
ドメインロジックを中心に据え、外側の層が内側に依存する同心円状のアーキテクチャ
C4 Model
ソフトウェアアーキテクチャを 4 つの抽象レベルで図示するモデル
クリーンアーキテクチャ
ビジネスロジックを外部の技術的詳細から分離し、依存関係を内側に向けることで変更に強い設計を実現するアーキテクチャ原則
アーキテクチャ
システム全体の構造設計。コンポーネントの分割と関係を決める最上位の設計判断
YAGNI
You Aren't Gonna Need It - 今必要でない機能を先回りして実装しない原則
KISS 原則
Keep It Simple, Stupid - 設計をできるだけシンプルに保つことを求める原則