系统分析与设计04

2022-06-23 12:49:58 浏览数 (1)

简答题

  • 用例的概念 用例就是一组相关的成功和失败场景集合,用来描述参与者如何使用系统来实现其目标。用例指明了系统将要实现的功能或行为需求。
  • 用例和场景的关系?什么是主场景或 happy path?
    • 场景是参与者和系统之间一系列特定的活动和交互,也称为用例实例。场景是使用系统的一个特定情节或用例的一条执行 路径。例如使用现金成功购买商品的场景。
    • 主场景描述了满足涉众关注点的典型成功路径。主场景是最常用的,能直接地实现用户目标的流程。
  • 用例有哪些形式?
    • 摘要(brief):简短的一段总结,通常是主要的成功场景;在早期需求分析过程中,快速了解主题和范围;可能只需用几分钟来创建。
    • 非正式(casual):非正式的段落格式;覆盖多个场景的几个段落;在早期需求分析过程中,快速了解主题和范围。
    • 详述(Fully):所有的步骤和变化都写得很详细,同时具有补充部分,如先决条件和成功保证;确定并以摘要形式编写了大量用户样例后,在第一个需求研讨会期间,其中少量(例如10%)架构上重要的和高价值的用例需要被详细地编写。
  • 对于复杂业务,为什么编制完整用例非常难? 复杂业务的子用例非常多,流程复杂,且需要处理的场景很多。因此很难考虑完全所有子用例和场景,且绘制的用例图繁杂,容易出错。
  • 什么是用例图? 用例图是一种优秀的系统语境图,用以描述用例名称和参与者及其之间的关系,它能够展示系统边界、位于边界之外的事物以及系统如何被使用。
  • 用例图的基本符号与元素?
  • 参与者(Actor): 表示的是一个系统用户,也就是与应用程序进行交互的用户、组织或外部系统。
  • 用例(Use Case): 表示的是对系统提供的功能、服务的一种描述。
  • 包含关系(Include): 表示用例可以简单地包含其他用例所具有的行为,并把它所包含的用例行为作为自身行为的一部分。
  • 泛化关系(Generalization): 泛化指的是一个父用例可以被特定化形成多个子用例,而父用例和子用例之间的关系就是泛化关系。
  • 关联关系(Association): 表示的是参与者与用例之间的关系。
  • 扩展关系(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 关联它们
    • 请用色彩标注出你认为创新(区别于竞争对手的)用例或子用例
    • 尽可能识别外部系统和服务
  • 然后,回答下列问题:
  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

简单

uml

0 人点赞