引言
什么是UML
UML(Unified Modeling Language)统一建模语言,是一种能够描述问题,描述解决方案,起到沟通作用的语言。
它是一种工具,可以贯穿软件开发周期中的每一个阶段,它适用于数据建模,业务建模,对象建模和组件建模。
UML发展历程
UML特点
UML统一了Booch,OMT,和OOSE等方法中的基本概念和符号。
UML吸收了面向对象领域中各种优秀的思想,其中也包括非OO方法的影响。
UML在演变过程中还提出了一些新的概念。
UML的组成
UML包含4种事务:构建事务,行为事务,分组事务和注释事务.
(1),构建事务:构建事务是UML模型的静态部分,描述概念或物理因素,它包括:
1.类:
类是一组具有相同属性,相同操作,相同关系和相同语义的对象的抽象。以上是UML中类图的表示:第一行类名,第二行属性,第三行:行为。
2.接口
接口是指类或组件提供特定服务的一组操作的集合,因此,一个接口描述了类或组件的对外可见的动作。
3.协作
描述了一组事务间的相互协作。
4.用例
用例用于描述一系列的动作,这些动作是系统对一个特定角色执行,在模型中用例是通过协作来实现的。
5.构件
构件也称组件,是物理上可替换的系统部分,他是西安了一个接口的集合。
6.节点
为了能够有效的对部署的结构进行建模,UML引入了节点这一概念,它用来描述实际的PC机,打印机,服务器等软件运行的基础硬件。
(2),行为事务:UML模型图的动态部分,描述跨越空间时间的行为。
1.交互
交互是指实现某一功能的一组构建事务之间的消息集合,涉及消息,动作序列,链接。
2.状态机
状态机用于面熟事务交互在生命周期内响应事件所经历的状态序列。
(3),分组事务:
分组事务是UML模型图的组成部分,用于描述事务或交互在生命周期内响应事件所经历的状态序列。
(4),注释事务:
注释事务是UML模型的解释部分,用来对模型中元素进行说明,解释。
注解:对元素进行约束或解释的简单符号。
UML中的关系
依赖
依赖是两个模型元素间的语义关系,其中一个元素发生变化影响另一个元素的语义。
关联
关联是一个对象与另一个对象间的关系。
泛化
泛化是一种一般化——特殊化的关系,是一般事务(父类)和该事务较为特殊的种类(子类)之间的关系。
实现
实现是类之间的语义关系,其中一个类指定了有另一个类必须执行的约定。
详解
UML的图
用例图
从用户角度描述系统的功能,并指定各功能的操作者。
类图
类图是UML面向对象中最常用的图,类图可以帮助我们更直观地了解一个系统的体系结构。
对象图
对象图是类图的实例,几乎使用与类图完全相同的标识。对象图只能在系统的某个时间段存在。
状态转换机
状态转换机用于描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同事件做出反应的。
活动图
记录单个操作,方法的逻辑,或者单个业务流程的逻辑,描述系统中各种活动的执行顺序,通常用于描述一个操作中所要进行各项活动的执行流程。
顺序图
顺序图描述了对象之间动态的交互关系,主要体现对象之间进行消息传递的时间顺序。
由对象构成。
通信图
显示组件及其交互关系的空间组织结构,它并不侧重于交互的顺序。
构件图
构件图也成为组件图,描述代码部件的物理结构及各部件之间的依赖关系,构件图有助于分析和理解部件之间的相互影响程度。
部署图
描述系统中硬件和软件的物理配置情况和系统体系结构。
包图
展现模型元素的基本组织单元,以及这些组织单元之间的依赖关系,包括引用关系和扩展关系。
组合结构图
描述系统中某一部分的内部内容,包括该部分与系统其他部分的交互点,能够展示该部分内容“内部”参与者的配置情况。
定时图
一种可选的交互图,展现交互过程中的真实时间信息,具体描述对象状态变化的时间点以及维护特定状态的时间段。
UML的视图
用例视图 主要强调从系统外部参与者的角度所看到的或需要的系统功能。
逻辑视图主要从系统的静态结构和动态行为角度显示如何实现系统的功能。
并发视图显示系统的并发性
组件试图用于显示代码组件的组织结构
配置试图主要描述系统如何进行部署,部署指的是将系统配置到有计算机和设备组成的物理结构上。