Student ID: 16340186

Name: 邱奕浩

一、简单题

1. 用例的概念

用例就是一组相关的成功和失败场景的集合,用来描述参与者如何使用系统实现其目标。

需要注意的是,用例是文本文档,而非图形。

2. 用例和场景的关系?什么是主场景或Happy path?

场景是参与者与系统交互的特定过程,也称为用例实例,是使用系统一个特定用例的一条执行路径;用例通常包括了一系列的场景:主场景或其他可选场景。

主场景指的是最常用的一个主要的基础业务场景,能够基本满足Actors需求以及实现其基本目标。

3.用例有哪些形式?

用例主要有以下三种常用的形式:

  • 摘要:简洁的一段式概要,通常应用于主场景的描述,一般在早期需求分析过程中为快速了解主题和范围而使用。
  • 非正式的段落格式:用几个段落的文字覆盖不同场景。
  • 详述:详细编写所有的步骤和各种变化,同时具有补充部分,如前置条件和成功保证。

4.对于复杂业务,为什么编制完整用例非常难?

对于复杂的业务,将会涉及到诸多的复杂场景,每个场景之间可能还有依赖关系,所以编写完整准确的用例将会非常难。但是编写完整的用例仍具有重要意义,流程清晰有利于后续业务的增添删改。

5. 什么是用例图?

用例图是一种优秀的系统语境图,用例图能够展示系统边界与边界之外的事物以及系统如何被使用。

6.用例图的基本符号与元素?

基本符号如下:

主要元素有:

  • 参与者 Actors
  • 系统边界
  • 用例 Use Case
  • 关系

7. 用例图的画法与步骤

一个简单而完整的用例图的画法和步骤组织如下:

  1. 选择系统边界。确定用例图的中待研究的系统,使用一个System框来表示它,同时为其正确命名,如Hotel Reservation System。如下图:

  2. 识别和确定系统的参与者和目标。这包括明确系统的主要参与者以及识别系统所依赖的外部系统。主要参与者使用actor符号表示,通常放在system框的左边;使用Neighbourssystem框表示用例所依赖的外部系统、服务、设备等,使用构造性识别。如下图:

  3. 识别用例以及处理好用例之间的关系。 用例包括用户级别的用例和子功能级别的用例。前者以主要参与者的目标驱动,涉及主要参与者的业务事件;后者具备业务复用和扩展创新的特征。我们需要正确表示用例和子用例之间的关系表示。我们使用<<include>> 表示子用例是父用例的一部分,箭头指向子用例,<<extend>>

    箭头指向父用例,箭头表示依赖关系。例子如下:

    这些用例及其连线都需要放置在System框中。

  4. 确定参与者之间的关系,即泛化关系。

  5. 确立ActorUse Cases之间的关联,使用无方向连线,表示两者之间双向交互的关系。如下图:

  1. 最终的结果大致如下图:

8.用例图给利益相关人与开发者的价值有哪些?

用例图对于利益相关人来说,可以直观地看到系统的运行过程和结果,以及相对应的用户功能使用体验。

对开发者来说,用例图是反映系统和参与者交互的过程,是设计者的用例模型可视化表示,,能直观的向开发者表达系统逻辑,是良好的交流工具。

二、建模练习题

  • 选择2-3个你熟悉的类似业务的在线服务系统(或移动 APP),如定旅馆(携程、去哪儿等)、定电影票、背单词APP等,分别绘制它们用例图。并满足以下要求:
    • 请使用用户的视角,描述用户目标或系统提供的服务
    • 粒度达到子用例级别,并用includeexclude 关联它们
    • 请用色彩标注出你认为创新(区别于竞争对手的)用例或子用例
    • 尽可能识别外部系统和服务

以携程预订火车票的服务系统以及美团外卖订餐系统为例,进行用例图的绘制。

  • 回答下列问题:

    1. 为什么相似系统的用例图是相似的?

      因为对于相似的系统具备相似的基本业务流程和场景,对应的参与者的功能需求是基本一致的,因此用例图是相似的。

    2. 如果是定旅馆业务,请对比 Asg_RH 用例图,简述如何利用不同时代、不同地区产品的用例图,展现、突出创新业务和技术。

      非订旅馆业务,此处不作解答。

    3. 如何利用用例图定位创新思路(业务创新、或技术创新、或商业模式创新)在系统中的作用。

      可使用鲜明的颜色背景表示创新点的相关用例进行标注。

    4. 请使用 SCRUM 方法,选择一个用例图,编制某定旅馆开发的需求(backlog)开发计划表。

      使用Asg_RH的用例图进行编制。

      | ID | Name | Imp | Est | How to demo | Notes |
      | — | ———— | — | — | ————————————– | —————— |
      | 1 | 搜寻酒店 | 10 | 6 | 定位酒店城市,具体地点,目标酒店信息陈列 | 选做智能输入匹配 |
      | 2 | 预订酒店房间 | 20 | 10 | 选择房间类型,填写入住退订时间 | 步骤先后进入 |
      | 3 | 搜索结果排序 | 15 | 7 | 按匹配,评分、价格,距离等不同方式排序 | 优先按匹配方式显示 |
      | 4 | 支付确认订单 | 10 | 3 | 接入外部支付系统付款,确认订单 | 微信,支付宝支付等 |
      | 5 | 订单管理 | 10 | 5 | 订单浏览,增删改查 | 用户相关 |

    5. 根据任务4,参考 使用用例点估算软件成本,给出项目用例点的估算

用例 #业务 #计算 原因 UC比重
搜寻酒店 3 2 简单
预订酒店房间 6 4 平均
搜索结果排序 4 5 简单
支付确认订单 4 3 简单
订单管理 2 3 简单