《软件工程》课程设计报告1目录1引言...........................................................................................................................21.1目的.................................................................................................................21.2背景.................................................................................................................21.3定义.................................................................................................................21.4问题描述.........................................................................................................21.5系统功能.........................................................................................................32需求分析...................................................................................................................42.1功能需求.........................................................................................................42.2非功能需求.....................................................................................................43各种UML图及其分析..............................................................................................53.1用例图.............................................................................................................53.2类图.................................................................................................................63.3序列图.............................................................................................................63.4状态图.............................................................................................................93.5活动图.............................................................................................................93.6体系结构图...................................................................................................113.7数据流程图...................................................................................................164心得体会.................................................................................................................1621引言1.1目的明确本系统的功能需求和性能需求,对系统的任务进行概述,对数据进行描述,提出系统的运行需求和其他需求,供系统设计人员参考。1.2背景随着社会的发展,人们对于生活品质的需求已经有了很大的提高,在繁忙的工作闲时随时随地享受一杯饮料,已成为人们的共同的需要。一般的饮料销售是在零售商店、超市或定点促销销售点,依靠销售、促销人员进行饮料的销售,有非常大的局限性,受场地、销售人员成本及工作时间等条件的限制,造成了销售饮料的灵活性的降低和成本的升高。基于以上的原因,急需要一种可以替代销售人员,灵活的饮料销售方式,自动饮料机即随之诞生。1.3定义饮料自动售货机是能根据投入的钱币自动付货的机器。自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易。是一种全新的商业零售形式,又被称为24小时营业的微型超市。智能自动饮料机是一种现代化辅助机器,它通过现代化的芯片技术,将饮料销售和采购管理简化,使用IT集成系统完成销售人员的所有工作,并根据用户的喜好调整自身的运作机制,最大化的满足人们对于饮料的需求。1.4问题描述一个饮料自动售货机可以放置五种不同的饮料,可由厂商根据销售情况自行调整,并可随时重新设置售价,售货机最多能放置50罐饮料,其按钮设计在各种饮料样本的下方,顾客选择支付方式,选择硬币支付,将硬币投入售货机,经累加金额足额的饮料选择键灯亮,等待顾客按键选择。顾客按键后饮料由取物口掉出,并自动结算及找零,顾客可在按下选择键前任意时刻,拉动退币杆取消交易收回硬币。若某一种饮料已经销售完毕,则售完灯会亮。选择“闪付”支付方式,选择产品确认支付后,可获得饮料,余额不足不能支付。同样的顾客可在没确认支付前的任意时刻取回支付产品取消交易。也可以在是否支付选择的时候选择否来取消交易。31.5系统功能(1)顾客投硬币或刷卡(闪付)至销售各种饮料的自动售货机。(2)计算器加总,并传总额给售货机,再由售货机显示总额。(3)计算器将足额的饮料灯号,使其灯亮。(4)选择灯亮的按键,选择键判断为何种饮料,售货机将该饮料投至取饮料口。(5)计算器结算,并计算余额后找零。(6)顾客在按钮选择之前可用退币杆取消交易。(7)售完的饮料,尽管投入足额的金额,仍能有效控制灯号。42需求分析2.1功能需求a.自动饮料机是一种现代化辅助机器,它通过现代化的芯片技术,将饮料销售和采购管理简化,使用IT集成系统完成销售人员的所有工作,并根据用户的喜好调整自身的运作机制,最大化的满足人们对于饮料的需求。b.能识辨硬币和读懂操作介绍的社会各阶段人群。c.只能向自动售货机投入硬币,不接纳纸币,且硬币的大小面额为,0.5元,1元,饮料品种不宜繁杂,不能挤得太满。d.输入:提供所有与本功能有关的输入描述,包括:输入数据类型、媒体、格式、数值范围、精度、单位等。e.输出-提供与本功能有关所有输出的描述,包括:输出数据类型、方式、格式、精度、单位等,以及图形或显示报告的描述。自动售货机装有货物分配器。顾客通过选择货物分配器来选择货物。若顾客选择的是投币支付方式,如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,售货机会将适当的零钱返回到退币孔,如果分配器是空的,则和顾客支付的货币值相等的硬币将被送加到退币孔。如果顾客支付的货币值少于所选择的分配器中的货物的价格,机器将等待顾客投进更多的货币。如果顾客决定不买所选择的货物,将所投硬币从退币孔退出。若顾客选择的是“闪付”方式,如果货物分配器中有货物,而且顾客持有的具备“闪付”功能的金融IC卡或银联移动支付产品上的余额不小于该货物的价格,货物将被分配到货物传送孔送给顾客,如果分配器为空,系统就会提醒你取回你的支付产品。如果顾客支付产品上的余额不足,将不能购买此产品。如果顾客不想购买所选择的货物,会有是否支付的选择,选择否,即可行。2.2非功能需求系统性能要求a.时间特性一次购买时间不应太长,不能一直停留在浏览上,否则退出系统b.精度要求c.系统有效性系统每天需要连续运行24小时,每周运行七天,包括公共假期和周末d.容错性e.可扩充性系统安全及保密要求因本数据属于公司内部管理用关键数据,因此除公司管理人员外,其他人员不得访问。要求设有登录密码检验功能,并且此密码可以在以后进行修改。环境异常时,系统暂停使用,等待维修人员维修。记录交易信息,维护信息。日志内容只能由管理员访问。53各种UML图及其分析3.1用例图顾客可以选择投币或刷卡两种功能购买饮料选择投币则投入硬币后选择可购买的饮料进行交易,取消交易时系统则退币及结算找零刷卡交易则刷卡选择饮料进行交易厂商经过身份验证以后可登陆ATM机放置饮料、设置饮料价格和拿走营业额6用例说明:选择交易:顾客向系统发出请求,选择硬币交易还是刷卡交易购买饮料:由顾客向系统发出购买请求,投币或者刷卡自动获得饮料取消购买饮料:当顾客选择错误或放弃购买时,系统撤销该笔交易,并响应顾客请求退币,取消购买请求响应继续添加钱币:当系统提示钱币不足或者卡上余额不足时,询问消费者是否继续投币,系统作出相关处理接受投币,进行钱币累加或者退币退币:消费者一次购买后,饮料售货机询问是否继续购买,消费者放弃购买则系统退币继续购买:顾客一次购买后自动售货机询问是否继续购买,如若购买则计算金额是否足够设定饮料价格:厂商对已经编号的饮料进行售价标定,售货机记忆存储3.2类图顾客有选择交易方式,投币,刷卡,选择饮料,拉动退币干退币等类厂商则有登陆、放置饮料,设置价格,获得营业额等ATM机内部有验证厂商信息,统计饮料数量,计算营业额,接受钱币并计算,结算找零等3.3序列图投币购物顾客先选择投币购买功能——》系统接收到顾客的选择功能——》顾客向系统投币——》若所投钱币不够买任何饮料则显示金额不足——》继续投币——》系统显示金额足够——》7显示灯亮——》顾客选择饮料种类——》系统接受选择键信息——》系统打开取物娄送出饮料——》顾客去除饮料——》显示灯灭——》结算找钱刷卡购物顾客选择刷卡购物——》系统接受选择键信息——》系统提示顾客刷卡——》顾客选择饮料种类——》系统接受选择键信息——》系统提示顾客刷卡——》系统打开取物娄并送出饮料——》顾客取出饮料8拉杆退币顾客拉动退币干——》系统接受退币干信息——》显示灯灭——》打开储币口并退还钱币——》顾客取出自己的钱币93.4状态图提示投币检查硬币提示是假币,退币存储硬币,计算货币总值确认投完硬币请求选择货物检测货物存量提示无货计算比较货币总值和货物价格确认确认顾客购买送出货物,请求取货退币请求取退币提示显示交易完毕提示货物不足,确认顾客购买否假币投币真币是选择货物无货小于不购买购买不购买3.5活动图厂商活动图厂商对售货机进行放置饮料和设置相应的价格10厂商身份验证活动图并不是每一个人都能对售货机进行管理,厂商会有专门的人员进行相关操作,这也就需要售货机有相应的厂商身份验证,如果通过了验证,才能对自动售货机进行维