問題 No.3912
UMLにおいて、システムを構成するモデル要素(クラス、ユースケース、コンポーネントなど)を名前空間ごとにグループ分けし、それらの依存関係を階層的に表現するために使用する図はどれか。
【正解の解説】
パッケージ図
パッケージ図は、大量のクラスやファイルを整理するための「パソコンのフォルダ分け」のようなものです。大きなシステムを開発する際、機能ごとにフォルダ(パッケージ)で綺麗に分類し、どのフォルダがどのフォルダを参照しているかという依存関係をひと目で分かるように地図化して整理整頓するために使われます。
スポンサーリンク
【その他の選択肢の解説】
コンポーネント図
コンポーネント図はプログラムの部品そのものや実行ファイルの関係図であり、論理的なグループ分けを行うパッケージ図とは管理するレイヤーが異なります。初学者は「部品の集まり=パッケージ」と勘違いしやすいですが、コンポーネント図はあくまで実装レベルの物理的なモジュールを対象にしている点が決定的な違いです。
デプロイメント図
デプロイメント図はサーバーやPCといった物理マシンにソフトウェアがどう配置されるかを示すものであり、設計段階の論理的なグルーピングを行うパッケージ図とは目的が異なります。システム全体の概念的な整理ではなく、実物のハードウェア配置図を見ているとイメージすれば、パッケージ図との違いが明確に分かります。
アクティビティ図
アクティビティ図は「Aの作業が終わったらBの作業を行う」というような処理の順番や条件分岐を表すものであり、フォルダのように構造をまとめるパッケージ図とは全く用途が異なります。動きのあるプロセスを描くのがアクティビティ図であり、静的な構造をフォルダ分けするのがパッケージ図という役割の違いを確実に押さえましょう。