系统分析与设计第四次作业

1.简答题

  • 用例的概念

用例(英语:use case),或译使用案例、用况,是软件工程或系统工程中对系统如何反应外界请求的描述,是一种通过用户的使用场景来获取需求的技术。

  • 用例和场景的关系?什么是主场景或 happy path?

场景是actors和系统之间特定的一系列动作和绘画,是用例的实例。一个用例是一些场景的集合。
主场景(基本流)对应系统的主要的交互,通常是“成功”的场景。主场景是最常用的,能直接地实现用户目标的流程。
主场景或happy path是指用例从触发时间开始,一步一步执行,最终满足用例利益的步骤集合。

主成功场景应该包括一下信息:

  1. 两个执行者之间的交互。如,用户提交了订单。

  2. 为保证主成功场景得以继续的确认。如,系统确认用户密码。

  3. 主成功场景推进过程中的内部变化。如,系统扣除用户账户余额。

  • 用例有哪些形式?

摘要:简洁的一段式概要,通常用于主成功场景。

非正式:非正式的段落格式。用几个段落覆盖不同场景。

详述:详细编写所有步骤及各种变化,同时具有补充部分,如前置条件和成功保证。

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

对于复杂业务,场景也会非常多,很难完整得考虑到所有完整场景,而且在开发过程中,需求还会发生改变,场景也会发生变化。所以对于复杂业务,编制完整用例且不遗漏情景、良好地安排每个场景、场景内元素地关系非常困难。

  • 什么是用例图?

用例图是指参与者(Actor)、用例(Use Case)、边界以及它们之间的关系构成的用于描述系统功能的视图。用例图可以识别系统的不同类型的用户和不同的用例,并且常常伴随着其他类型的图。用例图是系统的蓝图。用例图呈现了一些参与者,一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。

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

  1. 参与者:表示的是一个系统用户
    系统分析与设计第四次作业
  2. 用例(Use Case):表示的是对系统提供的功能、服务的一种描述。
    系统分析与设计第四次作业
  3. 系统(System) :表示一个系统
    系统分析与设计第四次作业
  4. 用例之间的关系
    1. 包含关系(include):表示用例可以简单地包含其他用例所具有的行为,箭头指向被包含的用例。
      系统分析与设计第四次作业
    2. 关联关系(Association):表示的是参与者与用例之间的关系。
      系统分析与设计第四次作业
    3. 扩展/延伸关系(Extend):表示在一定条件下,把新的行为加入到已有的用例中,获得的新用例叫做拓展用例,原有的叫做基础用例,相当于为基础用例提供了一个附加功能,箭头指向基础用例。
      系统分析与设计第四次作业
    4. 泛化关系(Generalization):泛化指的是一个父用例可以被特化形成多个字用例,箭头指向父用例。
      系统分析与设计第四次作业
  • 用例图的画法与步骤

    1. 确定研讨的系统
    2. 确定参与者,以及参与者之间的关系
    3. 确定系统依赖的外部系统
    4. 根据需求识别和创作用例
    5. 确定用例与用例本身以及用例与参与者之间的关系
  • 用例图给利益相关人与开发者的价值有哪些?

利益相关人:用例图清晰地展示了系统的功能组成,客户可以清楚地看到系统设计与自己的要求是否相符。同时,客户可以简单修改用例图来表达需求变更的想法。
开发者:用例图明确地表达了用户的需求,因此系统架构的设计可以更加准确,同时系统的工作量评估也变得方便。

建模练习题(用例模型)

  • 选择2-3个你熟悉的类似业务的在线服务系统(或移动 APP),如定旅馆(携程、去哪儿等)、定电影票、背单词APP等,分别绘制它们用例图。并满足以下要求:

    • 请使用用户的视角,描述用户目标或系统提供的服务
    • 粒度达到子用例级别,并用 include 和 exclude 关联它们
    • 请用色彩标注出你认为创新(区别于竞争对手的)用例或子用例
    • 尽可能识别外部系统和服务
      系统分析与设计第四次作业
      系统分析与设计第四次作业
  • 然后,回答下列问题:

    • 为什么相似系统的用例图是相似的?
      因为相似系统的业务是相似的,所以用例图也是相似的。
      相似系统有着相似的客户需求,同时在实现方式上也有借鉴和学习,最大限度地提高客户的使用体验,所以相似系统的用例图是相似的。

    • 如果是定旅馆业务,请对比 Asg_RH 用例图,简述如何利用不同时代、不同地区产品的用例图,展现、突出创新业务和技术
      可以让筛选算法与时俱进,满足一些不同的主流要求。且用户会需要更加优秀、好用、有参考价值的评价系统,也需要随时更新。而对比不同地区的产品,可以结合不同地区的市场调研,对产品进行进一步创新。

    • 如何利用用例图定位创新思路(业务创新、或技术创新、或商业模式创新)在系统中的作用
      应该通过创新点在图中的位置来判断。如果创新位于较高的父级,则作用比较大。如果是子类或者是被包括的关系,则作用相对较小。

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

Id title Imp Est How to demo
1 查找酒店 7 3 根据时间位置人数查找酒店
2 预定 10 5 选择筛选酒店、房间类型、是否接送和早餐
3 订单确认 5 2 确认入住人信息和到达时间
4 支付 6 3 银行卡或者线上支付订单
  • 根据任务4,参考 使用用例点估算软件成本,给出项目用例点的估算
用例 事务 计算 原因 权重
1.查找酒店 7 5 10
2.预定 8 6 10
3.订单确认 5 3 5
4.支付 3 2 5