簡介
統一建模語言(英語:Unified Modeling Language,縮寫 UML)是非專利的第三代
建模和規約語言。UML是一種開放的方法,用於說明、可視化、構建和編寫一個正在開發的、面向對象的、軟體密集系統的製品的開放方法。UML展現了一系列最佳工程實踐,這些最佳實踐在對大規模,複雜系統進行建模方面,特別是在
軟體架構層次已經被驗證有效。
這個語言由葛來迪·布區,伊瓦爾·雅各布森與詹姆士·蘭寶於1994年至1995年間,在Rational Software公司中開發,於1996年,又進一步發展。UML集成了
Booch,
OMT和
面向對象軟體工程的概念,將這些方法融合為單一的,通用的,並且可以廣泛使用的建模語言。UML打算成為可以對並發和分散式系統的標準建模語言。
UML並不是一個工業標準,但在Object Management Group的主持和資助下,UML正在逐漸成為工業標準。OMG之前曾經呼籲業界向其提供有關
面向對象的理論及實現的方法,以便製作一個嚴謹的軟體建模語言(Software Modeling Language)。有很多業界的領袖亦真誠地回應OMG,幫助它建立一個業界標準。
模型
在UML系統開發中有三個主要的模型:
功能模型:從用戶的角度展示系統的功能,包括用例圖。
對象模型:採用對象,屬性,操作,關聯等概念展示系統的結構和基礎,包括類別圖、對象圖。
動態模型:展現系統的內部行為。包括序列圖,活動圖,狀態圖。
區分UML模型和UML圖是非常重要的,UML圖,包括用例圖、協作圖、活動圖、序列圖、部署圖、構件圖、類圖、狀態圖,是模型中信息的圖形表達方式,但是UML模型獨立於UML圖存在。
UML的當前版本只提供了模型信息的交換,而沒有提供圖信息的交換。
UML使用一套與Java語言或其他面向對象語言等價物,同時也是
本體論等價物的圖形標記。
概念
UML從來源中使用相當多的概念。我們將之定義於統一建模語言術語彙表。下面僅列代表性的概念。
對於結構而言
對於行為而言
對於關係而言
其他概念
構造型—這規範符號套用到的模型
多重性—多重性標記法與資料庫建模
基數對應,例如:1, 0..1, 1..*