需求陈述: 某种出售罐装饮料的自动售货机。( Vending Machine)的工作过程描述如下:1. 顾客选择所需购买的饮料及数量。2. 顾客从投币口向自动售货机中投入硬币(该自动售货机只接收硬币)。硬币器收集投入的硬币并计算其对应的价值。如果所投入的硬币足够购买所需数量的这种饮料且饮料存储仓中的饮料数量足够,则推出饮料,计算找零,顾客取走饮料和找回的硬币;如果投入的硬币不够或者所选购的饮料数量不足,则提示用户继续投入硬币或重新选择饮料及数量。3. 一次购买结束之后,将硬币器中的硬币移走(清空硬币器),等待下一次交易。自动售货机还设有一个退币按钮,用于退还顾客所投入的硬币。已经成功购买饮料的钱是不会被退回的。(1)给出自动售货机系统所涉及的类,并给出类图。
用例“购买饮料”的用例规约描述如下。
参与者:顾客。
主事件流:
1.顾客选择需要购买的饮料和数量,投入硬币;2.自动售货机检查顾客是否投入足够的硬币,如果硬币不够,则转2a; 3.自动售货机检查饮料存储仓中所选购的饮料是否足够,如果满足顾客要求,则转第4步,否则转3a; 4.自动售货机推出饮料;5.自动售货机返回找零。6. 一次购买结束之后,将硬币器中的硬币移走(清空硬币器),等待下一次交易。 扩展事件流: 2a.若投入的硬币不足,则给出提示并退回到1; 3a.若所选购的饮料数量不足,则给出提示并退回到1 。 根据用例“购买饮料”得到自动售货机的4个状态:“空闲”状态、“准备服务”状态、“可购买”状态以及“饮料出售”状态。
要求:用面向对象方法学对自动售货机系统进行分析与设计,分别完成以下工作:(1) 给出自动售货机系统所涉及的类,并给出类图。(2) 给出用例“购买饮料”的顺序图。(3) 给出对象----自动售货机的状态图。(4) 给出用例“购买饮料”的活动图。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |