UML(Unified Modeling Language)统一建模语言,是对软件密集型系统中的制品(软件开发过程中产生的各种各样的产物,模型,源代码,测试用例等)进行可视化、详述、构造和文档化的语言。
主要特点:
1)统一的标准:UML已被OMG接受为标准的建模语言
2)面向对象
3)可视化、表示能力强大
4)独立于过程
5)概念明确,建模表示法简介,图形结构清晰,容易掌握使用
1.类图(class diagram):
- 矩形方框
- 分为三个区域:类名、类的属性、类的操作
- 类名由多个单词组成;每个单词的首字母要大写,单词之间不用空格
- 属性名和操作名也类似,但首字母不用大写
- 每个操作名的后面都有一堆括号
2.对象图(object diagram):
- 矩形方框
- 对象名首字母小写,对象名下面带下划线
- 冒号左边为实例名,右边为类名对象也可以是匿名
类、对象的表达
3.用例图(use case diagram):
用例:从用户的观点怼系统行为的一个描述;它是用来从用户的观察角度收集系统需求的主要技术
- 直立小人被称为参与者(actor);参与者可以是一个人,也可以是另一个系统
- 椭圆代表用例
- 矩形代表系统
4.状态图(state diagram):
- 圆角矩形
- 最顶端的符号(实心圆)代表其实状态,而最底端的符号(眼形圆)表示终止状态
5.顺序图(sequence diagram):
顺序:类图和对象图表达的是系统的静态结构。在一个运行的系统中,对象之间要发生交互,并且这些要经历一定的时间。UMML顺序图所表达的正是这种基于时间的动态交互。
- 横坐标为系统中的对象
- 每个对象都有一个或多个操作
- 对象间通过相互传递消息来协同工作
- 纵坐标为时间序列
6.活动图(active diagram):
- 活动即工作步骤
- 和流程图很接近
- 圆角矩形(比状态图更窄,更接近椭圆)
- 箭头表示活动的转移
- 实心圆代表起点,眼形圆代表重点
7.协作图(collaboration diagram):
协作图用于展示对象之间的交互关系
对象图展示出对象之间的静态关系,协作图是对对象图的扩展。协作图除了展示对象之间的关联,还显示出对象之间的消息传递
- 关联线附近的箭头线表示对象之间传递的消息,箭头指向消息接收对象
- 消息名称和消息序号附在箭头附近
- 顺序图和协作图之间可以相互转换
8.构件图(component diagram):
软件构件是软件系统的一个物理单元。在UML中,数据文件、表格、可执行文件、文档和动态链接库等都被定义为构件。
构件图和部署图与整个计算机系统密切相关。
- 一个左侧附有两个笑矩形的大矩形框
- 也可以用一个顶部带关键字《Component》的矩形表示
9.部署图(deployment diagram):
UML部署图显示了基于计算机系统的物理体系结构
- 立方体图标
- 立方体之间的连线表示体系之间的关系
UML几个图之间的关系:
静态图: 用例图 类图 对象图 构件图 部署图
动态图: 顺序图 协作图 状态图 活动图
UML的“4+1”视图:
用例视图(Use Case View):用于表示系统功能性需求
逻辑视图(Logical View):用于表示系统的概念设计和子系统结构等
实现视图(Implementation View):用于说明代码的结构
进程视图(Process View):用于说明系统中并发执行和同步的情况
部署视图(Deployment View):用于定义硬件节点的物理结构