前-中-中-中-后-《软件方法》自测题解析41

本文探讨了领域驱动设计中的用例规约原则,强调主执行者的重要性,并通过实例说明了系统分层(如前台-后台)对需求分析的影响。同时讨论了何时在用例中适当地使用UML概念,以及如何在建模时考虑扩展性和约束。最后提到了UMLChina服务的选择建议。
摘要由CSDN通过智能技术生成

DDD领域驱动设计批评文集

做强化自测题获得“软件方法建模师”称号

《软件方法》各章合集


《软件方法》第6章自测题1

7 [ 单选题 ]

以下用例规约主要违反了书写用例规约的什么要点?

1. 市民向前台系统请求即时查询话费

2. 前台系统向后台系统发送查询请求

3. 后台系统查询话单,解析话单,计算话费

4. 后台系统传递话费结果给前台系统

5. 前台系统反馈话费清单

……

A) 遵照请求、验证、改变、回应四部曲

B) 使用主动语句理清责任

C) 主语只能是主执行者名称或“系统”

D) 使用核心域概念

答案和解析

正确选项为C) 主语只能是主执行者名称或“系统”

书中知识点:

图片

如果要修正,可不能把“前台系统”和“后台系统”替换成“系统”了事,而是要把“前台系统”和“后台系统”之间的交互删掉,只保留市民和系统的交互:

1 市民请求即时查询话费

2 系统反馈话费清单

然后,可以问“为什么”。为什么之前设想“前台系统”和“后台系统”如此分工的解决方案,不这样的话,可能会引起怎样的后果呢?

回答可能是:不这样的话,反馈话费清单的时间就长;不这样的话,不能支持10万市民同时查询……

★当然,这样的回答不对,因为还可以用其他解决方案。

“3秒之内反馈清单”或“支持10万市民同时查询”才像是真正的需求。只要能做到这些,系统分前台-后台,还是分前台-中台-后台,还是前-中-中-中-后,还是4-3-3、4-2-3-1、5-4-1,涉众(市民)无所谓。 

图片

8 [ 多选题 ]

什么情况下“类”、“组件”、“UML”、“泛化”、“关联”等词汇出现在用例规约里是合适的?

A) 做电商系统的分析和设计的时候

B) 研究的系统是UML建模工具的时候

C) 电商系统的前排涉众明确指定设计约束的时候

D) 用UML为电商系统建模的时候

答案和解析

正确选项为B) 研究的系统是UML建模工具的时候 C) 电商系统的前排涉众明确指定设计约束的时候

书中知识点:

图片

9 [ 单选题 ]

针对以下步骤来寻找扩展路径和补充约束,正确的说法是:

基本路径

1. 医生选择需要分析的患者

2. 系统反馈患者原始数据

3. 医生请求做脊波分析

4. 系统判断患者原始数据适合由系统来做脊波分析

5. 系统对患者原始数据做脊波分析

6. 系统反馈分析结果

A) 步骤2应该业务规则

B) 步骤3应该有性能需求

C) 步骤5应该有扩展

D) 步骤6应该有字段列表

答案和解析

正确选项为D) 步骤6应该有字段列表

可能有疑惑的是C,有的同学可能会觉得C有扩展。

步骤6只是写“反馈分析结果”,对于分析结果如何并没有倾向。

那分析失败怎么办呢?

会失败吗?有的同学可能说“会啊,编码没编好,数据库没设计好,网络断了,硬盘坏了,停电了,都有可能”,但这些是实现中的问题,和需求没有关系。

建模需求的时候,要把目标系统看作是外星人负责建造、部署和维护的,并且因此杀光不再需要的研发人员。外星人的黑科技怎么会出这样的问题呢?

最关键的是,“编码没编好,数据库没设计好,网络断了,硬盘坏了,停电了”这样的事情,和目标系统没有特定关系,放之四海皆准。

一旦把放之四海皆准的知识强加到某个特定场景,必然会带来废话刷工作量。

当然,如果你走的是领域驱动设计伪创新投资少、见效快、产量高、门槛低、仪式感十足的路线,那就没问题。


如何选择UMLChina服务

UMLChina公众号精选(20240222更新)

  • 17
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值