Rational Rose学习笔记02:创建用例图
Posted howard2005
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rational Rose学习笔记02:创建用例图相关的知识,希望对你有一定的参考价值。
文章目录
一、用例图概念
- 用例图 (Use Case Diagram)主要用于描述系统的行为及各种功能之间的关系,是描述参与者(Actor)与用例(Use Case)以及用例与用例之间关系 (Relation)的图。
- 用例图 = 参与者 + 用例 + 关系
- 用例图显示谁将是相关的用户、用户希望系统提供什么服务以及用户需要为系统提供的服务。描述参与者与用例之间的关系,帮助开发人员可视化了解系统功能。
二、用例图三元素
(一)参与者(Actor)
- 参与者可以是人或其他外界系统。参与者是用例的启动者,参与者处于用例的外部并且能够初始化一个用例并参与用例的执行过程,但它并不是系统的一部分。每个参与者可以参与一个或多个用例。
(二)用例(Use Case)
- 用例是一组动作序列(业务工作流程)的描述,系统执行该动作序列为系统的参与者产生一个可观察的结果。 用例反映用户的需求。用例是系统的使用过程,是对系统的用户功能需求的描述,用例表达了系统的功能和所提供的服务。
(三)关系(Relation)
1、关联关系(Association)
- 参与者与用例之间进行关联。表示参与者可以启动(使用)该用例。
- Unidirectional Association - 单向关联
2、包含关系(Include Relation)
- 把几个用例的公共步骤分离成一个单独被包含用例;包含用例称为客户用例,被包含用例称为提供者用例。用例A包含用例B,将A称为基用例,B称为被包含用例。包含关系表示基用例会用到被包含用例。被包含用例的事件流在基用例的某个点处插入到基用例的事件流中。
- 客户用例与提供者用例之间的包含关系
- 一个客户用例包含两个提供者用例
- 两个客户用例包含一个提供者用例
3、扩展关系(Extend Relation)
- 扩展使得每个用例可以通过扩展用例向基用例中添加额外的行为来扩展基用例的功能。用例A扩展了用例B,那么A称为扩展用例或子用例,B表示为基用例。扩展用例A的事件流在一定的条件下按照相应的扩展点插入到基用例中,这就需要在基用例中定义一至多个已命名的扩展点。
- 下图为图书管理系统用例图的部分内容。其中“还书”是基础用例,“交纳罚金”是扩展用例。如果读者所借图书没有逾期,则直接执行“还书”用例即可;如果所借图书逾期后才归还,则读者还需要按规定交纳一定的罚金才能完成还书的行为。但是正常的“还书”用例不具备这样的功能,如果更改“还书”用例的设计势必会增加系统的复杂性,这时可以在“还书”用例中增加扩展点,在逾期归还的情况下,将执行扩展用例“交纳罚金”,这种处理方式使得系统更容易被理解。
4、泛化关系(Generalization)
- 继承,泛化关系是两个用例或两个参与者之间的关系。泛化关系其实可以通俗理解为面向对象关系中的继承。将拥有一种类似的结构和行为的多个用例中的共性抽象为父用例,子用例继承父用例中的全部结构和行为。
- 在用例的泛化关系中,子用例表示父用例的特殊形式。子用例从父用例处继承行为和属性,还可以添加、覆盖或改变继承的行为。下图所示的父用例为“罚款”,该父用例的3个子用例分别为“损坏图书罚款”、“图书超期罚款”和“遗失图书罚款”。
三、创建用例图
(一)电话机的用例图
- 普通电话机的主要功能诗“打电话”和“接电话”,打电话和接电话的人统称为“用户”,
- 创建普通电话机的用例图,操作过程如下图所示。
- 普通电话机的用例图
(二)带录音功能电话机的用例图
- 如果电话机具有“电话录音”功能,那么用例图如下图所示
(三)电梯运行用例图
- 四种参与者:乘客、技术员、保安、前台工作人员
- 九种用例:乘坐电梯、按钮被按下灯亮、按钮灯灭、求助、维修电梯、关闭电梯、激活电梯、打开地下室、控制电梯
(四)用户登录用例图
- 三种用户用例跟用户用例之间是
泛化关系
- 三种用户用例与【输入用户名密码】用例和【验证用户身份】用例之间是
关联关系
- 【输入用户名和密码】用例和【非空校验】用例是
包含关系
以上是关于Rational Rose学习笔记02:创建用例图的主要内容,如果未能解决你的问题,请参考以下文章