介紹
UML(統一建模語言UML套件圖對於組織和管理複雜系統的結構至關重要。它們通過將相關的模型元素分組到套件中,提供系統架構的高階視圖。本教程將引導您了解套件圖的基本知識、其目的,以及如何使用Visual Paradigm有效創建它們。
什麼是套件圖?
一種套件圖是一種結構圖,用於展示中大型專案中模型元素的排列與組織方式。它能呈現子系統或模組之間的結構與依賴關係,提供系統的不同視圖,例如多層(又稱多層級)應用程式模型。
關鍵概念
- 套件:一個用於將相關模型元素分組的命名空間。
- 依賴:套件之間的關係,表示一個套件依賴於另一個套件。
- 匯入:一種關係,允許一個套件存取另一個套件的內容。
- 合併:一種關係,將多個套件的內容合併為一個。
套件圖的目的
套件圖用於組織高階系統元素。它們有助於整理包含圖表、文件及其他關鍵交付成果的大型系統。以下是幾個主要目的:
- 簡化複雜的類圖:套件圖可將類別分組到套件中,使複雜的類圖更易於管理。
- 邏輯分組:套件是邏輯相關的UML元素集合,可包含其他套件,提供層次化組織。
- 依賴與關係:套件圖顯示套件之間的依賴關係,表明一個套件的變更可能影響另一個套件。
套件圖概覽
套件圖用於透過將類別分組到套件中,簡化複雜的類圖。套件以頂部帶有小標籤的矩形呈現,套件名稱位於標籤上或矩形內部。依賴關係以虛線箭頭表示,表示若另一個套件的變更可能迫使第一個套件產生變更,則表示第一個套件依賴於第二個套件。
範例
下圖是一個商業模型,其中類別被分組到套件中:
- 套件以頂部帶有小標籤的矩形呈現。
- 套件名稱位於標籤上或矩形內部。
- 虛線箭頭代表依賴關係。
- 若另一個套件的變更可能迫使第一個套件變更,則一個套件依賴於另一個套件。
套件圖的基本概念
套件圖遵循嵌套套件的層次結構。嵌套套件的原子模組通常是類圖。以下是某些限制與符號:
- 套件名稱:套件名稱在系統內應具唯一性,但不同套件內的類別可以具有相同名稱。
- 套件內容:套件可包含完整的圖表、僅元件名稱,或完全不包含任何元件。
- 完全限定名稱:套件的完全限定名稱語法為
擁有套件的名稱 :: 套件名稱。例如,java::util::Date.
符號
套件可透過下列符號表示:
- 嵌套,標籤內標示名稱
- 嵌套,標籤內標示名稱於套件內部
- 完全限定
套件圖中的依賴關係符號
套件圖中的依賴關係可分為兩種子類型:
- <<匯入>>:一個套件匯入另一個套件的功能。
- <<存取>>:一個套件需要依靠另一個套件的功能來協助。
使用者也可定義自己的特徵符號,以表示兩個套件之間的依賴類型。
範例:匯入
在以下範例中,一個套件匯入另一個套件的功能。
範例:存取
在下面的範例中,一個套件需要另一個套件的功能協助。
複雜群組的建模
套件圖通常用來描述套件與其他套件或物件之間的層級關係(群組)。套件代表一個命名空間。
範例:分層結構
分層結構顯示應用程式不同層次如何被組織成套件。
範例:訂單子系統
訂單子系統顯示訂購系統的不同元件如何被分組成套件。
範例:訂單處理系統
訂單處理系統顯示訂單處理系統的不同元件如何被分組成套件。
案例研究:訂單處理系統

讓我們為線上購物商店的「追蹤訂單」情境設計一個套件圖。『追蹤訂單』模組負責提供顧客所訂購產品的追蹤資訊。
問題描述
顧客輸入追蹤序號,『追蹤訂單』模組會查詢系統,並將目前的運送狀態更新給顧客。
建立套件圖的步驟
-
識別套件:
- 追蹤訂單:負責提供追蹤資訊。
- 訂單詳情:包含訂單相關資訊。
- 運送:包含運送狀態相關資訊。
-
識別依賴關係:
- 追蹤訂單應從取得訂單詳情訂單詳情,以及訂單詳情應該知道客戶提供的追蹤資訊。這是一個<<存取>>雙重依賴。
- 要了解運送資訊,運送可以匯入追蹤訂單以方便導航。這是一個<<匯入>>依賴。
-
映射依賴關係:
- 最後,將追蹤訂單與使用者介面框架的依賴關係進行映射,完成訂單處理子系統的套件圖。
現在就嘗試繪製 UML 套件圖
你已經學會了套件圖是什麼以及如何繪製它。是時候創建屬於你自己的套件圖了。取得 Visual Paradigm Community Edition,這是一款免費的 UML 軟體,並使用免費的套件圖工具來建立你自己的套件圖。它簡單易用且直覺。
結論
套件圖是組織和管理複雜系統結構的強大工具。透過理解套件圖的關鍵概念、目的和符號,你可以創建出有效且有意義的圖表,有助於簡化複雜的類圖、整合相關元素,並展現套件之間的依賴關係。
相關連結
透過遵循此全面的教學,你可以有效地創建並理解套件圖,確保系統架構穩健且設計完善。