UML是什么
UML(Unified Modeling Language)是统一建模语言,为面向对象系统的产品进行说明,可视化和编制文档的一种标准语言。
UML基本元素
- 3个基本模块:事务,关系,图
- 4种事务:
- 结构事物:类,接口,协作,用例,活动类,组件,节点
- 行为事物:交互,状态机
- 分组事物:包
- 注释事物:注释
- 4种关系:依赖,关联,实现,泛化
- 10种图:用例图,类图,对象图,包图,部署图,活动图,状态图,序列图,协作图,组件图
UML建模类型
为了区分UML模型,UML建模用不同类型的不同图,以下是3种重要类型的UML建模:
- 结构建模:结构建模具有捕捉静态的功能,包括:类图,对象图,部署图,包图,复合结构图,组件图
- 行为建模:描述了在系统中的相互作用,显示了系统的动态性质,包括:活动图,交互图(协作图,序列图),用例图
- 架构建模:表示的是一个系统的总体框架,包含系统结构和行为的元素。包图是根据架构模型进行的
UML图分类
UML图分为用例视图、设计视图、进程视图、实现视图和拓扑视图,同时又可以分为结构图和行为图两类。
- 结构图:类图,对象图,组件图,部署图
- 行为图:用例图,状态图,活动图,交互图(协作图,序列图)
1.用例图
用例图描述用户,需求以及系统功能单元之间的关系。由参与者,用例和它们之间的关系的组成。
- 系统功能表示为一个用例
- 参与者
- 用例和参与者之间的关系
2.类图
类图是一种静态的结构图,描述了系统的类的集合,类的属性和类之间的关系。在UML类图中,类使用包含类名,属性(field)和方法(method)且带有分割线的矩形表示。
- 类名:粗体,抽象类斜体
属性:
可见性 名称:类型[=默认值]
‘+’:public
‘-‘:private
‘#’:protected方法:
可见性 名称(参数列表 参数1,参数2):返回类型
类与类之间关系如下图所示:
- 实例:
3.对象图
对象图可以看作是类图在某一时刻的实例。
4.组件图
UML组件图又称构建图,描述的是在软件系统中遵从并实现一组接口的软件模块。
Component Diagram = Component + Interface + Relationship + Port + Connector
组件包括:文件,可执行文件,库等。
5.部署图
部署图由节点和节点之间的关系组成。强调物理设备以及之间等连接关系。部署图涉及到性能,可拓展性,可维护性和可移植性等参数,在设计时确定以下构件:节点,节点之间等关系。
6.交互图
UML交互图描述等是对象之间的动态合作关系以及合作合作过程中等行为次序。
UML交互图主要包括对象和消息两类元素,创建交互图的过程实际上是向对象分配任务的过程,是可视化系统等交互行为。
UML交互图包括2种:序列(时序)图和协作图。
- 序列图:显示对象之间的关系,强调对象之间消息的时间顺序
- 协作图:描述对象之间的交互关系
7.状态图
UML状态图描述了一个状态机,状态机包括:状态,转换,事件,活动和动作。
在UML中,状态图由表示状态的节点和表示状态之间转换的带箭头的直线组成。状态的转换由事件触发,每一个状态都有一个初始状态(实心圆),和一个中止状态(半实心圆) 组成。
8.活动图
UML一般用来描述相关用例图,是状态图一种特殊情况,这些状态大多处于活动状态。本质是流程图,但是多了分支,平行流和泳道等功能。
在绘制活动图时,需要确定以下要素:活动,交互,条件和约束。