UML 圖表製作和資料庫模型化簡易指南

整合模組化語言 (UML) 在許多產業的軟體開發以及非軟體系統中,都扮演非常重要的角色,因為它是一種以視覺方式顯示系統或流程之行為與結構的方式。UML 可協助顯示應用程式結構、系統行為和其他業務流程中的潛在錯誤。  

為何要使用 UML? 

UML 最初是在 1990 年代問世,這要歸功於三位軟體工程師 Grady Booch、Ivar Jacobson 和 James Rumbaugh,因為他們想要開發一種較不混亂的方法來呈現日益複雜的軟體開發,同時又可將方法與流程分開。如今,UML 仍然是開發人員以及各行各業的專案經理、企業負責人、科技企業家和專業人士的必要標準標記法。 

UML 有哪些優點? 

  • 簡化複雜性 
  • 保持暢通的溝通管道 
  • 將軟體和流程的生產自動化  
  • 協助解決長久的架構問題 
  • 提高工作品質 
  • 減少成本和上市時間 

UML 圖表的類型  

UML 圖表有兩個主要類型:結構圖表和行為圖表 (在這些類別中還包含多個其他類別)。存在這些變化是為了代表不同類型的人使用的多種類型的案例和圖表。 

從客戶和專案經理到技術寫作人員、設計師、分析師、編碼人員及品保人員和測試人員,每個角色都會使用特定的圖表來滿足其需求。這表示每種配置都需要不同的焦點和詳細程度。UML 的目標是以視覺方式表達讓每個人都容易理解的圖表。  

基本 UML 圖表
基本 UML 序列圖表的範例。我們有提供範本供您下載

讓我們來仔細了解一下: 

結構圖表 

結構圖表 代表軟體或系統的靜態結構,也可顯示不同的抽象和實作層級。這些用於協助您將組成系統的各種結構視覺化,例如資料庫或應用程式。它們會顯示元件或模組的階層以及這些如何彼此連接和互動。這些工具提供了指引,並可確保系統的所有部分相較於所有其他部分都有如預期般正常運作。 

行為圖表 

這裡的焦點是軟體系統或流程的動態層面。這些圖表會顯示系統的功能,並強調正在模型化的系統中必須發生的事情。  

讓我們來仔細查看每種類別下的許多不同類型的 UML 圖表: 

1.結構 UML 圖表 

  • 類別圖表。這種圖表是軟體開發中最常見的類型,用於描繪系統的邏輯和實體設計並顯示其類別。它看起來類似於流程圖,因為類別會以方塊表示。此圖表提供了不同類別的視覺效果及它們之間的相互關係,每個類別都有三個部分: 
  • 最上方區段:類別名稱 
  • 中間區段:類別屬性 
  • 最下方區段:類別方法或操作 
UML 類別介面圖表
UML 類別介面圖表的範例。我們有提供範本供您下載
  • 物件圖表。通常這種圖表是當做仔細檢查類別圖表是否正確的一種方式。換句話說,就是它是否可用於實務中?它會顯示系統的物件及其關係,並提供需要修正之潛在設計缺陷的較佳檢視。 
  • 元件圖表。也稱為元件流程圖,它會顯示元素的邏輯群組及其關係。換句話說,它會將複雜的系統分割為較小的元件來提供較簡化的檢視。每個片段都使用一個矩形框顯示,其名稱寫在裡面。連接件會定義不同元件之間的關係/相依性。 
  • 複合結構圖表。軟體開發領域之外的任何人很少使用此圖表。原因何在?雖然它類似於類別圖表,但需要更深入探究,它會描述多個類別的內部結構並顯示它們之間的互動。除非您是開發人員,否則最上層檢視可能就提供了足夠的資訊。 
  • 部署圖表。這種圖表會顯示硬體 (節點) 和軟體 (成品) 元件及其關係。它會提供每個軟體元件確切部署位置的視覺化表示。 
  • 封裝圖表。這是用於描繪組成模型的封裝之間的相依性。主要目標是顯示構成複雜系統之各種大型元件之間的關係。 
  • 描述檔圖表。這比較像語言,而不像圖表。描述檔圖表會藉由定義自訂造型、標記值和條件約束來協助建立 UML 圖表的新屬性和語意。這些描述檔可讓您針對不同的平台 (例如 Java Platform Enterprise Edition (Java EE) 或 Microsoft .NET Framework) 和領域 (例如商務程序模型化、服務導向架構、醫療應用等) 自訂 UML 中繼模型。 

2.行為 UML 圖表: 

  • 活動圖表。這種圖表會描繪有清楚的開頭和結尾的逐步流程,這是達成目標所必須進行的一組活動。它會顯示每個活動如何導致下一個活動以及它們如何相互連結。除了軟體開發之外,這些幾乎可用在任何商務環境中。它們也稱為商務程序對應或模型化。 
UML 使用案例圖表
基本 UML 使用案例圖表的範例。我們有提供範本供您下載
  • 使用者案例圖表。這種圖表會描述系統做的事情,但不會描述它如何做。使用者案例是當「執行者」使用系統完成某個流程時所發生的一組事件。執行者定義為從系統外部與系統互動的任何人或事物 (人員、組織或應用程式)。因此,使用案例圖表會以視覺方式描述該序列集合並且呈現系統的功能需求。 
  • 互動概觀圖表。這種圖表通常很複雜,類似於活動圖表,因為兩者都會顯示活動的逐步程序。然而,互動概觀圖表是由不同互動圖表組成的活動圖表,而且會使用與活動圖表相同的註釋 (初始、最終、決策、合併、分支和聯結節點),並增加一些元素,例如互動、互動使用、時間條件約束和期間條件約束。 
  • 時間圖表。當時間成爲關注的焦點時,將使用這種 UML 圖表。這也稱為排序或事件圖表,它不會顯示物件之間的互動或變化。從功能上來說,它會顯示物件和執行者如何沿著時間軸行動。這裡的重點是事件持續多長時間以及根據期間條件約束所發生的變化。時間圖表的主要部分包括: 
    • 生命線:個別參與者 
    • 狀態時間軸:生命線在管線中所經歷的不同狀態 
    • 期間條件約束:滿足條件約束所需的時間 
    • 時間條件約束:參與者需要完成某件事情的時間 
    • 發生毀滅:物件的生命線終點。在生命線上發生毀滅事件後,不會再出現其他事件。 
  • 狀態機器圖表。這種圖表也稱為狀態圖表,而且會在物件的行為很複雜而且細節很重要時套用。它可協助描述某個物件的行為 (有時為操作員的行為) 以及它如何根據內部和外部事件進行變更。 
  • 序列圖表。這種視覺上吸引人的圖表不僅在設計社群中很受歡迎,也擅於顯示所有類型的商務程序。它只會揭示系統的結構,按時間順序顯示訊息的順序以及執行者與物件之間的互動。序列圖表會顯示簡單的反覆項目和分支,對於多工作業很有益處。 
  • 溝通分支。溝通或協作圖表類似於序列圖表。然而,它會強調物件之間的溝通,也會顯示參與互動之物件的組織,並具有更複雜的反覆項目和分支。 

資料庫模型  

UML 也越來越普遍地當做資料庫模型化的一種表示法。這些模型是用於集思廣益、自由格式的圖表製作及創意協作的絕佳視覺化工具。  

雖然 UML 沒有資料模型化的規格,但它可能是有用的圖表製作工具,尤其是因為資料庫中的資料可用於物件導向程式設計。  

讓我們來看一下您可以建立之不同類型的資料庫模型。 

  • 階層式資料庫模型。這個模型久盛不衰,其資料是以樹狀結構組織而成。樹狀結構由稱為區段的幾個群組所構成。它會使用一對多關係。資料存取也是可預測的。 
  • 網路模型。這種模型採用圖形的形式,其中的關係類型為圓弧,而物件類型則為節點。網路模型的結構描述不限於辨識格或階層,不同於其他資料庫模型。 
  • 物件導向資料庫模型。這種模型會搭配關聯的功能和方法使用物件或可重複使用之軟體元素的集合。例如,多媒體資料庫可能包含無法儲存在關聯式資料庫中的影像。或者超文字資料庫允許連結到其他物件。 
  • 關聯式模型。這裡的資料是使用關聯或是擁有欄和列的網格狀數學結構所建構而成,它基本上是表格。 
  • 物件關聯式模型。顧名思義,這種模型是上述兩種模型的組合。它可支援物件、類別、繼承和其他物件導向的元素,也可支援資料類型、表格式結構等,就像在關聯式資料模型中。 
  • 實體-關係模型。這種模型是由實體類型 (人、地點或事物) 所組成。它會顯示這些實體之間可能存在的關係。ER 圖表藉由定義實體、實體的屬性及顯示這兩者之間的關係來說明資料庫的邏輯結構。 
  • 文件模型。這是專為儲存和管理文件或半結構化資料 (而不是不可部分完成的資料) 所設計。它具有樹狀結構,其中每個節點都是代表文件之一部分的物件。 
  • 實體-屬性-值模型。EAV 或開放式結構描述模型,資料會記錄為三欄:  
  1. 實體 (所描述的東西)  
  2. 屬性或參數 (例如名稱、說明、資料類型) 
  3. 屬性的值。 
  • 星型結構描述。這是維度模型的最簡單版本,其中的資料是依照維度和事實來排列。由於它適用於查詢大型資料集合,因此可用於商業智慧和資料倉儲。 

使用軟體簡化 

無論您是要建立資料庫模型還是 UML 圖表,使用 軟體工具 都可簡化及改善此程序。請務必選擇可讓您進行以下作業的工具: 

  • 在符合產業標準 (例如 UML 2.5、BPMN 2.0 和 IEEE) 的內容生態系統中建立包含現成範本和成千上萬之圖案的專業圖表。 
  • 使用資料重疊、圖示、顏色和圖形讓圖表栩栩如生,好讓資料更容易消化,包括單一步驟的 Excel 資料視覺化。 
  • 使用共同撰寫、註解和註釋與其他人協作。 
  • 在瀏覽器或裝置應用程式中幾乎可隨處傳達一個版本的事實及存取圖表。 

在許多產業的軟體開發和非軟體系統中,使用視覺化 UML 圖表可以在成功建立行為流程和結構中發揮至關重要的作用。若要深入了解如何使用 軟體 建立 UML 圖表,請參閱這個逐步 指南。  

開始使用 Visio

透過 Visio 的協助,幾乎能隨時隨地在任何裝置讓構想、資訊和流程視覺化並進行溝通。

立即購買
相關內容
生產力

整合線上行事曆應用程式來提升生產力的 5 個方式

深入閱讀
生產力

使用數位白板,讓會議更具互動性

深入閱讀
生產力

投票可以提高線上會議參與度的 5 個方式

深入閱讀
生產力

遠端工作者共同作業的 5 種方法

深入閱讀

商業見解與構想不會構成專業的稅務或財務建議。您應該連絡您的稅務或財務專家以討論您的情況。