解决方案 / Technical articles

深度揭秘AG杀猪真相选课系统用例图
发布时间:2020-11-01 22:27
  

  用例图 用例图的概念 用例图建模技术 实例——-网上选课系统中的用例图 一、概述 用例图显示谁将是相关的用户、用户希望系统提 供什么服务以及用户需要为系统提供的服务。 用例图最常用来描述系统以及子系统。 1 概述 ① ② ③ ④ ⑤ ⑥ 用例图包含6个元素: 参与者(Actor) 用例(Use Case) 关联关系(Association) 泛化关系(Generalization) 包含关系(Include) 扩展关系(Extend) 2 参与者 系统外部的一个实体。 参与用例的执行过程。 通过向系统输入或请求系统 输入某些事件来触发系统的 执行。 由参与用例时所担当的角色 来表示。 每个参与者可以参与一个或 多个用例。 2 参与者 参与者的种类: ① 系统用户 ② 与所建造的系统交互的其他系统 ③ 一些可以运行的进程 确定参与者 如何寻找系统的参与者 对参与者建模的过程中需要注意的问题 参与者间的关系 在用例图中,使用泛化 关系来描述多个参与者 之间的公共行为。 参与者间的泛化关系 示例: 3 用例 外部可见的系统功能单元。 在不揭示系统内部构造的前提下定义连贯 的行为。 不是需求或功能的规格说明,但是也展示 和体现其所描述的过程中的需求情况。 3 用例 用例的名称: ① 简单名 ② 路径名 识别用例 识别用例最好的方法就是从分析系统的参 与者开始,考虑每个参与者是如何使用系 统的。 如何识别用例。 用例与事件流 1. 简要说明 2. 前提条件 3. 事件流(主事件流、其他事件流、错误 流) 4. 事后条件 4 用例间的关系 1 2 3 4 关联关系 包含关系 扩展关系 泛化关系 关联关系 表示参与者用例之间进行通信。 不同的参与者可以访问相同的用例。 泛化关系 父用例也可以被特别列举为一个或多个子用例。 子用例表示父用例的特殊形式。 子用例从父用例处继承行为和属性,还可以添加 行为或覆盖、改变继承的行为。 泛化关系(续) 概括表示几个元素的某些共性,例如买票系 统中,深度揭秘AG杀猪真相个人购买和团体购买都是买票特例, 具有一些共同的特性。 B uyTic k e t B uyO F P e rs o n B uyO fG ro up 包含关系 (1)客户用例可以简单地包含提供者用例具有的行为, 并把它所包含的用例行为作为自身行为的一部分。 即:在一个用例中重用另一个用例中的步骤。 (2)在种情况下我们引入包含关系: 首先,如果两个以上的用例有相同的功能,则可以将这个 功能分解另一个用例中 一个用例的功能太多时,可以用包含关系建模两个小用 例. 包含关系(续) 例:在自动饮料售货系统中,用例“放置饮料” 和“收钱”都包括打开和关闭机器的功能。 由此抽取出这个两个用例,并让用例“放 置饮料”和“收钱”包含它们 扩展关系 扩展用例被定义为基础用例的增量扩展。 基础用例提供扩展点以添加新的行为。 扩展用例提供插入片段以插入到基础用例的扩展点上。 即:允许你通过对已有的用例增加步骤创建一个新的用例 它与包含关系相似,这两个关系都是把相同功能分离另一 个用例中。扩展只能在特定的设计点发生,称这个点为扩 展点 扩展关系(续) 比如:一个订货系统的用例图,订货过程包括客户填写 客户信息、订货和付费。因为付费有现金支付和信用 卡支付,所以概括这一个抽象的用例。客户可能会提 出看一看货物目录的请求,所以从基用例扩展出“请 求目录”的用例,以满足客户查看货物目录的要求。深度揭秘AG杀猪真相 扩展关系(续) OrderSystem extend include RequestContent Customer include include ProviderData Order Payment PayOfCash PayOfCard 二、 用例图建模技术 5.2.1 对语境建模 5.2.2 对需求建模 1 对语境建模 ① 识别系统外部的参与者。 ② 将类似参与者组织成泛化的结构层次。 ③ 在需要加深理解的地方,为每个参与者提 供一个构造型。 ④ 将参与者放入到用例图中,并说明参与者 与用例之间的通信路径。 2 对需求建模 ① 识别系统的外部参与者来建立系统的语境。 ② 考虑每一个参与者期望的行为或需要系统提供 的行为。 ③ 把这些公共的行为命名为用例。 ④ 确定提供者用例和扩展用例。 ⑤ 对这些用例、参与者和它们之间的关系建模。 ⑥ 用注释修饰用例。 三、实例——学生选课系统的用例图 确定系统涉及的总体信息 确定系统的参与者 确定系统的用例 使用Rational Rose绘制用例图的步骤 学生选课系统的用例图 1 2 3 4 5 1 确定系统涉及的总体信息 学生: ① 选课 ② 查询课程 确定系统涉及的总体信息 ① ② ③ ④ ⑤ 管理员: 增加课程 修改课程 删除课程 添加学生帐户 删除或更新学生帐户 2 确定系统的参与者 首先分析系统所涉及的问题领域和系统运 行的主要任务: ① 分析使用该系统主要功能部分的是哪些人。 ② 谁将需要该系统的支持以完成其工作。 ③ 系统的管理者与维护者。 确定系统的参与者 网上选课系统的参与者: ① 学生 ② 管理员 确定系统的用例 1. 学生请求服务的用例 2. 管理员处理课程等的用例 1. 学生请求服务的用例 ① 登录系统 ② 查询自己的选课 ③ 选课 2. 管理员处理课程的用例 ① ② ③ ④ 处理学生帐户 处理课程增加 删除课程 修改课程 5.3.4 使用Rational Rose绘制用例图 的步骤 1. 2. 3. 4. 5. 6. 创建用例图 用例图工具栏按钮简介 工具栏的定制 添加参与者与用例 添加参与者与用例之间的关系 添加用例之间的关系 5 学生选课系统的用例图 1. 学生请求服务的用例图 2. 管理员处理课程等的用例图 1. 学生请求服务的用例图 QueryCourse Student SelectCourse 2. 管理员处理课程的用例图 AddCourse Registrar ModifyCourse DeleteCourse DealAccount Q ue ryC o urse S tud e nt S e le ctC o urs e A d dC o urs e P e o p le Re g is tra r M o d ifyCo urse D e le te C o urse D e a lA cc o unt 用例说明: 简短描述 SelectCourse用例使用选择选修课 逐步描述 在这个初始阶段不适用 图1 学生选课系统初始业务模型的SelectCourse用例描述