系统分析与设计04

简答题

  • 用例的概念
    用例就是一组相关的成功和失败场景集合,用来描述参与者如何使用系统来实现其目标。用例指明了系统将要实现的功能或行为需求。

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

    • 场景是参与者和系统之间一系列特定的活动和交互,也称为用例实例。场景是使用系统的一个特定情节或用例的一条执行 路径。例如使用现金成功购买商品的场景。
    • 主场景描述了满足涉众关注点的典型成功路径。主场景是最常用的,能直接地实现用户目标的流程。
  • 用例有哪些形式?

    • 摘要(brief):简短的一段总结,通常是主要的成功场景;在早期需求分析过程中,快速了解主题和范围;可能只需用几分钟来创建。
    • 非正式(casual):非正式的段落格式;覆盖多个场景的几个段落;在早期需求分析过程中,快速了解主题和范围。
    • 详述(Fully):所有的步骤和变化都写得很详细,同时具有补充部分,如先决条件和成功保证;确定并以摘要形式编写了大量用户样例后,在第一个需求研讨会期间,其中少量(例如10%)架构上重要的和高价值的用例需要被详细地编写。
  • 对于复杂业务,为什么编制完整用例非常难?
    复杂业务的子用例非常多,流程复杂,且需要处理的场景很多。因此很难考虑完全所有子用例和场景,且绘制的用例图繁杂,容易出错。

  • 什么是用例图?
    用例图是一种优秀的系统语境图,用以描述用例名称和参与者及其之间的关系,它能够展示系统边界、位于边界之外的事物以及系统如何被使用。

  • 用例图的基本符号与元素?
    系统分析与设计04

    • 参与者(Actor): 表示的是一个系统用户,也就是与应用程序进行交互的用户、组织或外部系统。
      系统分析与设计04

    • 用例(Use Case): 表示的是对系统提供的功能、服务的一种描述。
      系统分析与设计04

    • 包含关系(Include): 表示用例可以简单地包含其他用例所具有的行为,并把它所包含的用例行为作为自身行为的一部分。

    • 泛化关系(Generalization): 泛化指的是一个父用例可以被特定化形成多个子用例,而父用例和子用例之间的关系就是泛化关系。
      系统分析与设计04

    • 关联关系(Association): 表示的是参与者与用例之间的关系。
      系统分析与设计04

    • 扩展关系(Extend): 表示在一定条件下,把新的行为加入到已有的用例中,获得的新用例叫做扩展用例,原有的用例叫做基础用例,相当于为基础用例提供一个附加功能。

    • 系统边界:它用来显示用例在系统内部,执行者在系统的外部。

  • 用例图的画法与步骤

    1. 确定研讨的系统
      使用用例图 System框 表示一个待研究的系统
      正确命名系统或子系统,例如 Reserve Hotel。
    2. 识别 Actors
      识别使用系统的主要参与者(primary actors)/角色(roles)
      识别系统依赖的外部系统
    3. 识别用例(服务)
      识别用户级别用例(user goal level)
      识别子功能级别的用例(sub function level)
    4. 确定用例间的关系
      包含关系
      泛化关系
      扩展/延伸关系
    5. 建立 Actor 和 Use Cases 之间的关联
  • 用例图给利益相关人与开发者的价值有哪些?

    • 明确系统的业务范围、服务对象(角色)、外部系统与设备
    • 帮助识别技术风险,提前实施关键技术原型公关与学习
    • 易于评估项目工作量,合理规划迭代周期,规划人力需要

建模练习题(用例模型)

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

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

  1. 为什么相似系统的用例图是相似的?
    相似系统的参与者(Actor)、用例(Use Case)、边界以及它们之间的关系相似,所以它们构成的用例图也相似。而相似系统面对的客户均有类似的需求,则使得相似系统有一致的基本功能和用户操作流程,对于自己特色的扩展,也是在基本业务上的扩展,在某种程度上,也会有一定的相似。所以,最终相似系统体现出来的用例图是相似的。

  2. 如果是定旅馆业务,请对比 Asg_RH 用例图,简述如何利用不同时代、不同地区产品的用例图,展现、突出创新业务和技术。
    答:不同时代的文化,用户习惯,技术级别,法律法规均有所不同,针对所在时代的特点,需要对用例或外部系统进行设配与创新,可以用较为鲜明的颜色展现出这些创新点。

  3. 如何利用用例图定位创新思路(业务创新、或技术创新、或商业模式创新)在系统中的作用
    通过判断创新点在用例图中的位置。如果创新点属于直接与用户关联的用例,则在系统中的作用很重要。如果是子用例,则看与父用例的关系,如果是包含关系,则作用较大,如果是扩展用例,则作用较小。

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

ID Name Imp Est How to demo
1 login 4 2 input username and password
2 find hotel by location 7 1 input the hotel name to determine hotel
3 find hotel on map 3 1 slide on map to determine hotel
4 make reservation 7 4 determine hotel, room type and then confirm
5 manage basket 5 2 modify or cancel reservation
6 pay 7 3 payment supported by third party system
  1. 根据任务4,参考使用用例点估算软件成本,给出项目用例点的估算
    根据用户点方法,对用例分配权重的标准是:
    · 简单用例:1到3个事务,权重=5
    · 一般用例:4到7个事务,权重=10
    · 复杂用例:多于7个事务,权重=15
用例 # 事务 # 计算 原因 UC权重
1 login 4 2 简单
2 find hotel by location 7 7 一般
3 find hotel on map 7 1 简单
4 make reservation 4 4 一般
5 manage basket 3 2 简单
6 pay 3 2 简单
上一篇:携程酒店信息采集


下一篇:使用swagger作为restful api的doc文档生成