【あーきてくちゃ】

アーキテクチャ とは?

最終更新:
💡 システムの「骨格と設計思想」、どう部品を組み合わせるかの大局的な決め方

システムやソフトウェアの全体的な構造と振る舞いに関わる設計。構成要素の役割・関係・制約などを定め、変更しやすさ、可用性、安全性などの要求に照らして判断する。

📌 このページのポイント
要求に合わせて、全体の構造を考える 販売サービスの構成例 モノリス マイクロサービス 一つの提供単位 個別の提供単位 ユーザー 注文 決済 在庫 ユーザー 注文 決済 在庫 部品の分け方と、連携・運用を設計する
左は一つのアプリ内の部品、右はAPIなどで連携する独立したサービスの例で、線は連携関係を示す。モノリスでも内部を整理でき、マイクロサービスでも互換性・データ・運用の設計が必要。
ひよこ ひよこ
アーキテクチャって何?
ペンギン先生 ペンギン先生
システム全体の骨格や設計方針のことだよ。どんな部品で構成し、何を担当させ、どう通信させるかなどを考える。図を描くだけでなく、変更しやすさや可用性、安全性といった要求をどう満たすか、判断の理由も共有するんだ。
ひよこ ひよこ
ペンギン先生 ペンギン先生
図は販売サービスの機能を分ける例だよ。モノリスは一つのアプリとしてまとめて提供する構成。内部を部品に分けることもできる。マイクロサービスは独立して提供できるサービスに分け、APIなどで連携する。個別に変更・拡張しやすくする一方、通信やデータの整合性、運用の設計が必要になるんだ。
ひよこ ひよこ
MVCって何?
ペンギン先生 ペンギン先生
Modelは状態やビジネスロジック、Viewは表示、Controllerは入力への対応などを担う、役割分担のパターンだよ。アプリの内部をどう整理するかという話で、サービスをいくつに分けて提供するかとは観点が違う。モノリスでもマイクロサービスでも、内部にMVCなどを使えるんだ。
ひよこ ひよこ
アーキテクチャの選択を間違えるとどうなるの?
ペンギン先生 ペンギン先生
要求に合わなければ、変更や運用の負担が増えることがある。重要な判断ほど影響範囲を確認したいね。ただし初期に一度決めて固定するものではない。必要な品質やチームの体制を見て利点と負担を比較し、成長や要求の変化に合わせて評価・改善していこう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「アーキテクチャ」って出てきたら「システムの全体構造と設計方針」と思えばだいたいOK!
📖 おまけ:英語の意味
「Architecture」 = 建築・設計
💬 建物の構造や設計を表す言葉で、ITでも部品の組み合わせや全体の構造を考えるときに使うよ

参考資料

← 用語集にもどる