UML
UML | |
---|---|
术语名称 | UML |
英语名称 | unified modeling language |
别名 | 统一建模语言 |
UML,全称统一建模语言(unified modeling language)[1],是描述和可视化面向对象系统的一种标准、通用、图形化的建模语言。 UML 本身是一种语言,由于这种语言是图形化的,也经常被叫做 UML 图[2]。
UML 最初有多个不同的类型和版本(严格地说,有些不称作 UML ,应该算前身)。 最初作为一种建模工具被试图应用于一切建模上, 2005 年得到标准化,即 ISO/IEC 19501 ,并同步迭代为 UML 2 。 最初设计目标是一种形式语言,定义严格的数学基础进行自动化处理和模型交换,对图例有严格语法语义规范; 根据这一指导思想,出现了将严格 UML 与其他编程语言进行互相转换(翻译)的工具,兴起了在使用一切标准 UML 建模一切事物的思潮。 但进一步发展过程中,人们发现严格定义难以保证通用性、图形化能力限制了形式化能力、以及实用性上需要开放性与灵活性而非自动化校验, UML 逐渐成为了一种半形式化语言,放弃了数学语法定义,允许一定程度上的自由表达,且不进行自动化验证处理。 现今 UML 通常以不一定完全符合标准的方式作为辅助描述,广泛使用在面向对象系统的建模和刻画中。
UML 中含有多种模型,且有不同分类方式。按主流方式,大概含有以下模型:
- 结构图形
- 行为图形
UML / 统一建模语言 | ||
---|---|---|
结构图表 | 静态模型 | 类图、对象图、组件图/构建图 |
源码结构 | 包图 | |
物理结构 | 制品图、部署图 | |
行为图表 | 场景建模 | 用例图、活动图 |
状态建模 | 状态图/状态机图 | |
动态模型 | 交互概览图、通信图、协作图、时序图/顺序图/序列图 |