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)

第8章 デプロイメント 図

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

価値を提供するためには、構築したソフトウェアをどこかにデプロイし、実行できるようにする必要がある。従来、そのインフラストラクチャは物理サーバであったが、現在では仮想化サーバやインフラストラクチャ・アズ・ア・サービス(IaaS)から、クラウド上のDocker、Kubernetes、プラットフォーム・アズ・ア・サービス(PaaS)環境に至るまで、あらゆるものが考えられる。C4モデルのデプロイメント図は、ソフトウェアのデプロイメントトポロジーを図式化する方法を提供する。

デプロイメント図の重要な側面

デプロイメント図の意図、範囲、コンテンツ、ユースケース、対象者を理解することは、その利用を検討する際に役立つだろう。

意図

デプロイメント図を使用すると、静的モデル内のソフトウェアシステムやコンテナのインスタンスが、特定のデプロイメント環境(開発、テスト、ステージング、本番など)内のインフラにどのようにデプロイされているかを図示できる。

範囲

一般的なガイドラインとして、デプロイメント図の範囲を単一のソフトウェアシステムに限定することを推奨する。つまり、デプロイメント図は、単一のソフトウェアシステムが特定のデプロイメント環境にどのようにデプロイされるかを示すべきである。ただし、複数のソフトウェアシステムを担当しており、それらがすべて同じインフラ上にデプロイされている場合、このガイドラインを緩和して、複数のソフトウェアシステムがそのインフラをどのように共有しているかを示すことを妨げるものは何もない。

コンテンツ

UMLのデプロイメント図を大まかに基にしたC4デプロイメント図には、コンテナインスタンス、ソフトウェアシステムインスタンス、デプロイメントノード、インフラストラクチャノードといった要素が含まれる。

コンテナインスタンス

デプロイメント図の主な目的は、アプリケーションやデータストアのインスタンス(C4コンテナ)が、特定のデプロイメント環境にどのようにデプロイされているかを示すことである。例えば、Javaアプリケーションがオンプレミスのデータセンター内のサーバにデプロイされている様子や、クラウド環境で実行されるDockerコンテナにデプロイされている様子を示すことができる。

ソフトウェアシステムのインスタンス

外部依存関係をソフトウェアシステムとしてモデル化するのと同様に、特定のデプロイ環境におけるそのソフトウェアシステムの具体的なインスタンスをモデル化したい場合もあるだろう。これについては後ほど例を見ていく。

デプロイメントノード

私は、ソフトウェアをデプロイするインフラストラクチャの一部を表すために、デプロイメントノードという概念を使用している。これは、ソフトウェアシステムのインスタンスやコンテナが実行されている場所を表す。以下にいくつかの例を示す。

  • 物理インフラ(例:物理サーバやデバイス)

  • 仮想化インフラ(例:IaaS環境内のサーバや仮想マシン上のサーバ)

  • コンテナ化されたインフラストラクチャ(例:Dockerコンテナ)

  • サーバ環境(例:データベースサーバー、Java EE Webアプリケーションサーバー、Microsoft IISサーバー)

デプロイメントノード自体はネスト可能であり、インフラの階層構造を示すことができる。

インフラストラクチャノード ...

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