#### 什么是UML?
> OMG組織規范聲明 : "統一建模語言(Unified Modeling Language,UML)是一種用于對軟件密集系統的要素進行可視化、制定規范、構建和文檔化的圖形語言。UML提供了一種標準的方式來描述系統藍圖,既包括概念性的事物(如業務過程和系統功能),也包括具體事務(如用特定的編程語言語言編寫的類,數據庫模式和可復用的軟件組件)。
這里著重指出的是UML是一種說明性的“語言”,而不是一種方法或程序。UML通常用來定義軟件系統與細化、編寫、構造系統中的要素,是“寫”設計圖的語言。UML可以用不同的方式來支持軟件開發方法(例如:統一軟件開發過程)-但是它本身并不指定某種方法或過程。
UML 定義了下列領域的標注和語義:
- 用戶交互或用例模型 -描述系統和用戶之間的界定和交互。在某些方面對應于一個需求模型。
- 交互或通信模型 -描述系統中的對象彼此之間如何進行交互以完成工作。
- 狀態或動態模型 -狀態圖表描述隨著時間變化,類所呈現的狀態和條件。活動圖則描述系統即將執行的工作流程。
- 邏輯或類模型 - 描述構成系統的類和對象。
- 物理組件模型 - 描述構成系統的軟件(有時也包含硬件)。
- 物理部署模型 - 描述物理架構與物理架構中組件的部署。
UML 也定義了一些擴展機制,以擴展UML符合特別需要(例如:業務過程建模的擴展)。