什么是UML?
UML是一种可视化的建模语言,不是形式化语言也不是程序设计语言。
什么是Rup?
通过看 UML 视频了解到 Rup(Rational Unified Process) 是统一软件开发过程,这种开发过程包括多次循环,每个阶段又包括多个迭代过程,是一种迭代式开发模式。
它的特点是:1.用例驱动。2.以架构为中心。3.迭代和增量式开发。
UML的构成
UML由事物、关系、图构成。
1.事物分为四种:结构、行为、分组、注记。
1)结构:描述软件系统中的静态元素。
①类
②接口:定义一种操作的规范。(与类的区别:接口中只给出了方法名,并没有给出具体实现;而类中的方法用代码给出了具体实现)
③协作:定义了类与类之间的交互关系
④用例:对动作序列的描述
⑤主动类:对象拥有进程或线程,可以启动控制活动
⑥构件:提供一组接口的实现
⑦节点:程序运行时存在,表示可计算的资源,构件可以驻留在节点内。
2)行为:描述软件系统中的动态行为。
①交互:表示对象之间互相交换消息
②状态机:一个对象响应事件经历的序列
3)分组
①包:封装了类,类似于面向过程之中的模块分层
4)注记(即注释)
2.关系也分为四种:关联、依赖、泛化、实现。
1)关联:表示类与类之间的关系,比如:1:1、 1:N、 M:N
2)依赖:表示一种使用关系,箭头指向被依赖的对象。
3)泛化:表示继承关系,三角箭头指向父类
4)实现:表示一个类实现了一个接口等,三角箭头指向接口
3.最后一种是图,也是最重要的构成部分。
先用一张图来表示图的层次关系:
下面,详细介绍一下各种图的作用:
各种图 | 作用 |
---|---|
用例图 | 描述用户需求,指出各功能的执行者,强调谁使用系统,系统完成哪些功能 |
类图 | 定义系统中的类,描述类的内部结构和类之间的关系 |
对象图 | 类图的一个实例,系统在具体时间点上所包含的对象,以及各对象之间的关系 |
状态图 | 类的对象所有可能的状态以及事件发生时状态的转移条件 |
活动图 | 描述用例要求所要进行的活动以及活动之间的约束关系 |
协作图 | 描述对象之间的合作关系 |
交互序列图 | 对象之间的交互顺序,传递消息的时间顺序,强调消息的发送顺序 |
构件图 | 代码构件的物理结构,以及构件之间的依赖关系 |
部署图 | 系统中硬件的物理体系结构,物理设备之间的连接关系。 |