2.UML图-用例图

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

面向对象与UML
用例图
第 29 页
2.2 用例分析 • 【例5】
面向对象与UML
用例图
第 31 页
2.2 用例分析
面向对象与UML
用例图
第 32 页
2.2 用例分析
面向对象与UML
用例图
第 33 页
用例图
第 16 页
2.1 用例图 2.1.2 用例图的图形元素 • 关联
– 用单项箭头表示,只表示谁启动用例,不考虑信息 的双向流动;每个用例都有参与者启动(包含和扩展 用例除外)。
– 无论用例和参与者是否存在双向数据流,关联总是
由参与者指向用例。
图书管理员
新增图书
面向对象与UML
用例图
第 17 页
– 确定系统的边界范围,找出系统外部的参与者和外 部系统;
– 确定每一个参与者所希望的系统行为,命名为用例;
– 把一些公共的系统行为分解为新的用例,供其他用 例使用; – 把一些变更的行为分解为扩展用例; – 编写用例规格说明; – 绘制用例图; – 把特殊情况的用例图画成单独的子用例图。
面向对象与UML 用例图
统的单元所提供,并通过一系列系统单元与一个或 多个参与者之间交换的消息所表达。
• 用例分析可以认为是对系统功能的分解。
• 用例的名称:
① 简单名 ② 路径名
面向对象与UML
用例图
第 13 页
2.1 用例图 2.1.2 用例图的图形元素 • 怎样确定用例的粒度:
① 用例的粒度(用例的大小)可大可小,一般系统控制 在20个左右。 ② 用例是系统级的、抽象的描述,不是细化的(是做
什么,而不是怎样做);
③ 对复杂的系统可以划分为若干子系统。
面向对象与UML
用例图
第 14 页
2.1 用例图 2.1.2 用例图的图形元素
• 用例的识别:
① 特定的参与者希望系统提供什么功能; ② 系统是否存储和检索信息,如果是,又哪个参与 者触发;
③ 当系统改变时,是否通知参与者;
④ 是否存在影响系统的外部事件; ⑤ 哪个参与者通知系统这些事件。
<<extend>> 订购货物 VIP打折
学生
面向对象与UML
用例图
第 20 页
2.1 用例图 2.1.2 用例图的图形元素 • 泛化(generalization)
– 父用例也可以被特别列举为一个或多个子用例,子用 例表示父用例的特殊形式。 – 子用例从父用例处继承行为和属性,还可以添加行
为或覆盖、改变继承的行为。
按照姓名查询 用户 档案查询
按照学号查询
面向对象与UML 用例图
第 21 页
2.1 用例图 2.1.3 用例规格说明
• 用例与事件流(用例规格说明)
– 用例名称 – 简要说明 – 参与者
– 前提条件
– 主事件流 – 其它(扩展)事件流 – 事后条件
面向对象与UML 用例图
第 22 页
2.1 用例图 2.1.3 用例规格说明 用例描述模板
面向对象与UML
用例图
第 11 页
2.1 用例图 2.1.2 用例图的图形元素 • 参与者之间的关系:
– 因为参与者是类,所以多个参与者之间可以具有 与类之间相同的关系。
学生管理系统用户
教师用户
学生用户
面向对象与UML
用例图
第 12 页
2.1 用例图 2.1.2 用例图的图形元素
• 用例是外部可见的系统功能单元,这些功能由系
2.1 用例图 2.1.2 用例图的图形元素 • 包含(include)
– 箭头方向由基本用例指向被包含用例; – 两个以上用例拥有共同功能,可以分解到单独用例, 形成包含依赖;
<<include>> 登陆成绩管理系统 输入密码
学生
面向对象与UML
用例图
第 18 页
2.1 用例图 2.1.2 用例图的图形元素 • 包含(include)
面向对象与UML
第二章 UML图-用例图
2.1 用例图 2.1.1 用例图的概念
• 用例图(Use Case Diagram)是软件需求分析到
实现的第一步,它描述人们希望如何使用一个系统。 • 用例图主要包含三种图形元素:
– 参与者(Actor) – 用例(Use case) – 关系(Relationship)
用例图
Hale Waihona Puke Baidu
面向对象与UML
第 23 页
2.1 用例图 2.1.3 用例规格说明
• 用例规格说明
– 【例1 】图书管理系统中新增书籍用例
图书管理员
新增图书
面向对象与UML
用例图
第 24 页
2.2 用例分析 • 显示系统和外部实体交互的图
面向对象与UML
用例图
第 25 页
2.2 用例分析 • 用例分析步骤:
用例图
第9 页
2.1 用例图 2.1.2 用例图的图形元素 • 如何确定参与者:
以学生成绩管理系统为例
① 谁将使用该系统的主要功能; ② 谁将需要该系统的支持已完成其工作; ③ 谁将需要维护、管理该系统,以及保持该系统处
于稳定工作状态;
④ 系统处理需要哪些硬件设备; ⑤ 与该系统交互的系统是什么系统; ⑥ 谁或什么系统对本系统产生的结果感兴趣。
第 26 页
2.2 用例分析 • 【例2】试画出教室管理系统的用例图: – 用例:登陆、找回密码、查看教室信息、修改教室
信息、删除教室信息、新建教室信息,保存教室信
息;
– 参与者:管理员和教师。
面向对象与UML
用例图
第 27 页
2.2 用例分析 • 【例3】试画出网上选课系统的用例图: – 用例:登陆系统、输入验证码、查询课程信息、按
– 一个用例过于复杂,可以分解成小用例,构成包含 依赖;
添加学生记录 <<include>> 顾客
学生信息管理
修改学生记录
删除学生记录
面向对象与UML 用例图
第 19 页
2.1 用例图 2.1.2 用例图的图形元素 • 扩展(extend)
– 一个用例(在某些扩展点上)扩展另一个用例的功能, 工程新的用例; – 扩展用例依赖于被扩展用例(基本用例) 。
用例编号 用例名称 简要说明 主要参与者 前置条件 后置条件 基本事件流 [为用例制定一个唯一的标号,通常格式为UCxx] [应为一个动词性短语,让读者一目了然地知道用例的目标] [用例的目的,一个概要性的描述] [该用例的主Actor,在此列出名称,并简要描述] [即启动该用例所应满足的条件] [即该用例完成后,将执行什么动作] 步骤 1 2 扩展事件流 1a 1b [活动] [在这里写出触发事件到目标完成以及清除的步骤] …..(其中可以包含子事件流,以事件流编号来表示) [1a表示对1的扩展,其中说明条件和活动] …..(其中可以包含子事件流,以事件流编号来表示)
面向对象与UML
用例图
第 15 页
2.1 用例图 2.1.2 用例图的图形元素
• 用例图中主要有四种关系:
– 关联关系(Association) – 包含关系(Include) – 扩展关系(Extend)
<<include>> <<extend>>
– 泛化关系(Generalization)
面向对象与UML
编号查询课程信息、按名称查询课程信息、选择课
程、删除已选课程、修改课程信息、修改课程编号、
修改课程授课教师;
– 参与者:管理员和学生。
面向对象与UML
用例图
第 28 页
2.2 用例分析 • 【例4】银行账户管理系统需求陈述如下:
– 一个客户可以在多个银行中开设账户,一个客户也 客户 客户 客户 可在同一银行中开设多个不同的账户。客户可以通
面向对象与UML 用例图
第 10 页
2.1 用例图 2.1.2 用例图的图形元素 • 理解
– Actor不是指人,而是代表一种特定功能的角色,因 此同一个人可能对应多个Actor。Actor是虚拟的概念, 可以指外部的系统和设备。
– 如果一个角色的操作是由另外一个角色代理完成的,
请建立该角色到另外角色的依赖。
Relationship
Actor
面向对象与UML
UseCase
用例图
第8 页
2.1 用例图 2.1.2 用例图的图形元素 • 参与者(Actor)是系统外部的一个实体,它以某种 方式参与用例的执行过程。
Actor
• 系统外部的参与者可以是人、外部硬件、其他系统、 甚至是时间。
学生
交管系统
时间
面向对象与UML
过银行职员进行开户、存款、取款、转账、注销账 开户 存款 取款 转账 注销账 银行职员 户 客户 户等活动。其中转账指客户将自己的某个账户上的
钱转入同一银行的不同账户(称为银行内转账)或 不同银行 系统管 转入不同银行的账户(称为银行间转账)。系统管 理员负责系统的账户管理及业务报表生成。同时系 理员 账户管理 业务报表生成 校验用户密码 统还具有校验用户密码功能。
相关文档
最新文档