tceic.com
简单学习网 让学习变简单
当前位置:首页 >> 数学 >>

3-1用例图


UML建模语言

用 例 图
用例图的概念 用例图的组成要素 使用Rose创建用例图 示例

UML建模语言

? 人们在进行软件开发时,无论是采用面向 对象方法还是传统方法,首先要做的就是 了解需求。由于用例图是从用户角度来描 述系统功能的,所以在进行需求分析时, 使用用例图可以更好描述系统应具备什么 功能

。用例图由开发人员与用户经过多次 商讨而共同完成,软件建模的其他部分都 是从用例图开始的。这些图以每一个参与 系统开发的人员都可以理解的方式列举系 统的业务需求。

UML建模语言

1 用例图的基本概念 用例图源于Jacobson的OOSE方法,它通过 用例(Use Case)来捕获系统的需求,再结 合参与者(Actor)进行系统功能需求的分析 和设计。

UML建模语言

1.1 用例图的定义 由参与者(Actor)、用例 (Use Case)以及它们之间的 关系构成的用于描述系统功能 的动态视图称为用例图。
用例:椭圆表示,用例的名称放在椭 圆的中间或椭圆下面中间位置。 参与者:人形符号。 关系:使用带箭头或不带箭头的线段 表示。

UML建模语言

? 一个系统用例的数量最好控制在几十个左 右 ? 复杂的大中型系统往往需要几十张用例图。 ? 复杂系统用例建模时可能会使用包和注释, 但包和注释都不是用例图的基本组成要素。

UML建模语言

1.2 用例图的作用

? 用例图是需求分析中的产物,主要作用是 描述参与者和用例之间的关系,帮助开发 人员可视化地了解系统的功能。

UML建模语言

2 用例图的组成
用例图的4个组成要素: 参与者(角色) 用例 系统边界 关联

UML建模语言

2.1 参与者

1. 参与者的概念 2. 参与者的确定 3. 参与者间的关系

UML建模语言

1.参与者的概念

参与者(Actor)是指存在于 系统外部并直接与系统进行交 互的人、系统、子系统或类的 外部实体的抽象。

UML建模语言

? 一个进程也可以作为参与者,例如时间 ? 参与者可以代表人或事物,但参与者不是指人或事 物本身,而是表示人或事物当时所扮演的角色。例 如,张三即可以是银行工作人员扮演管理员角色, 也可以是银行用户来取钱。因此,不能将参与者的 名字表示成某个具体的实例。在系统的实际运作中, 一个实际用户可能对应系统的多个参与者。同样, 不同的多个用户也可以只对应于一个参与者,从而 代表同一个参与者的不同实例。 ? 一个用例的参与者可划分为发起参与者和参加参与 者。一个用例只有一个发起参与者,可以有多个参 加参与者。 ? 参与者也可划分为:主要参与者和次要参与者。主 要参与者指的是执行系统主要功能的参与者。次要 参与者指使用系统次要功能的参与者。

UML建模语言

2. 参与者的确定
在获取用例前首先要确定系统的参与者,寻找参与者可 以从以下问题入手: .系统开发出来后,使用系统主要功能的是谁? .谁需要借助系统来完成日常的工作? 除了直接或间接与系统交互 .系统需要从哪些人或其他系统中获得数据? 的人或事物是参与者,处于 .系统会为哪些人或其他系统提供数据? 人的控制之外的也可能是参 .系统会与哪些其他系统交互?其他系统可以分为两类, 与者。 一类是该系统要使用的系统,二是启动该系统的系统, 包括计算机系统和计算机中的其他应用软件。 .系统是由谁来维护和管理的,以保证系统处于工作状 态? .系统控制的硬件设备有哪些? .谁对本系统产生的结果感兴趣?

UML建模语言

3. 参与者间的关系
由于参与者实质上也是类,所以它拥有与类相同的关 系描述,即参与者与参与者之间主要是泛化关系(或 称为“继承”关系)。

参与者间的泛 化关系

公司管理系 统用例图

UML建模语言

? 泛化:把某些参与者的共同行为提取出来 表示成通用行为,并描述成超类。 ? 泛化关系表示参与者之间的一般/特殊关系。 ? 使用带空心三角箭头的实线表示泛化关系。 箭头指向超类参与者。

UML建模语言

泛化后的公司管理系统用例图

通过泛化关系可以有效减少用例图中通信关联 的个数,简化用例模型。

UML建模语言

2.2 系统边界 所谓系统边界是指系统与系统之间的界限。 把系统边界以外的同系统相关联的其他部分称 系统名称 之为系统环境。
边界的重要性:
参与者

系统-环境之间存在着边界
子系统-其他子系统之间存在着边界 子系统-整体系统之间
用例

系统边界决定了参与者,如果系统边界不一样, 它的参与者就会发生很大变化。

UML建模语言

2.3 用例 1. 用例的概念 用例(Use Case)是参与者(角色)可以感 受到的系统服务或功能单元。

带路径名的用例

UML建模语言

? 用例和参与者之间属于关联关系,是双向的一对 一联系。 ? 一个用例至少应该涉及一个参与者,没有参与者 的用例应合并到其他用例中。 ? 用例表明的也是一个类,而不是某个具体实例。 即用例描述的是它代表的功能的各个方面,包含 了用例执行期间可能发生的各种情况。 ? 用例是一个完整的描述。一个用例在编程实现时 往往会被分解成多个小用例,其中任何一个小用 例的完成都不能代表整个用例的完成。

UML建模语言

2. 用例的识别

任何用例都不能在缺少参与者的情况下独 立存在。同样,任何参与者也必须要有与 之关联的用例,所以识别用例的最好方法 就是从分析系统参与者开始,在这个过程 中往往会发现新的参与者。

UML建模语言

3. 用例的粒度 用例的粒度指的是用例所包含的系统服务或 功能单元的多少。用例的粒度越大,用例包 含的功能越多,反之则包含的功能越少。

UML建模语言

下图为学生管理系统中的维护学生信息用 例,管理员需要进行添加学生信息、修改 学生信息、删除学生信息等操作。

UML建模语言

还可以根据具体的操作把它抽象成3个用例

细化后 的学生 管理系 统

UML建模语言

? 对于比较简单的系统,系统复杂度一般比较低, 可以将复杂的用例分解成多个用例。 ? 对于复杂的系统,系统复杂度较高,可将复杂度 适当移往用例内部,让一个用例包含较多的需求 信息量。 ? 用例粒度决定了用例模型级的复杂度及每个用例 内部的复杂度。 ? 在尽可能保证整个用例模型的易理解性的前提下 根据具体系统的具体情况,决定用例的大小和数 目

UML建模语言

4. 用例规约

用例图只是在总体上大致描述了系统所 提供的各种服务,让用户对系统有一个 总体的认识。但对于每一个用例还需要 有详细的描述信息,以便让其他人对于 整个系统有一个更加详细地了解,这些 信息包含在用例规约之中。而用例模型 指的也不仅仅是用例图,而是由用例图 和每一个用例的详细描述——用例规约 所组成的。

UML建模语言

2.4 关联 为了减少模型维护的工作量、保证用例模型 的可维护性和一致性,可以在用例之间抽象 出包含(Include)、扩展(Extend)和泛化 (Generalization)这几种关系。

UML建模语言

1. 包含 包含关系是指用例可以简单地包含其他用例 具有的行为,并把它所包含的用例行为作为 自身行为的一部分。

UML建模语言

? 需要用到包含关系的情况: ① 多个用例用到同一段行为 ② 某个用例功能过多,事件流过于复杂,可以把 某一段事件流抽象成为一个被包含的用例。 ? 例,见P115图5-15 ? 优点: ① 提高了用例模型的可维护性 ② 避免在多个用例中重复描述同一段行为 ③ 避免在多个用例中对同一段行为描述的不一致。

UML建模语言

2. 扩展 在一定条件下,把新的行为加入到已有的用例 中,获得的新用例称为扩展用例(Extension), 原有的用例称为基础用例(Base)。

UML建模语言

从扩展用例到基础用例的关系就是扩展关系。

UML建模语言

扩展关系和包含关系的不同点: ? 基础用例的执行不一定涉及到扩展用例, 包含关系中当基础用例执行后被包含用例 一定会被执行 ? 没有扩展用例,基础用例本身也是完整的; 而在包含关系中基础用例在没有被包含用 例的情况下就是不完整的。

UML建模语言

3. 泛化 用例的泛化指的是一个 父用例可以被特化形成多 个子用例,而父用例和子 用例之间的关系就是泛化 关系。

UML建模语言

3 用例图的创建概述 Rational Rose是一种面向对象的统一建模语 言的可视化建模工具,下面介绍如何使用 Rational Rose绘制用例图。 3.1 3.2 3.3 3.4 创建用例图 创建参与者 创建用例 创建用例之间的关联

UML建模语言

3.1 创建用例图 打开Rational Rose后,在Use Case View图标 上单击鼠标右键,在弹出的快捷菜单中选择New | Use Case Diagram命令建立新的用例图。

UML建模语言

创建新的用例图 后,在Use Case View树型结构下 多了一个名为 NewDiagram的图 标,这个图标就 是新建的用例图 图标。右键单击 此图标,在弹出 的快捷菜单中选 择Rename命令来 为新创建的用例 图命名。

UML建模语言

双击用例图图标,会出现用例图的编辑工 具栏和编辑区。

UML建模语言

3.2 创建参与者 参与者是每个用例 的发起者,要创建 参与者,首先要单 击用例图工具栏中 的图标,然后在用 例图编辑区内单击 画出参与者。接下 来可以对这个参与 者命名,单击已画 出的参与者,会弹 出如下对话框。

UML建模语言

对于一个完整的用例图来说,参与者往往 不只一个,这就需要创建参与者之间的关 系。

UML建模语言

3.3 创建用例 单击工具栏中 的图标,然后 在用例图编辑 区内单击鼠标 左键画出用例。 单击已画出的 参与者,弹出 如图如下所示 的对话框。

UML建模语言

接下来创建用例和参与者之间的关联关系。

UML建模语言

3.4 创建用例之间的关联 1. 创建包含关系 单击用例图工具 栏中的图标,然 后在需要创建包 含关系的两个用 例之间拖动鼠标, 双击虚线段,弹 出如下对话框。

UML建模语言

用例之 间的包 含关系

UML建模语言

2. 创建扩展关系

UML建模语言

4 用例图的创建示例 下面通过一个实际的系统用例图——“学生 信息管理系统”来讲解用例图的创建过程。 1. 2. 3. 4. 5. 学生信息管理模块 班级信息管理模块 成绩管理模块 网上选课模块 账号管理模块

UML建模语言

4.1 需求分析
1. 学生信息管理模块 学生信息管理模块主要用来实现系统管理员、教师、校领 导等对学生基本信息的管理。 2. 班级信息管理模块 班级信息管理模块主要用来实现系统管理员、校领导对班 级基本信息的管理。 3. 成绩管理模块 成绩管理模块主要用于实现教师对学生考试成绩的管理以 及学生对考试成绩的查询。 4. 网上选课模块 网上选课模块主要用于实现学生在网上了解并选择自己感 兴趣的课程。 5. 账号管理模块 账号管理模块主要实现系统管理员对用户账号的管理。

UML建模语言

4.2 识别参与者
要确定参与者,首先要分析系统的主要任务 以及系统所涉及的问题、分析使用该系统主 要功能的是哪些人、谁需要借助系统来完成 工作、系统为哪些人提供数据、谁来维护和 管理系统。

UML建模语言

4.3 确定用例 1. 学生信息管理的用例 2. 班级信息管理的用例 3. 成绩管理的用例 4. 网上选课的用例 5. 账号管理的用例

UML建模语言

1. 学生信息管理的用例 登录。
查询学生基本信息。 录入学生基本信息。 修改学生基本信息。 删除学生基本信息。 找回密码。

2. 班级信息管理的用例
登录。 找回密码。 查看班级基本信息。 修改班级基本信息。 删除班级基本信息。 录入班级基本信息。

3. 成绩管理的用例 登录。 找回密码。 录入成绩。 修改成绩。 保存成绩。 查询成绩。 删除成绩。

UML建模语言

4. 网上选课的用例 登录。 找回密码。 查看课程信息。 按课程编号查看。 按课程名查看。 选择课程。 删除已选课程。 维护课程信息。

5. 账号管理的用例 创建新账号。 设置账号。 设置账号基本信息。 设置账号权限。 删除账号。 查看账号。

UML建模语言

4.4 构建用例模型 1. 班级信息管理用例图

UML建模语言

2. 成绩管理用例图

UML建模语言

3. 网上选课用例图

UML建模语言

4. 账号管理用例图

UML建模语言

5 本 章 小 结
本章首先介绍了用例图的概念和作用, 讲解了用例图的重要组成元素:参与者、用 例、系统边界和关联。接着又介绍了如何通 过Rational Rose创建用例图和用例图的各个 元素,并创建它们之间的关系。最后通过学 生信息管理系统具体讲解了如何在实际中创 建用例图。


推荐相关:

作业2-用例图

3.找出下面过程中的参与者和用例,画出用例图;找出用例中合适的实体类。 (in English) 某五星级饭店的总经理注意到该饭店采购部存在以下问题: (1) 没有更新的...


3章:用例图习题

下面( B )不属于用例图的要素 1 A:参与者 B:包含 C:用例 D:关系 3.下面对参与者说法不正确的是( A ) A:是系统的一个实体 B:也叫活动者 C:在系统...


测试用例设计—自动售货机因果图分析

测试用例设计—自动售货机因果图分析_计算机软件及应用_IT/计算机_专业资料。自动...退还 1 元硬币 当投入 1 元,而且售货机中没有零钱可找的时候 3.退还 5 ...


客服部角色用例图[1]

卖家 2. 买家 -1- 3. 客服 使用 Rational Rose 的 Use Case View 中建立 Actors 如下图: (图 1) 2.1.2 创建用例 用例本身是指个用户或其他系统于...


实验二 用例图

实验二 用例图_计算机软件及应用_IT/计算机_专业资料。实验二 用例图一、实验目的 1.熟悉用例图的基本功能和使用方法。 2. 初步掌握建立用例图的方法。 3.掌握...


实验一 Rose基本使用及用例图

实验 Rose 基本使用及用例图 [实验目的] 1.熟悉 Rose 的系统界面,掌握其基本使用方法。 2.熟悉模型图标元素。 3.掌握用例图的绘制方法。 [实验内容] 1....


uml实验一 用例图

实验一 用例图一、实验目的 1.熟悉用例图的基本功能和使用方法。 2.掌握如何...银行柜员选择销户功能 2. 系统显示客户资料 3. 银行柜员确认客户身份证号 4. ...


1 用例图建模步骤

1 用例图建模步骤_电脑基础知识_IT/计算机_专业资料。用例图建模步骤 窗口说明 ...3. 增加参与者 参与者的增加有 2 种方式, 方式一:使用工具栏上的快捷菜单 ...


因果图测试用例

于 描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试 测试用例。...图 3-1 实例一的因果图 3、根据因果图建立判定表。 表中 8 种情况的左面...


1管理员操作用例图

1管理员操作用例图_工学_高等教育_教育专区。1 管理员操作用例图(包括登陆,查找,添加,更新四个用例) 管理员操作用例图(包括登陆,查找,添加,更新四个用例) 图 ...

网站首页 | 网站地图
All rights reserved Powered by 简单学习网 www.tceic.com
copyright ©right 2010-2021。
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@126.com