导读
1:什么是UML?
2:UML图的基本介绍
3:UML类图的精讲
4:UML状态图精讲
5:总结
6:参考资料
7:画图工具
什么是UML?
简单介绍
官方定义:UML - Unified modeling language UML (统一建模语言),是一种用于软件系统分析和设计的语言工具,用于帮助软件开发人员进行思考和记录思路的结果
UML是对软件密集型系统中的制品进行可视化、详述、构造和文档化的语言。制品{Artifact}是指软件开发过程中产生的各种各样的产物,如模型、源代码、测试用例等。
简单来说,UML是一门语言,在统一的标准规则下,用于给对象建模,可应用于软件开发过程中的不同场景,如需求分析,组件开发,用例测试等等。
UML的历史
面向对象软件工程的概念由Booch提出,Booch也是面向对象方法最早的倡导者之一。Booch 1993表示法比较适用于系统的设计和构造。
Rumbaugh等人提出了面向对象的建模技术(OMT)方法,采用面向对象的概念,并引入各种独立于语言的表示符。用对象模型、动态模型、功能模型和用例模型共同完成对整个系统的建模,所定义的概念和符号可用于软件开发的全过程,软件开发人员不必在不同阶段进行概念和符号的转换。OMT-2适用于分析和描述数据为中心的信息系统。
1994年Jacobson提出了OOSE方法,其最大特点是面向用例,并在用例的描述中引入了外部角色的概念。OOSE适合支持商业工程和需求分析。
1996年10月,UML建模语言获得了700多个公司支持,到1996年年底,UML已稳占面向对象技术市场的85%,成为可视化建模语言事实上的工业标准。
1997年年底,OMG组织(Object Management Group,对象管理组织)采纳UML 1.1作为基于面向对象技术的标准建模语言,目前最新版本为UML 2.0,UML发展史如下图所示。
UML的构成
UML构成主要分成三大块:UML的基本构造块、UML的规则、UML的公共机制
UML的基本构造块
UML的基本构造块包括事物、关系和图。
- 事物是构成模型图的基本符号,表示一些面向对象的基本概念,分为结构事物、行为事物、分组事物和注记事物。
- UML中类与类、类与接口以及接口与接口之间的关系总共有四种:依赖、关联、泛化和实现。
- UML中包括九种图分为五大类:用例图、静态图、行为图、交互图、实现图
其中事物与关系,构成了图
UML的规则
我们不能简单地把UML的构造块随机的摆放在一起,结构良好的模型应该在语义上自我一致,并且与所有的相关模型协调一致。UML有自己的语法和语义规则,分别是命名规则、范围、可见性、完整性和执行。
UML的公共机制
UML的公共机制分别是规格说明、修饰、通用划分以及扩展机制。
- UML不只是一种图形语言,实际上它的图形表示法的每一部分背后都有规格说明。规格说明提供了对构造块的语法和语义上的文字叙述,uml的图形表示法用来对系统提供可视化,规格说明用来描述系统的细节。uml的规格说明提供了一个语义底版,包含了系统各模型的所有部分,并且各部分之间相互联系,保持一致。
- UML表示法中每一个元素都有一个基本符号,可以把各种修饰细节加到这个符号上。
- 通用划分分为类/对象二分法和接口/实现二分法。类是一个抽象,对象是这个抽象的一个具体形式;接口声明了一个契约,而实现则表示了对该契约的具体实施,实现负责如实地实现接口的完整语义。
- 扩展机制是对UML图示符号的扩展,包括构造型(stereotype)、标注型(tagged value)和约束(constraint)。
UML中的视图
用例图
- 用例图
静态图
- 类图
- 对象图
- 包图
行为图
- 状态图
- 交互图
- 活动图
实现图
- 构件图
- 部署图
UML的特点
- 统一的标准
- 可视化、表现能力强
- 独立于过程,UML不依赖于特定的软件开发过程。
- 面向对象。UML是支持面向对象软件开发的建模语言。
- 概念明确,建模表示