当前位置:文档之家› 软件工程自动售货机系统

软件工程自动售货机系统


货物,硬币
退币
2009-12-22
第 10 章第 4 题参考答案
建立自动售货机系统的对象模型、 动态模型和功能模型, 即给出对应于三个模型的类图、 状态图和数据流图。 1、对象模型
硬币计算器 硬币总面值 比较值 1 ▼组成 1 硬币存储器 各面值货币数 1 ▼存储 0..* 硬币 大小 重量 厚度 边缘类型 面值 1
硬币检测器 检测状态 有效币特征 1 ▼组成 1 投币口 1 ▼组成 组成▲ 1 1 自动售货机 名称 分配器编号 1 1 ▲组成 1..* 通信▼ 退币孔 1 ▼组成 货物分配器 名称 货物数量 货物价格 1 ▲使用 拥有▲ 0..* 顾客 ▼存储 0..* 货物 名称
▼通信
有效币
假币
注: 对象硬币计算器和对象硬币检测器可以作为对象自动售货器的一部分, 它们的属性作为 自动售货器的属性。
2、动态模型
提示投币 do/ 请求投币 投币 [假币] do/ 提示是假币,退币 do/ 检查硬币 [真币]
do/ 存储硬币,计算货币总值 [否] do/ 确认投完硬币 [是]
do/ 请求选择货物 选择货物 [无货] do/ 检测货物存量 [有货] 计算 do/ 比较货币总值和货物价格 [不小于] 确认 do/ 确认顾客购买 购买 [无零钱] do/ 送出货物,请求取货 [有零钱] 不购买 [小于] do/ 提示货币不足,确认顾客购买 不购买 do/ 提示无货 购买
do/ 退币,请求取退币 取退币 提示 do/ 显示交易完毕
3、功能模型
有效币特征
假币 假币
退假币
检查硬币
有效币
硬币
送入硬币储藏 器计算面值
硬币
Байду номын сангаас
顾客投币 顾客 顾客取消购 买,退币
顾客
货物价格
货币总值 不足
等待顾客投 币
硬币
选择货物
有货
判断货币是否 足够
足够
判断分配器货 物存量
无货 硬币
分配货物, 找零
相关主题