系统分析与设计 Note4

1. 用例的概念

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

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

每个用例提供了一个或多个场景,该场景说明了系统是如何和最终用户或其它系统互动,也就是谁可以用系统做什么,从而获得一个明确的业务目标。

happy path 是没有异常或错误情况下的默认方案。例如:验证信用卡号功能的happy path就是当没有验证规则导致一个错误,因此让执行继续,成功结束,产生一个正常的回应。

3. 用例有哪些形式?

Alistair Cockburn在编写有效用例一书中确定了三种书写用例的细度。

摘要

摘要用例有很少的句子组成来总结的用例。它十分适合在电子表格中计划软件开发。一个摘要用例能够简单插入电子表格的单元格中并且用表格中的其它列记述业务优先级,技术复杂度,版本号等。

非正式

一个非正式的用例由文本段落组成,包括了上面提到的那些列,用总结或故事的形式详细的描述了用例。

完整正式

一个完整正式或者复杂的用例是一个以包含了不同部分的长模板为基础的正规的文档。该用例在下面的用例模板部分进行讨论。

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

每个用例集中描述如何获得一个业务目标或任务。从传统的软件工程视角来看,用例只是描述了系统的一个特征。所以对大部分软件项目来说,这就意味着需要很多(有可能是数十个)用例来完整的描述新系统。一个特殊软件项目的正规度和项目的不同阶段将会影响每一用例需要的详细程度。

5. 什么是用例图?

用例图(use case diagram)是用户与系统交互的最简表示形式,展现了用户和与他相关的用例之间的关系。通过用例图,人们可以获知系统不同种类的用户和用例。

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

用例图由参与者(Actor)、用例(Use Case)、系统边界、箭头组成,用画图的方法来完成。

参与者

在这里插入图片描述
参与者不是特指人,是指系统以外的,在使用系统或与系统交互中所扮演的角色。因此参与者可以是人,可以是事物,也可以是时间或其他系统等等。

用例

在这里插入图片描述
用例是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果。

系统边界

在这里插入图片描述
系统边界是用来表示正在建模系统的边界。边界内表示系统的组成部分,边界外表示系统外部。系统边界在画图中用方框来表示,同时附上系统的名称,参与者画在边界的外面,用例画在边界里面。

箭头

在这里插入图片描述
箭头用来表示参与者和系统通过相互发送信号或消息进行交互的关联关系。箭头尾部用来表示启动交互的一方,箭头头部用来表示被启动的一方,其中用例总是要由参与者来启动。

7. 用例图的画法与步骤?
  1. 确定研讨的系统
    使用用例图 System框 表示一个待研究的系统
  2. 识别Actors
    识别使用系统的主要参与者(primary actors)/角色(roles),使用用例图 actor符号 表示,通常放在系统的左边
  3. 识别系统依赖的外部系统
    使用用例图 Neighboursystem框 表示用例依赖的外部系统、服务、设备,并使用构造型(Stereotype)识别
  4. 识别用例(服务)
    识别用户级别用例(user goal level)
    识别子功能级别的用例(sub function level)
  5. 建立Actor和Use Cases之间的关联
    使用 无方向连线,表示两间之间是双向交互的协议
8. 用例图给利益相关人与开发者的价值有哪些?
  • 明确系统的业务范围、服务对象(角色)、外部系统与设备
  • 帮助识别技术风险,提前实施关键技术原型公关与学习
  • 易于评估项目工作量,合理规划迭代周期,规划人力需要

建模

订酒店(携程)
在这里插入图片描述
订电影票(猫眼)
在这里插入图片描述
黄色代表创新部分。

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

因为用例是由需求决定的,相似的系统都有相似的功能,服务于相似的用户,所以用例图相似。

2. 如果是定旅馆业务,请对比 Asg_RH 用例图,简述如何利用不同时代、不同地区产品的用例图,展现、突出创新业务和技术
  1. 可以通过地图API更好地确定位置
  2. 可以通过评价系统来使得质量好的酒店被更多人知道
  3. 不仅可以通过信用卡支付,还可以使用微信,支付宝等在线支付
3. 如何利用用例图定位创新思路(业务创新、或技术创新、或商业模式创新)在系统中的作用

首先,要找准用户的需求痛点:比如原始的系统缺乏对酒店的介绍和描述,用户如果不是特别熟悉那家酒店可能就不敢预定了;而现代系统加入足够多的信息描述,包括居住环境的照片,还有点评打分系统,让住客更加安心。
其次,可以结合更好更新的技术:比如这里支付方式的改进。

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

根据携程网用例图指定开发backlog

编号用例重要性估计(人日)如何展示备注
1选旅馆3030能够以列表的形式看到我的备选旅馆的基本信息,选中后跳转到该旅馆的详情页
2预约3030选择日期和房型,生成订单展示出来的房型都是在选择日期下可用的
3支付3040选择支付方式,输入账号和密码,支付账号扣款,商家收款接入主流支付系统API,重要性高但可以晚点完成
4查看酒店详情2010选中某个旅馆后点击跳转到该页,显示相关信息
5直接搜索2015输入或选择目的地后,搜索得到该目的地范围内的酒店列表结合地标、商圈等的搜索暂时不做
6筛选105输入或选择筛选条件后,得到符合条件的酒店列表
7排序105选择某种顺序排序后,得到排序后的酒店列表
8在地图上搜索510根据输入的目的地,地图上定位到相应范围,用图标把酒店标注出来,点击酒店可跳转到对应详情该需求有待补充和细化
5. 根据任务4,参考 使用用例点估算软件成本,给出项目用例点的估算
用例# 事务# 计算原因UC权重
1 选旅馆65复杂性
2 预约65简单
3 支付55框架平均
4 查看酒店详情55专家估算简单
5 直接搜索45简单
6 筛选25简单
7 排序35简单
8 在地图上搜索65困难
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值