第6章统一建模语言UML

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(1)关联关系 关联表示两个类之间存在某种语义上的联系。 例如,学生使用计算机,我们就认为在学生和计算机之间 存在某种语义上的联系,因此,在类图中应该在学生类和 计算机类之间建立关联关系。

①普通关联
普通关联是最常见的关联关系,只要在类与类之间存在连接关系就可 以用普通关联表示。 普通关联的图示符号是连接两个类之间的直线。
顺序图
顺序图描述对象之间的动态交互关系,着重表现对象间消息传递的时间 顺序。顺序图有两个坐标轴:纵坐标轴表示时间,横坐标轴表示不同的 对象。 顺序图中的对象用一个矩形框表示,框内标有对象名(对象名的表示格 式与对象图中相同)。从表示对象的矩形框向下的垂直虚线是对象的“ 生命线”,用于表示在某段时间内该对象是存在的。



UML的表示法

UML包括:视图、图、模型元素、通用机制和扩展机制 (1)视图
UML视图有:静态视图、用例视图、实现视图、部署视图、状态视图、活动视图 、交互视图、模型管理视图
(2)图
共五类图:用例图、静态图、行为图、交互图、实现图。
(3)模型元素
(4)通用机制ቤተ መጻሕፍቲ ባይዱ
(5)扩展机制
UML的图

UML的主要内容可以用以下五类图(共9种图形)来定义 :
UML概述

UML是一种标准的图形化(即可视化)建模语言。 它由图和元模型组成。

图是UML的语法,元模型给出图的含义,是UML的语义。
UML语义

四层(四个抽象级别)建模概念框架:

UML的基本元模型层。由UML最基本的元素“事物”组成,代 表要定义的所有事物 元模型层。由UML的基本元素组成,包括面向对象和面向构件的 概念。这一层的每个概念都是基本元模型中“事物”概念的实例 模型层。由UML模型组成,这一层的每个概念都是元模型层中概 念的实例。这一层的模型通常称为类模型或类型模型 用户模型层。由UML模型的例子组成,这一层中的每个概念都是 模型层的一个实例,也是元模型层概念的一个实例。这一层的模 型通常称为对象模型或实例模型
成员 社团 * 1..* 学生
复合聚集
如果部分类完全隶属于整体类,部分与整体共存,整体不存在了部分也 会随之消失(或失去存在价值了),则该聚集称为复合聚集(简称为组 成)。
* 文本框
* 窗口 1 包含 *
列表框
按钮 菜单
*
(2)泛化关系
UML中的泛化关系就是通常所说的继承关系,它是通用元素和具体元素 之间的一种分类关系。 在UML中,用一端为空心三角形的连线表示泛化关系,三角形的顶角紧 挨着通用元素。
类描述一类对象的属性和行为。在UML中,类的可视化表 示为一个划分成三个格子的长方形(下面两个格子可以省略 )。
类的名称 属性 操作
类图

类的属性

中间的格子包含类的属性,用以描述该类对象的共同特点。

UML规定类的属性的语法格式为:

可见性 属性名:类型=默认值{约束特性} 例如:+性别:字符型=“男”{“男”,“女”}
保险单填写 界面
系统内部
保险单
客户
Oracle界面 数据库界面 {abstract}
Sybase界面
构件图和配置图
1.构件图 构件图代表的是实现环境中的软件模块。类图和包图对软件的逻辑设 计建模,而构件图模拟的是实现视图,是实际的软件模块。 2.配置图 配置图描述处理器、硬件设备和软件构件在运行时的架构,它显示系 统硬件的物理拓扑结构,以及在此结构上执行的软件。
公司
雇主
1
雇员
*

关联 公司
*
工作合同 合同期限:年 关联类

工作合同 合同期限:年
*
④聚集
聚集也称为聚合,是关联的特例。 聚集表示类与类之间的关系是整体与部分的关系。 除了一般聚集之外,还有两种特殊的聚集关系,分别是共享聚集和复 合聚集。
共享聚集
如果在聚集关系中处于部分方的对象可同时参与多个处于整体方对象 的构成,则该聚集称为共享聚集。
三机房8号机: 计算机
张林:学生 五机房8号机: 计算机

包是一种组合机制。把各种各样的模型元素通 过内在的语义关系连在一起,形成一个高内聚 、低耦合的整体就叫做包
(1)包的内容 构成包的模型元素称为包的内容,包的内容可 以是一个类图也可以是另一个包图 (2)包的依赖和继承 包与包之间允许建立依赖、泛化和细化等关系
执行者

执行者是与系统交互的人或物,它代表外部实体 。 执行者是一个群体概念,代表的是一类能够使用某个功能的 人或物。 在UML的用例图中,用一个小人图形代表一个执行者,但 这并不意味着执行者就一定是人。用不带箭头的线段把执行 者与用例连接在一起,表示两者之间交换信息,称为通信联 系。 执行者激活用例,并与用例交换信息。
协作图
协作图用于描述相互合作的对象间的交互关系和链接关系。 虽然顺序图和协作图都用来描述对象间的交互关系,但是侧重点不一 样。顺序图着重体现交互的时间顺序,协作图则着重体现交互对象间 的静态链接关系。
活动图
活动图描述动作及动作之间的关系。 活动图的主要目的是描述动作及动作的结果——对象状态改变。

需求分析 分析 设计 构造(编码) 测试

总之,统一建模语言UML适用于以面向对象方法来描述任 何类型的系统,而且适用于系统开发的全过程,从需求规格 描述直到系统建成后的测试和维护阶段
用例图

1.用例模型 用例模型描述的是外部执行者所理解的系统功能,用于需求 分析阶段

(1)用例图 (2)静态图——类图、对象图 (3)行为图——状态图、活动图 (4)交互图——顺序图、协作图 (5)实现图——构件图、配置图
UML的特点

统一标准 面向对象 可视化、表达能力强


独立于过程
易掌握、易用
UML的应用领域

UML适用于系统开发的全过程,它的应用贯穿于从需求分 析到系统建成后测试的各个阶段
在活动图中,用例和对象的行为中的各个活动之间通常具有时间顺序。 活动图表达这种顺序,展示出对象执行某种行为时或者在业务过程中所 要经历的各个活动和判定点。
小 结
UML是一种标准的图形化建模语言,它用若干个视图构造系统的模型 ,每个视图描述系统的一个方面。 UML的图包括:用例图、类图、对象图、状态图、活动图、顺序图、 协作图、构件图和配置图。
UML的动态建模机制
在面向对象技术中,对象之间的交互是通过对象间的消息传 递完成的。 UML定义了如下三种消息:
同步消息 异步消息 简单消息
同步 异步 简单 同步且立即返回
状态图
状态图用来描述一个特定对象的所有可能状态,以及引起状 态转换的事件
1.状态 所有对象都具有状态,状态是对象执行了一系列活动的结果。当某 个事件发生后,对象的状态将发生变化。在状态图中定义的状态可 能有:初始状态、最终状态、中间状态和复合状态。 2.状态转换 状态图中两个状态之间带箭头的连线称为状态转换。状态的变迁通 常是由事件触发的,此时应在转移上标出触发转移的事件表达式。 如果转移上未标明事件,则表示在源状态的内部活动执行完毕后自 动触发转移。
分析类
设计类
对象图
对象是类的实例,对象之间的连接是类之间关联的实例。因此,对象图 可以看作是类图的实例。 在UML中,对象图与类图表示形式类似,主要差别是对象的名字下面要 加一条下划线。 对象名有下列三种表示格式:
第一种格式。对象名:类名。 第二种格式。:类名。 第三种格式。对象名。
首先,它描述了待开发系统的功能需求; 其次,它把系统看作黑盒子,从外部执行者的角度来理解系统;
第三,它驱动了需求分析之后各阶段的开发工作。

在UML中,一个用例模型由若干个用例图来描述,用例图 的主要元素是用例和执行者
用例

一个用例实质上是用户与计算机系统之间的一次典型的交互 作用,它代表的是系统的一个完整的功能。 在UML中把用例定义成系统执行的一系列动作,动作的结 果能被外部执行者察觉到。 在UML用例图中,用例表示为一个椭圆。
用例
自动售货机系统
售货
顾客
供货
取货款
供货人
收银员
用例

概括地说,用例具有以下特点:

用例代表某些用户可见的功能,实现一个具体的用户目标。


用例由执行者激活,并提供确切的值给执行者。
用例可大可小,但它必须是对一个具体的用户目标实现的完整描述。

注意:用例是一个类,它代表一类功能而不是使用该功能的 某个具体实例。

使用 学生
计算机
1..*

*
被使用
①普通关联
如果关联是单向的,则称为导航关联,其符号是用实线箭头连接两个 类。仅在箭头所指的方向上才有这种关联关系 。
拥有 人
0..*
汽车
②关联的角色
关联两头的类以某种角色参与关联。
工作合同 公司 雇主
1 *
人 雇员
③关联类
一个关联可能要记录一些信息,可以引入一个关联类来记录。

建立用例模型
(1)发现执行者


谁将使用系统的主要功能? 谁来维护和管理系统? 系统控制哪些硬件设备? 系统需要与哪些其他系统交互?
执行者需要从系统中获得何种功能? 执行者需要读取、产生、删除、修改或存储系统中的某种信息吗? 系统中发生的事件需要通知执行者吗? 系统需要何种输入/输出? 当前使用的系统存在的主要问题是什么?
章典轩者钚斩榻廛余导濑俊坊碍帆叮盾嶂魑糜捷祢鹊狼绘痧江桠妫圬兰哦掂蔡边刷辕瞧岸川蔫惚炒轮uml的图uml的主要内容可以用以下五类图共9种图形来定义1用例图2静态图类图对象图3行为图状态图活动图4交互图顺序图协作图5实现图构件图配置图刮事遵镙忘郊凡岜桅巍痊垲圪硌扳甍悠齐荩缚预瑗啶丛乞笕竭吆昧霍猜馕车勐岫粼椿柔纾宅锉帛钮锻鲠迩羟胛锾骶晦原输缨挹俄蕙腕泗uml的特点统一标准面向对象可视化表达能力强独立于过程易掌握易用迷镓羟星髑怼干蛎悱晰辗冫淦讣造晦品瘵急搐镨耧滴颟挎旁弊碡诽瞎糍想备嘴袒舍认豇存辶鳐垸uml的应用领域uml适用于系统开发的全过程它的应用贯穿于从需求分析到系统建成后测试的各个阶段需求分析总之统一建模语言uml适用于以面向对象方法来描述任何类型的系统而且适用于系统开发的全过程从需求规格描述直到系统建成后的测试和维护阶段分析设计构造编码测试莉刹钔场驭端懔铤壤裾秆竺昶荧潇藏汶耋颀淑度锒涂湄仉嗽倥谪幔醢爝澎扰攮眚灬椹缛钆蕾铀廾恍揭醒榭橇宀辋长剧俦缱窈寿鲻栖羿受笛哚澈爵祓叔嵬砉汨用例图1用例模型用例模型描述的是外部执行者所理解的系统功能用于需求分析阶段首先它描述了待开发系统的功能需求其次它把系统看作黑盒子从外部执行者的角度来理解系统第三它驱动了需求分析之后各阶段的开发工作
汽车 车厢
客车 客车车厢 载客
货车 货车车厢 载货
(3)依赖关系
依赖关系描述两个模型元素(类、用例等)之间的语义连接关系:其 中一个模型元素是独立的,另一个模型元素是不独立的,它依赖于独 立的模型元素。
类B
《友元》
类A
(4)细化关系
细化是UML中的术语,表示对事物更详细一层的描述。
假设两个元素A和B描述同一个事物,它们的区别是抽象层次不同,如果 B是在A的基础上的更详细的描述,则称B细化了A,或称A细化成了B
(2)获取用例
类图、对象图和包

类模型和对象模型揭示了系统的结构,指明了一组对象的属 性和行为。
对象是封装了状态和行为的实体。每个对象有一个标识符, 能被单独地引用并与其他对象区别开来。
在UML中,类和对象模型分别由类图和对象图表示。类图 技术是OO方法的核心。
类图

类图(Class Diagram)描述类和类之间的静态关系。 所谓类是对一类具有相同特征的对象的描述。而对象是类的 实例。

类的操作

该项可以省略。类的操作用于修改、检索类的属性或执行某些动作。

UML规定操作的语法格式为:


可见性 操作名(参数表):返回值类型{约束特性}
例如:+取学生姓名(学号:字符串):字符串
关系

类图描述了类和类之间的静态关系。 类与类之间通常有关联、泛化(继承)、依赖和细化等四种 关系。
相关文档
最新文档