UMLパッケージ図入门
UML(統一モデリング言語) パッケージ図は、システムがパッケージにどのように分割されているか、およびこれらのパッケージが互いにどのように依存しているかを示す構造図です。パッケージは要素をグループ化するために使用され、パッケージ間の依存関係は、あるパッケージの変更が別のパッケージにどのように影響するかを示します。このガイドでは、主要な概念、ヒント、テクニックを紹介し、Visual Paradigmという人気のあるUMLツール.
主要な概念
1. パッケージ
「パッケージ」は、UML要素をグループ化するためのメカニズムです。パッケージ名が含まれる上部に小さなタブがあるフォルダアイコンで表されます。
2. 依存関係
依存関係は、あるパッケージが正しく機能するために別のパッケージを必要としていることを示す関係です。これは、依存するパッケージから独立したパッケージを指す破線の矢印で表されます。
3. インポート
インポートは、あるパッケージが別のパッケージの内容にアクセスできるようにする特別な依存関係です。これは、«import»スタereotypeを備えた破線の矢印で表されます。
4. マージ
マージは、あるパッケージの内容が別のパッケージと統合されていることを示す関係です。これは、«merge»スタereotypeを備えた破線の矢印で表されます。
5. 汎化
汎化は、あるパッケージが別のパッケージの特殊化されたバージョンであることを示す関係です。これは、特殊化されたパッケージから一般化されたパッケージを指す実線の矢印と空洞の三角形で表されます。
ヒントとテクニック
- パッケージを整理する:論理的にモデル要素を整理するためにパッケージを使用してください。関連するクラス、ユースケース、その他の要素をまとめてください。
- 命名規則を使用する:パッケージの命名規則を一貫して使用することで、図を理解しやすくします。
- 循環依存を避ける:パッケージ間に循環依存がないことを確認してください。これにより、システムの保守が難しくなる可能性があります。
- 図を文書化する:図にコメントやメモを追加して、各パッケージおよびその関係の目的を説明してください。
パッケージ図の例
以下のパッケージ図は、より大きなシステム内のサブシステムの構造と依存関係を示しており、特に「注文」サブシステムに焦点を当てています。図を分解し、主要な概念を説明しましょう。

1. サブシステム
- サブシステム:全体の図は「注文」という名前のサブシステムを表しています。このサブシステムはより大きなシステムの一部であり、注文に関連する機能をカプセル化しています。
2. パッケージ
- パッケージ:サブシステムは、それぞれが特定の機能またはコンポーネントを表す複数のパッケージに分割されています:
- UI:ユーザーインターフェースパッケージ。
- 注文処理:注文の処理を担当します。
- 価格計算:注文の価格を計算します。
- 外部ストレージ:外部ストレージの要件を管理します。
- ランダムストレージ:特定の種類のストレージ。
- ストリームストレージ:別の特定の種類のストレージ。
3. 依存関係
- 依存関係:破線の矢印は、パッケージ間の依存関係を示しています:
- UI に依存する 注文処理.
- 注文処理 に依存する 価格計算機 および 外部ストレージ.
- 外部ストレージ に依存する ランダムストレージ および ストリームストレージ.
4. 汎化
- 汎化: 図は汎化関係を示している:
- ランダムストレージ および ストリームストレージ は以下の専門化されたバージョンである 外部ストレージ.
5. 外部パッケージへの依存
- 外部パッケージへの依存: UI パッケージは以下の外部パッケージに依存する GUIManager.
6. 抽象パッケージと具象パッケージ
- 抽象パッケージ: StorageMgmtは、一般的なストレージ管理機能を定義する抽象パッケージです。
- 具象パッケージ: RepositoryおよびFileStorageは、StorageMgmtパッケージの具象実装です。
7. インポート
- インポート:Orderingサブシステムは、StorageMgmtパッケージからの機能をインポートします。これはさらにRepositoryおよびFileStorage.
概念の図示
サブシステム
- 「Ordering」サブシステムは、注文に関連するすべてのパッケージおよび機能をカプセル化しています。これは、大きなシステム内でのこの特定の機能に対する明確な境界を提供します。
パッケージ
- UI:すべてのユーザーインターフェース関連のコンポーネントを含みます。
- 注文処理:注文処理のロジックを管理します。
- 価格計算:注文価格の計算を処理します。
- 外部ストレージ: システム外のストレージ要件を管理します。
- ランダムストレージおよびストリームストレージ: ストレージソリューションの特定の実装。
依存関係
- UIは以下のものに依存しています注文処理正常に機能するため。
- 注文処理は以下のものに依存しています価格計算機価格を計算するために、および外部ストレージストレージを管理するために。
- 外部ストレージは以下のものに依存していますランダムストレージおよびストリームストレージ特定のストレージ実装のために。
一般化
- ランダムストレージおよびストリームストレージは以下のものの中核的なバージョンです外部ストレージ、そのプロパティと動作を継承しています。
外部パッケージへの依存
- The UI パッケージは外部 GUIManager パッケージに依存しており、ユーザーインターフェース機能が外部ライブラリまたはコンポーネントに依存していることを示している。
抽象パッケージと具象パッケージ
- StorageMgmt は一般的なストレージ管理機能を定義する抽象パッケージである。
- Repository および FileStorage は StorageMgmt パッケージの具象実装であり、特定のストレージソリューションを提供する。
インポート
- The Ordering サブシステムは StorageMgmt パッケージからの機能をインポートしており、これは Repository および FileStorage によってさらに実装されている。これは、注文管理サブシステムがこれらのパッケージによって提供されるストレージ管理機能に依存していることを示している。
Visual Paradigmを使用した手順ガイド
手順1:新しいプロジェクトを作成する
- Visual Paradigmを開く。
- 「ファイル」>「新規」>「プロジェクト」をクリックする。
- プロジェクト名を入力し、「OK」をクリックする。
ステップ2:パッケージ図の作成
- プロジェクトブラウザで、プロジェクトを右クリックし、「新しい図」>「パッケージ図」を選択します。
- 図の名前を指定して「OK」をクリックします。
ステップ3:パッケージの追加
- 図のツールバーで「パッケージ」アイコンをクリックします。
- 図上でクリックしてパッケージを配置します。
- パッケージをダブルクリックして名前を付けます。
ステップ4:依存関係の追加
- 図のツールバーで「依存関係」アイコンをクリックします。
- 依存するパッケージをクリックし、矢印を独立したパッケージへドラッグします。
ステップ5:インポート関係の追加
- 図のツールバーで「インポート」アイコンをクリックします。
- インポートするパッケージをクリックし、矢印をインポートされるパッケージへドラッグします。
ステップ6:マージ関係の追加
- 図のツールバーで「マージ」アイコンをクリックします。
- マージするパッケージをクリックし、矢印をマージされたパッケージへドラッグします。
ステップ7:一般化関係の追加
- 図のツールバーで「一般化」アイコンをクリックします。
- 特殊化されたパッケージをクリックし、矢印を一般化されたパッケージへドラッグします。
ステップ8:図の保存
- 図を保存するには、「ファイル」>「保存」をクリックします。
参考文献
- Visual Paradigm 公式ウェブサイト: Visual Paradigm
- UML パッケージ図チュートリアル: UML パッケージ図チュートリアル
- UML 規格: OMG UML仕様
結論
UMLパッケージ図は、大規模なシステムの整理と管理に不可欠です。このガイドに従うことで、以下のツールを使って明確で効果的なパッケージ図を作成できます。Visual Paradigm。パッケージを論理的に整理し、命名規則を使用し、循環依存を避け、図を文書化して理解と保守を容易にしてください。
パッケージ図の参考文献











