Skip to Content
C4モデル (Japanese Edition)
book

C4モデル (Japanese Edition)

by Simon Brown
June 2026
Intermediate
180 pages
2h 27m
Japanese
O'Reilly Media, Inc.
Content preview from C4モデル (Japanese Edition)

第5章 構成要素 図

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

この章では、単一のコンテナ内に存在する構成要素を拡大表示する方法を提供する、C4コンポーネント図について解説する。

構成要素図の主な特徴

構成要素図の使用目的や使用方法を理解するには、その意図、範囲、コンテンツ、ユースケース、および対象読者を把握しておくと役立つ。

意図

構成要素図は、特にデータストアではなくアプリケーションコンテナについて、以下の質問に答えるのに役立つ。

  • コンテナはどのように構成要素の集合に分解されたか?

  • それらの構成要素の責任は何か?

  • 構成要素は互いにどのようにコラボレーションし、コミュニケーションするのか?

  • 構成要素を実装するために使用される主な技術選択(例:フレームワークやライブラリ)は何か?

  • ソフトウェアエンジニアリングとして、機能を追加するためにどこにコードを書く必要があるか?

事前の設計作業中に構成要素図を作成する場合、構成要素の実装に使用するフレームワークやライブラリといった技術的な詳細が不明なこともあるだろう。繰り返しになるが、心配する必要はない。分かっていることを書き込めばよい。一方、既存のシステムを文書化するために図を作成する場合は、そうした詳細な情報はすでに手元にあるはずだ。

範囲

コンポーネント図のスコープは、単一のコンテナである。3つのアプリケーションから成るソフトウェアシステムを構築する場合、これら3つのコンテナ内の構成要素をすべて同時に示す単一のコンポーネント図を作成したくなるかもしれない。 私はこの誘惑に負けず、代わりに3つの別々の構成要素図を描くことを勧める。コンテナごとに1つの構成要素図だ。こうすることで、3つのより小さくシンプルな構成要素図ができ上がり、図を見るユーザに3つのアプリケーションの内部構造を同時に理解させようとする認知的負荷を強いることもなくなる。

コンテンツ

コンポーネント図には通常、6種類の要素が含まれる。すなわち、人、ソフトウェアシステム、コンテナ(これらはすべて前述のコンテナ図から引き継がれる)に加え、構成要素、コンテナ境界、およびソフトウェアシステム境界である。

人、ソフトウェアシステム、そしてコンテナ

コンポーネント図は、コンテナ図から単一のコンテナにズームインしたものであり、そのコンテナ図自体も多数の人々、ソフトウェアシステム、および他のコンテナに囲まれている。一貫性を保つため、それらの要素はコンポーネント図上でも繰り返されるべきだ。繰り返しになるが、これは同じストーリーをより詳細に描いたものなのである。

構成要素

構成要素図は、コンテナの境界内に存在する構成要素のセットを示す。各構成要素について、以下の情報を記載する。

  • 名前:構成要素の名前

  • 技術:主要な実装技術

  • 説明:構成要素の役割に関する簡単な概要

アプリケーションのコンテキストにおいて、構成要素とは関連するコードのグループである。したがって、構成要素図は、コンテナ内に存在する構成要素(コードのグループ)と、使用されているアーキテクチャスタイルを反映すべきだ。アプリケーションがアーキテクチャ層ごとに整理された構成要素で構成されていると考えるなら、構成要素図も層ごとに整理された構成要素を示す必要がある。 これについては、基本を超えた内容を取り上げる第11章で例を見ていく。同様に、コンテナが「ポートとアダプタ」や「六角形」スタイルで構成された構成要素を利用している場合、図はこれを反映すべきだ。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

製品志向のエンジニア (Japanese Edition)

製品志向のエンジニア (Japanese Edition)

Drew Hoskins
AIプロジェクトの管理 (Japanese Edition)

AIプロジェクトの管理 (Japanese Edition)

Malini Jain Runtasewee, Adrián González Sánchez
AIに適したデータ設計図 (Japanese Edition)

AIに適したデータ設計図 (Japanese Edition)

Navnit Shukla, Kien Pham, Srikanth Sopirala, Harsha Tadiparthi

Publisher Resources

ISBN: 0642572404864