识别用例和用例图
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2015年5月14日星期四
4.4 书写用例文档
前置后置条件 ATM自动取款机的取款用例的前置条件?
ATM用户的帐户里有足够的金额
第26页
2015年5月14日星期四
4.4 书写用例文档
基本路径描述 1.使用主动语言
2.句子必须以参与者或者系统做主语
3.每一句都要朝目标迈进 4.只书写“可观测的” 5.不要涉及界面细节
2015年5月14日星期四
4.2 用例图组件
用例的名称
用例通常具有名称,该名称通常简要地描述了用例 的功能。 用例名称通常以一个动词开始,常用动宾结构表示。 用例名称显示在用例图标下面或者图标里面。
µ ǼǿΠ³ Ì
第12页
2015年5月14日星期四
4.2 用例图组件
用例的大小
对于用例的具体大小没有明确的规定。但一个用例 应该包含一项主要功能,这项功能应该是完整的, 是有始有终的。如:“转帐”就是一个用例,而 “验证密码”一般不看成是一个用例。
第33页
2015年5月14日星期四
4.4 书写用例文档
子事件流 2a. 账户未打开 2a1.系统显示“账户未打开,不能结账”信息 3a. 库存不能满足 3a1. 系统显示不能满足库存的订单项 3a2. 会员修改订单项数量 4a. 会员提交信息不充分 4a1. 系统告知会员需要补充的信息 4a2.管理订单 7a. 会员修改订单 7a1.管理订单 后置条件:把发货信息告知供应商发货
订票
在UML中,用例的泛化关系是通过一个从 子用例指向父用例的三角箭头表示的,如右 图所示。
网上订票
电话订票
第20页
2015年5月14日星期四
例1 建立项目与资源管理系统的Use case图
系统的主要功能是:项目管理,资源管理和系 统管理。项目管理包括项目的增加、删除、更 新。资源管理包括对资源和技能的添加、删除 和更新。系统管理包括系统的启动和关闭,数 据的存储和备份等功能。
第10页
2015年5月14日星期四
4.2 用例图组件
用例简介
用例对参与者和系统之间的交互建立模型。它是通 过参与者调用功能来启动的,这将会产生一个可视 化的结果。一个用例产生的结果必须是一个给系统 用户的特定值。
用例的功能和结果必须是一个完整且有意义的事件 流。它阐明了系统提供给参与者的功能。
第11页
在UML中,扩展关系是通过带箭头的虚线段加构造型 <<extend>>来表示的,箭头由扩展用例指向基础用例。
第18页
2015年5月14日星期四
4.3 用例关系
Library use cases including borrowing a book, returning a borrowed book, and paying a library fine
参与者填写电话
参与者填写联系地址
参与者提交
第29页
2015年5月14日星期四
4.4 书写用例文档
句子必须以参与者或者系统做主语 参与者......
系统......
第30页
2015年5月14日星期四
4.4 书写用例文档
只书写“可观测的” 系统通过ADO建立数据库连接,传送SQL查询语 句,从”零件”表查询...... 系统按照查询条件搜索零件
第19页
2015年5月14日星期四
4.3 用例关系
3. 泛化关系
用例的泛化关系指的是一个父用例可以被特 化为多个子用例,而父用例和子用例之间的 关系就是泛化关系。 A generalization from use case A to use case B indicates that A is a specialization of B.
扩展关系(extend):当一个用例可能使用 另一个用例时就为扩展关系。 泛化关系(generalization):一个用例是另 一个用例的一种,就是一个泛化关系。
第16页 2015年5月14日星期四
4.3 用例关系
1. 包含关系
包含关系是指用例可以简单地包含其它用例具有的行为,并 把它所包含的用例行为作为自身行为的一部分。 An include relationship from use case A to use case B indicates that an instance of the use case A will also include the behavior as specified by B. The behavior is included at the location which defined in A. 在UML中,包含关系是通过带箭头的虚线段加构造型 <<include>>来表示的,箭头由基础用例指向被包含用例。
第27页
2015年5月14日星期四
4.4 书写用例文档
使用主动语言 1.欧文从贝克汉姆处得到传球,守门员...
2.贝克汉姆传球给欧文,欧文射门,守门员扑救...
3.用户名和密码被验证
4.系统验证用户名和密码
第28页
2015年5月14日星期四
4.4 书写用例文档
每一句都要朝目标迈进 参与者填写姓名
第8页
2015年5月14日星期四
4.2 用例图组件
参与者如何确定?可以通过以下一些问题来帮 助你确定参与者:
谁使用系统的主要功能? 谁从系统获取信息? 谁支持和维护系统? 谁需要系统的支持以履行他们的日常职责? 在组织里这个系统被用到哪里? 与系统交互的是哪些硬件设备? 与这个系统交互的其他系统是哪些?
第13页
2015年5月14日星期四
4.2 用例图组件
用例的文档化
一旦决定了每个用例将做什么和谁将调用它,就应 该写一个简短的文本来描述这一点。这段描述在开 发过程的初始阶段完成,它应该以一些句子说明用 例的目的,还应该说明用例提供的功能的高层次定 义。
第14页
2015年5月14日星期四
4.2 用例图组件
第4章 用例和用例图
一个系统的初始阶段是从获得需求开始的。一 旦需求确定了,就可以在问题说明中确定用例。
本章说明了如何从问题说明中提取用例以及如 何建立用例图模型。
第1页
2015年5月14日星期四
用例:基于用户目标的需求组织形式
立足开发者视角(银行取款) 系统要求用户输入合法的密码
系统能够接受用户录入的取款金额
第31页
2015年5月14日源自文库期四
4.4 书写用例文档
不要涉及界面细节 会员从下拉框中选择类别
会员在相应文本框中输入查询条件
会员点击”确定”按钮
第32页
2015年5月14日星期四
4.4 书写用例文档
用例名称:结账 用例描述:会员完成一次与商店的交易 参与者:会员 前置条件:会员已经完成选购 基本路径: 1. 会员请求结账 2. 系统检查账户是否处于打开状态 3. 系统检查库存是否满足 4. 系统检查会员提交的信息是否充分 5. 系统合计订单总价 6. 系统显示收费明细 7. 会员确认 8. 系统保存订单信息,通知供应商发货,减少相应库存数量。
第23页
2015年5月14日星期四
4.4 书写用例文档
前置后置条件(起点与终点) 前置条件:开始用例前所必需的系统及其环境 条件。 注:前置条件必须是系统在用例开始前能检测 到的。 后置条件:用例成功后系统应该具备的状态。
第24页
2015年5月14日星期四
4.4 书写用例文档
前置后置条件
第25页
谁将与系统交互。(参与者)
系统将做什么。(用例) 需要什么接口。(关系)
第5页
2015年5月14日星期四
4.2 用例图组件
一、参与者(Actor) :
参与者代表的是与系统交互的任何人或任何事物。 参与者是外部的,不是系统的组成部分,但如果要 使用或支持参与者,则需要一个接口。 An Actor defines a coherent set of roles that users of use cases play when interacting with use cases. An actor has one role for each use case with which it communicates.
识别用例的方法
使用已经定义的参与者来识别用例。对于每个参与 者,都需要回答一系列问题:
参与者需要哪些功能? 参与者需要什么支持?
参与者如何与系统信息交互?
用例必须一直与至少一个参与者相关联。
第15页
2015年5月14日星期四
4.3 用例关系
用例之间的关系
用例与用例之间有三种关系:
包含关系(include):当一个用例一直使用 另一个用例时就确定为包含关系。
系统能够从帐户中扣除取款金额
系统允许选择“打印数据” 或者 “不打印数据”
系统能够显示交易结束信息
第2页 2015年5月14日星期四
4.1 识别用例图
用例图最重要的作用是使最终用户和开发者之 间进行交流。
在开发的初始阶段,通过确定系统的参与者和 主要用例来建立用例图。在细化阶段,把更多 的详细信息加入到已确定的用例中,用例模型 将越来越成熟。
第21页
2015年5月14日星期四
4.4 书写用例文档
用例描述: 用例名称:取款 前置条件: 基本路径: (1) 客户将卡插入ATM机,开始用例。 (2) ATM显示欢迎消息并提示客户输入密码。 (3) 客户输入密码。 (4)ATM确认密码有效。如果无效则执行子事件流a。 (5) ATM提供以下选项:存钱,取钱,查询。 (6) 用户选择取钱选项。 (7) ATM提示输入所取金额。 (8) 用户输入所取金额。 (9) ATM确定该帐户是否有足够的金额。如果余额不够,则执行子事件流b。
第3页
2015年5月14日星期四
4.1 识别用例图
建立一个系统的用例图通常是开发过程中一个 困难的部分。
建立一个用例图包括以下步骤:
定义系统。 确定参与者和用例。 描述用例。 定义用例和参与者之间的关系。 定义用例之间的关系。
第4页 2015年5月14日星期四
4.1 识别用例图
客户和开发者通过用例图达成共识,用例图包 括以下几个内容:
第6页
2015年5月14日星期四
4.2 用例图组件
一、参与者:
参与者用于表示使用系统的对象,参与者可以是 一个人或者一个系统。参与者由一个固定的图形表 示,并在图形下面列出参与者的名字。
管理员
第7页
2015年5月14日星期四
4.2 用例图组件
每个参与者的名称要反映参与者的角色,而不 是它的功能或它的实例,所以给参与者提供一个最 能描述其功能的合适名称是非常重要的。并且我们 要避免为代表人的参与者起一个实际人名。如:参 与者张三是个“教师”,是他所扮演的角色。如果 命名为 “张三”就不对了。
第9页 2015年5月14日星期四
4.2 用例图组件
二、用例(Use Case)
The specification of a sequence of actions, including variants, that a system (or other entity) can perform, interacting with actors of the system. A use case is a coherent unit of functionality provided by a system, a subsystem, or a class as manifested by sequences of messages exchanged among the system and one or more outside interactors (called actors) together with actions performed by the system.
第17页
2015年5月14日星期四
4.3 用例关系
2. 扩展关系
在一定条件下,把新的行为加入到已有的用例中,获得的新 用例称为扩展用例,原有的用例称为基础用例,从扩展用例 到基础用例的关系就是扩展关系。
An extend relationship from use case A to use case B indicates that an instance of use case B may be extended by the behavior specified by A.
第22页
2015年5月14日星期四
4.4 书写用例文档
(10) ATM从客户帐户中减去所取金额。 (11) ATM向客户提供要取的钱。 (12) ATM打印清单。 ATM退出客户的卡,用例结束。 子事件流a: a1. 提示用户输入无效密码,请求再次输入; a2. 如果三次输入无效密码,系统自动关闭,退出客户银行卡。 子事件流b: b1. 提示用户余额不够。 b2. 返回(5),等待客户重新选择。 后置条件:结束取款事件。