华北科技学院计算机学院综合性实验实验报告课程名称面向对象建模UML实验学期2012至2013学年第二学期学生所在院部计算机学院年级专业班级学生姓名学号任课教师实验成绩计算机学院制《面向对象建模UML》课程综合性实验报告开课实验室:七机房2013年6月18日实验题目食堂售饭系统UML建模1、实验目的1、掌握UML的表示法。2、掌握陈述问题和分析问题的方法,使用UML进行面向对象系统分析。3、使用UML进行面向对象系统设计。4、掌握面向对象建模的流程和基本思想。2、设备与环境硬件:多媒体计算机软件:Windows系列操作系统、StarUML建模工具三、实验内容及要求1.实验要求1.完成用户需求的分析,找出系统的执行者、用例,画出用例模型图。2.找出系统的概念类,建立领域模型。3.画出系统顺序图,找出系统与外界交互的消息。4.找出系统的设计类,建立设计类模型图。5.完成系统中主要类的详细设计。6.重点画出用例图、类图及顺序图。2.实验内容1.1、用例图:食堂售饭系统的用户主要是学生、食堂管理部门和食堂工作人员,因此该系同的用例包括办理饭卡、充卡、补办、挂失饭卡、退换饭卡、扣除饭菜金额和查看个人明细等。就食堂售饭系统而言,其主要功能是让持卡人用饭卡使购买饭菜的过程绕过了付款及找零的环节,提高了服务效率,而管理部门和食堂工作人员的作用都是为了使用户免于对系统的直接操作而设置的,因而此两者应归为食堂售饭系统的内部,相当于用户和具体的计算机软硬件系统之间的接口。持卡人需要通过食堂售饭系统来使用其所持有饭卡买饭,因而是整个系统的执行者;管理部门根据持卡人的需求操作计算机系统从而实现与饭卡相关信息的管理,是位于食堂售饭系统内部的执行者;食堂工作人员同样通过操作计算机系统来实现购买饭菜过程中的扣费功能以及对营业情况进行的汇总统计的功能,也是位于食堂售饭系统内部的执行者。其用例图如图1.1。图1.1食堂售饭系统用例图根据用例模型图,对其中8个用例的简单描述如下:用例:l办理新饭卡:管理部门人员负责在用户申请新卡时替用户办理新饭卡。l饭卡充值:管理部门人员负责根据持卡人所给的金额向饭卡中追加存款金额。l注销饭卡:管理部门人员负责在持卡人补办新卡或退卡时注销其原有饭卡。l挂失/撤销挂失饭卡:管理部门人员负责在持卡人因饭卡遗失申请挂失时进行挂失饭卡操作,在其找回饭卡时撤销对饭卡的挂失。l补办饭卡:管理部门人员负责在持卡人确认饭卡丢失或者损坏时替其补办饭卡,更改饭卡版本号,并实现只能使用最新版本号的饭卡。l退还饭卡:管理部门人员负责在持卡人申请退卡时清除卡内信息,退还剩余金额和押金。l查看个人信息明细:管理部门人员负责在持卡人申请查看其信息明细。l扣除饭卡费用:食堂工作人员负责在持卡人持卡消费时根据饭菜的价格对饭卡进行扣费操作。l营业汇总统计结算:食堂工作人员负责在每天营业结束后对营业情况进行汇总统计并打印相关报表。1.2.用例事件流描述:1).办理新饭卡l基本流1.用户申请办理新饭卡2.管理部门收取其押金和存款,记录持卡人相关信息3.管理部门创建新饭卡的相关信息4.用户领取新饭卡l备选流无2).饭卡充值l基本流1.持卡人申请对饭卡充值2.管理部门向持卡人收取现金3.管理部门根据持卡人要求向饭卡中充值l备选流3.a如果收取现金金额大于充值额度,管理部门向持卡人找零3).注销饭卡l基本流1.持卡人申请注销饭卡2.管理部门注销饭卡l备选流无4).挂失/撤销挂失饭卡l基本流1.持卡人申请挂失/撤销挂失饭卡2.管理部门执行相应操作l备选流无5).补办新卡l基本流1.持卡人申请补办新卡2.管理部门注销持卡人原有饭卡,读出余额,清除卡内信息3.管理部门创建新饭卡的相关信息4.管理部门更新持卡人的相关信息5.持卡人领取新饭卡l备选流无6).退还饭卡l基本流1.持卡人申请退还饭卡2.管理部门收回饭卡3.管理部门将押金退还持卡人并清除卡内信息l备选流2.a如果卡内有剩余金额,管理部门想持卡人退还相应金额7).查看个人信息明细l基本流1.持卡人申请查看个人信息明细2.管理部门让持卡人输入饭卡密码3.持卡人查看个人信息明细l备选流2.a如果饭卡密码错误,给出提示,结束8).扣除饭卡费用(对应于持卡人使用饭卡消费)l基本流1.持卡人购买饭菜,将饭卡放到自动售饭机上2.食堂工作人员在自动售饭机上输入饭菜的金额3.自动售饭机查询饭卡余额4.卡内金额扣除l备选流3.a如果卡中金额不够用,给出提示,结束4.a如果卡内金额低于底线,给出提示,结束9).营业汇总统计结算l基本流1.食堂工作人员按需求对营业情况进行汇总统计2.打印相关报表l备选流无2.类图食堂售饭系统对应的概念类类图如图2.1。图2.1食堂售饭系统对应的概念类类图该类图主要描述了食堂工作人员、食堂管理人员、持卡人、饭卡、计算机系统、售饭机和数据库等的外部特性及实现方法的描述。3.顺序图3.1办理新饭卡的顺序图食堂售饭系统的办理新饭卡的顺序图如图3.1。图3.1办理新饭卡顺序图3.2追加金额的顺序图食堂售饭系统的追加金额的顺序图如图3.2。图3.2饭卡充值顺序图3.3补办新饭卡的顺序图食堂售饭系统的补办新饭卡的顺序图如图3.3。图3.3补办新卡顺序图3.4退还饭卡的顺序图食堂售饭系统的退还新饭卡的顺序图如图3.4。图3.4退换饭卡顺序图3.5挂失/撤销挂失饭卡的顺序图食堂售饭系统的挂失/撤销挂失饭卡的顺序图如图3.5。图3.5挂失/撤销挂失饭卡顺序图3.6扣除饭卡金额的顺序图食堂售饭系统的扣除饭卡金额的顺序图如图3.6。图3.6扣除饭卡顺序图3.7注销饭卡金额的顺序图食堂售饭系统的注销饭卡金额的顺序图如图3.7。图3.7注销饭卡顺序图3.8查看个人信息的顺序图食堂售饭系统的查看个人信息的顺序图如图3.8。图3.8查看个人信息顺序图3.9营业汇总统计结算的顺序图食堂售饭系统的营业汇总统计结算的顺序图如图3.9。图3.9营业汇总统计结算顺序图4.活动图活动图描述的是一个操作的执行过程中所完成的工作或动作,并在这一过程中显示了如何执行一组相关的动作。4.1食堂管理人员活动图食堂售饭系统的食堂管理人员活动图如图4.1.图4.1食堂管理人员活动图该活动图是对管理员进入系统后根据相应的需要选择相应需求,为学生完成相关服务!4.2食堂系统活动图食堂售饭系统的食堂系统活动图如图4.2.图4.2食堂系统活动图4.3办理新饭卡活动图食堂售饭系统的办理新饭卡活动图如图4.3.图4.3办理新饭卡顺序图5.包图食堂售饭系统的包图如图5.1。图5.1食堂售饭系统包图包图用来补充说明事件。GUI包是图像用户界面的包图;SeverPackage包是事件包!如工作人员键入数据收款机损坏数据键入数值有误等等!从而进行相应的处理!CardClientPackage处理卡的相应事件!如当卡内余额不足时给出相应提示。6.构件图食堂售饭系统的构件图如图6.1。图6.1食堂售饭系统的构件图构件图是从物理中端的角度体现了系统中各个接口之间的联系。本构件图从食堂售饭系统的角度描述了该系统分为的几个子系统,并且每个构件都具有独立的功能。7.部署图食堂售饭系统的部署图如图7.1。图7.1食堂售饭系统的部署图部署图描述了系统运行时的就餐系统中的各个物理节点上软件结构的视图和系统的基本网络结构。本部署图描述的是食堂售饭系统的各个节点的上运行的软件构件。四、实验结果及分析通过这次的综合实验,我对本学期的在课堂上讲解的理论知识加深了印象,并且有了更进一步的认识,也对面向对象的设计方法及其途径有了系统的理解和深刻的体会。了解了UML统一建模语言,用于需求模型的领域及建模时的一些条件,并且知道了建模还可以帮助理解全局。通过使用一些图,可以方便的了解整个系统的功能、结构和行为。还认识到通过模型可以实现业务领域到软件领域的映射,通过建模可以使问题可视化、形式化。虽然比较全面的考虑了系统的功能,但仍存在诸多不尽如人意的地方。面向对象的分析、设计方法有五类、十种,在本次设计中着重设计了用例图、类图和顺序图三种,还简要介绍了合作图、协作图、部署图、构件图和包图等几种UML图,用于对这种分析方法的理解有限和对系统认识不够,还有很多功能没有实现,希望在以后的进一步学习中,可以升华本课学习的认识,也进一步加深对这种知识的理解。评定项目ABCD评定项目ABCD分析问题正确界面美观,布局合理设计结构合理操作熟练重点突出解析完整实验结果文字流畅教师评价正确报告规范题解正确其他:评价教师签名:年月日