案例分析题

阅读下列系统设计说明,并回答下列问题,将解答填入答题纸的对应栏内。
【说明】
某玩具公司正在开发一套电动玩具在线销售系统,用于向注册会员提供端对端的玩具 定制和销售服务。在系统设计阶段,"创建新订单 (New Order)" 的设计用例详细描述如表 3-1 所示,候选设计类分类如表 3-2 所示,并根据该用例设计出部分类图如图3-1所示。
表3-1创建新订单(New Order)设计用例

用例名称 创建新订单New Order
用例编号 ETM-R002
参与者 会员
前提条件 会员已经注册并成功登录系统
典型事件流 1.会员(C1)点击“新的订单”按钮;
2.系统列出所有正在销售的电动玩具清单及价格(C2)
3.会员点击复选框选择所需电动玩具并输入对应数量,点击“结算”按钮;
4.系统自动计算总价(C3),显示销售清单和会员预先设置个人资料的收货地址和支付方式(C4);
5.会员点击“确认支付”按钮;
6.系统自动调用支付系统(C5)接口支付该账单;
7.若支付系统返回成功标识,系统生成完整订单信息持久存储到数据库订单表(C6)中;
8.系统将以表格形式显示完整订单信息(C7)同时自动发送完整订单信息(C8)至会员预先配置的邮箱地址(C9)。
候选事件流 3a (1)会员点击“定制”按钮;
(2)系统以列表形式显示所有可以定制的电动玩具清单和定制属性(如尺寸、颜色等)(C10);
(3)会员点击单选按钮选择所需要定制的电动玩具并填写所需要定制的属性要求,点击“结算”按钮;
(4)回到步骤4。
  7a (1)若支付系统返回失败标识,系统显示会员当前默认支付方式(C11)让会员确认;
(2)若会员点击“修改付款”按钮,调用“修改付款”用例,可以新增并存储为默认支付方式(C12),回到步骤4;
(3)若会员点击“取消订单”,则该用例终止执行。

表3-2候选设计类分类

接口类(Interface,负责系统与用户之间的交互) (a)
控制类(Control,负责业务逻辑的处理) (b)
实体类(Entity,负责持久化数据的存储) (c)


在订单处理的过程中,会员可以点击“取消订单"取消该订单。如果支付失败,该订单将被标记为挂起状态,可后续重新支付,如果挂起超时30分钟未支付,系统将自动取消该订单。订单支付成功后,系统判断订单类型:
(1)对于常规订单,标记为备货状态,订单信息发送到货运部,完成打包后交付快递发货;
(2)对于定制订单,会自动进入定制状态,定制完成后交付快递发货。会员在系统中点击”收货"按钮变为收货状态,结束整个订单的处理流程。根据订单处理过程所设计的状态图如图3-2所示。

问答题

根据表3-1中所标记的候选设计类,请按照其类别将编号C1-C12分别填入表3-2中的(a)、(b)和(c)处。

【正确答案】

(a):CA. CS、C7. C10. C11
(b):C3. C9
(c):C1、C2、C6、C9、C12

【答案解析】
问答题

根据创建新订单如用例描述,请给出图3-1中x1~x4处对应类的名称。

【正确答案】

X1:收货地址
X2:支付方式
X3:邮箱地址
X4:定制属性

【答案解析】
问答题

根据订单处理过程的描述,在图 3-2 中S1~S5处分别填入对应的状态名称。

【正确答案】

S1:订单挂起
S2:订单备货
S3:订单定制
S4:订单发货
S5:订单收货

【答案解析】