香港公司

UML

9547 171

統一建模語言(Unified Modeling Language,UML)

目錄

  • 1 什麼是統一建模語言
  • 2 UML的模型
  • 3 UML圖形
  • 4 UML的相關概念

什麼是統一建模語言

  統一建模語言(UML,Unified Modeling Language)是非專利的第三代建模和規約語言。UML是一種開放的方法,用於說明、可視化、構建和編寫一個正在開發的、面向對象的、軟體密集系統的製品的開放方法。UML展現了一系列最佳工程實踐,這些最佳實踐在對大規模,複雜系統進行建模方面,特別是在軟體架構層次已經被驗證有效。

  UML集成了Booch,OMT和麵向對象軟體工程的概念,將這些方法融合為單一的,通用的,並且可以廣泛使用的建模語言。UML打算成為可以對併發和分散式系統的標準建模語言。

  UML並不是一個工業標準,但在Object Management Group的主持和資助下,UML正在逐漸成為工業標準。OMG 之前曾經呼籲業界向其提供有關物件導向的理論及實現的方法,以便製作一個嚴謹的軟體塑模語言(software modeling language)。有很多業界的領袖亦真誠地回應OMG,幫助她建立一個業界標準。

物件導向分析的歷史
放大
物件導向分析的歷史

UML的模型

  在UML系統開發中有三個主要的模型:

  • 功能模型:從用戶的角度展示系統的功能,包括用例圖。
  • 對象模型:採用對象,屬性,操作,關聯等概念展示系統的結構和基礎,包括類圖。
  • 動態模型:展現系統的內部行為。包括序列圖,活動圖,狀態圖。

  區分UML模型和UML圖是非常重要的,UML圖,包括用例圖、協作圖、活動圖、序列圖、部署圖、構件圖、類圖、狀態圖,是模型中信息的圖形表達方式,但是UML模型獨立於UML圖存在。XML的當前版本只提供了模型信息的交換,而沒有提供圖信息的交換。

  UML使用一套與Java語言或其他面向對象語言等價物,同時也是本體論等價物的圖形標記。

  UML並不是一個方法學,也不要求使用一個方法學,但是UML對於Rational 統一過程來說是必不可少的。

UML圖形

UML 2.0
放大
UML 2.0

  UML 2.0 中一共定義了13 種圖示(diagrams)。為方便瞭解,可分類成右側的結構。

  結構性圖形(Structure diagrams) 強調的是系統式的建模:

  • 類別圖 (Class Diagram)
  • 元件圖(Component diagram)
  • 複合結構圖(Composite structure diagram)
  • 部署圖(Deployment diagram)
  • 物件圖(Object diagram)
  • 包圖(Package diagram)

  行為式圖形(Behavior diagrams) 強調系統模型中觸發的事件:

  • 活動圖(Activity diagram)
  • 狀態機圖 (State Machine diagram)
  • 使用個案圖 (Use Case Diagram)

  溝通性圖形(Interaction diagrams), 屬於行為圖形的子集合,強調系統模型中的資料流程:

  • 通信圖(Communication diagram]]
  • 交互概述圖(Interaction overview diagram) (UML 2.0)
  • 循序圖(Sequence diagram)
  • 時間圖(UML Timing Diagram) (UML 2.0)

  協定狀態機是狀態機的子變種。它用來塑造網路通訊協定模型。

  UML 並不限定 UML 要素型別非得是某圖形上的型別。一般來說,每個 UML 要素大約會出現在圖的所有型別。這種彈性在 UML 2.0 部分被限定。

  為了要保持工程圖的傳統,在您的 UML 圖上加註用途、約束、或意圖永遠無傷大雅。

UML的相關概念

  UML 從來源中使用相當多的概念. 我們將之定義於統一建模語言術語彙表。下麵僅列代表性的概念.

  • 對於結構而言

執行者,屬性,類,元件,介面,對象,包。

  • 對於行為而言

活動,事件,訊息,方法,操作,狀態,用例。

  • 對於關係而言

聚合,關聯,組合,相依,廣義化 (or 繼承)。

  • 其他概念
    • 構造型 — 這規範符號應用到的模型
    • 多重性 — 多重性標記法與資料庫塑模基數對應,例如: 1, 0..1, 1..*
    • 角色


日本黄色-日本成人