统一建模语言(英语:Unified Modeling Language,缩写 UML)是非专利的第三代建模和规约语言。UML是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软体密集系统的製品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,複杂系统进行建模方面,特别是在软体架构层次已经被验证有效。
基本介绍
- 作品名称:统一建模语言
- 外文名称:UML
- 作品别名:标準建模语言
- 创作年代:1997年
- 作用:支持模型化和软体开发
- 产源:OOA&D,OOAD
简介
统一建模语言(英语: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并不是一个方法学,也不要求使用一个方法学,但是UML对于Rational统一过程来说是必不可少的。
概念
UML从来源中使用相当多的概念。我们将之定义于统一建模语言术语彙表。下面仅列代表性的概念。
对于结构而言
- 执行者,属性,类,元件,接口,对象,包。
对于行为而言
- 活动(UML),事件(UML),讯息(UML),方法(UML),操作(UML),状态(UML),用例(UML)。
对于关係而言
- 聚合,关联,组合,相依,广义化(or继承)。
其他概念
- 构造型—这规範符号套用到的模型
- 多重性—多重性标记法与资料库建模基数对应,例如:1, 0..1, 1..*
- 角色
参见
- 集成开发环境
- 对象约束语言(OCL)
- 对象建模技术
- 面向对象
- XMI,为了交换UML模型的基于XML的格式