介紹
統一建模語言(UML)圖表是軟體工程中不可或缺的工具,提供一種標準化的方式來視覺化系統的設計。UML圖表可分為三種主要類型:結構圖、行為圖和互動圖。每一種類型在軟體開發週期中都具有獨特的用途,為系統架構與行為的不同方面提供深入的洞察。
結構圖
結構圖呈現系統的靜態視圖或結構。它們廣泛用於記錄軟體架構,並提供系統的概要,強調需要建模的元素。
1. 類圖
類圖是所有物件導向軟體系統的骨幹。它們呈現系統的靜態結構,顯示系統中的類別、屬性和方法。類圖在辨識不同物件與類別之間的關係方面至關重要,使其成為最廣泛使用的UML圖表之一。
2. 結構組合圖
結構組合圖顯示類別內部的各個部分及其之間的關係。它們利用埠、部分和連接器來呈現結構化分類器的內部結構。與類圖不同,結構組合圖以更詳細的方式呈現個別部分。
3. 物件圖
物件圖描述系統在某一特定時間點的靜態結構。它們呈現類別的具體實例及其之間的關係。物件圖可透過提供系統狀態的快照,用來測試類圖的準確性。
4. 元件圖
元件圖呈現系統內物理元件的組織方式。它們用於模擬執行細節,並判斷所規劃的開發過程中是否已考慮到所需的機能需求。元件圖呈現軟體系統各元件之間的結構關係。
5. 部署圖
部署圖呈現系統的軟體與硬體,詳細說明存在的實體元件以及哪些軟體元件正在其上運行。它們提供系統軟體的資訊,並在軟體被使用、分散或部署於具有不同配置的多台機器時被納入。
6. 套件圖
套件圖說明套件及其元素是如何組織的。它們顯示不同套件之間的依賴關係,透過使UML圖表更易理解來進行管理。套件圖用於整理類圖與用例圖,提供系統結構的清晰視圖。
行為圖
行為圖呈現系統的動態視圖,描述其運作方式。它們定義系統內的互動,包括用例圖、狀態圖和活動圖。
1. 狀態機圖
狀態機圖,也稱為狀態圖,利用有限狀態轉移來描述系統的行為。它們模擬類在外部刺激下的動態行為,清楚地展示系統如何在不同狀態之間轉換。
2. 活動圖
活動圖用來模擬從一個活動到另一個活動的控制流程。它們可以模擬順序與並行活動,以視覺方式呈現工作流程以及觸發事件的原因。活動圖對於理解系統的動態行為至關重要。
3. 用例圖
用例圖透過使用參與者和用例來呈現系統的功能。它們封裝了系統的功能需求及其與參與者的關聯,提供系統的用例視圖。用例圖對於理解系統的需求以及與使用者的互動至關重要。
互動圖
互動圖是行為圖的一個子類別,強調物件之間的互動,並描述系統中各種用例元素之間的流程。它們展示物件之間如何互動,以及資料在其中如何流動。
1. 序列圖
序列圖以物件之間隨時間交換訊息的方式,展示物件之間的互動。它們明確指出系統中物件功能發生的順序與方式,提供系統動態行為的清晰視圖。
2. 通訊圖
通訊圖展示物件之間序列訊息的交換。它們著重於物件及其關係,描述系統的靜態與動態行為。通訊圖對於理解物件之間如何溝通至關重要。
3. 時序圖
時序圖是一種特殊的序列圖,用於描述物件在特定時間內的行為。它透過顯示時間與持續時間的限制,來控制狀態與物件行為的變化,提供系統時序行為的詳細視圖。
4. 互動概觀圖
互動概觀圖是活動圖與序列圖的混合體。它們以一系列動作來呈現,將複雜的互動簡化為較簡單的形式。互動概觀圖對於理解系統中不同互動之間的控制流程至關重要。
結論
UML 圖表是不可或缺的工具在軟體工程中,提供了一種標準化的方式來視覺化系統的設計。透過將圖表分類為結構型、行為型與互動型,UML 提供了系統架構與行為的全面視圖。無論您是在記錄系統的靜態結構、模擬其動態行為,還是理解物件之間的互動,UML 圖表提供了確保軟體開發成功的必要洞察。













