还剩38页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
目录TOC\o1-3\h\z\u设计总说明IintroductionII1项目概述
11.1系统背景概述
11.2餐饮管理系统简介
11.3系统开发的目的和意义
21.4系统开发的原则22可行性研究
32.1技术可行性分析
32.2经济可行性分析
32.3操作可行性分析
42.4社会可行性分析43需求分析
53.1系统需求分析
53.2功能需求
63.
2.1用例分析
63.
2.2概念类描述
103.
2.3行为描述
123.3性能需求
133.
3.1响应时间
133.
3.2吞吐量
143.
3.3并发用户数
143.
3.4资源利用率
143.4环境需求
143.
4.1硬件环境
143.
4.2软件环境154系统设计
164.1系统结构设计
164.
1.1系统层次结构
164.2设计阶段类图
174.3数据库设计
184.
3.1数据库概念设计
184.
3.2数据库逻辑设计
194.4人机界面设计
214.
4.1用户界面设计
224.5系统详细设计
244.
5.1预定管理PAD图
254.
5.2增加消费PAD图
254.
5.3宾客结账PAD图265测试
275.1系统功能实现
275.
1.1用户登录
275.
1.2主界面
275.
1.3增加消费
295.
1.4宾客结账
295.
1.5预定管理
305.
1.6系统设置
315.
1.7财务报表33鸣谢34参考文献35设计总说明随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象,其中餐饮业的发展尤为突出近两年来已呈现出高速发展的态势但在快速发展的同时,餐饮业在日常经营管理中仍普遍采用手工管理方式,整体科技含量低随着餐饮企业规模和数量的不断增长,手工管理模式无论是在工作效率、人员成本还是提供决策信息方面都已难以适应现代化经营管理的要求,因此制约了整个餐饮业的规模化发展和整体服务水平的提升有效的管理成为了一个难题,为能有效的解决这些问题提高企业的经济效益,在这些中小型饭店中采用工作流技术,结合饭店绿色管理内容,实施计算机管理信息系统不视为一条有效的解决途径本系统主要针对中小型饭店餐饮管理中的一些问题,将其与计算机信息管理系统结合起来,实现中小型饭店管理信息计算机化、系统化,将中小型饭店管理中的工作流转化成比较科学化、规范化的业务流程,使管理基础数据更加准确化,管理人员摆脱了事务性工作,转而从事管理专业工作,为经营决策提供了快捷和强大的数据支持把计算机用于餐饮企业管理,可在很大程度上提高管理者分析和决策的科学性,提高经营管职水平,带来更多的顾客,使企业取得更好的经济效益总之,这套系统的开发只是把计算机技术应用于餐饮饭店管理中的小部分,系统中还存在许多不足,需要不断改进和完善但同时也坚信随着科学技术的不断发展,通过继续努力不断完善餐饮管理信息系统的功能,在不久的将来必将能更加深入的发展下去,必将能为我国餐饮业的信息化进程贡献其微薄之力关键字面向对象;开台;结账;点餐系统12调试此系统加introductionWiththerapid developmentof economic,FoodandBeveragetradepresents excellentdevelopment trendespeciallyinrecenttwoyears.Howeverthereare stillsomemanagementproblemsespeciallyin middle andsmall restaurant.Forexample,lowcontentofscienceandtechnology,backwardofmanagementmethod.theseproblemslimit tradedevelopmentandservicelevelimprovement.Soitisnecessarytostudyanewcomputermanagementsystemitcansolvemanyquestionsoftranditionalhandworkmanagementinmiddleandsmallrestaurantsuchas,itcanprovideadequatedecisiondataformanagerandcanimprovetheefficentwiththeworkflowtechnologyandthewayofhotelgreenmanagement.Forthesituationtalkaboutthispaperistrytostudyanewcomputerinformationmanagementsystemthatcansolvemanyquestionsoftranditionalhandworkmanagementinmiddleandsmallrestaurantsuchas,itcanprovideadequatedecisiondataformanagerandcanmanagemanydishesandtablesandsoon.Itwillbeconvenienceforthemanagerandscientific.Itcanalsoraiseworkingefficiencyandbemorebeneficialforthemiddleandsmallrestaurant. Thisthesiscomprehensivelystudiesdesignanddevelopofmiddleandsmallrestaurant managementsystem.Firstitanalyzestheproblemsintraditionalhandworkmanagementmethodsanddescribesconsumerrequirement.Thenitdividestotalsystemintothreeparts prosceniumincomesystem、systemmanagement、booksystemanddoesdetailedsystemdesignforthemaccordingtosofewareengineeringmethod.Thethesisalsodiscussessystemnetworkdesignmethodanddatabasedesignmethod.Onthebasisofthetheoreticalstudythethesisfinallypresentsconcurrenceprogram codesandconsumerinterfacedesign.Thisresearchisonlyaninitialandsmallinvestigationinpromptingrestaurant informationmanagement.Butitcandevelopcontinuely withthegrowthofscience.Keywords:Object-Oriented;opentable;settleaccounts;RestaurantorderingSystem立可西餐厅点餐系统的设计与实现毕业设计说明书3项目概述
3.1系统背景概述随着社会的进步和计算机技术的发展,特别是微型计算机的大范围普及,计算机的应用逐渐由科学计算、实时控制等方面向非数值处理的各个领域中渗透尤其是以微型计算机为处理核心,以数据库管理系统为开发环境的管理系统在商业管理等方面的应用,日益受到人们的关注自20世纪50年代将计算机引入数据处理以来,历经管理系统发展的各个阶段一方面是信息技术应用的迅猛发展,另一方面,许多管理系统在耗费了大量的人力、物力、财力之后夭折了,或者根本没有实现原定系统开发目标,而把计算机用作了打字机这是长期以来困扰人们的一大问题现在人们日益深刻的认识到,把信息技术与应用环境分离是办不到的餐饮系统的根本不仅是技术系统,而且是社会系统对于企业来说,利用计算机网络完成公司的日常管理事务,是适应现代企业制度要求、推动企业管理走向科学化、规范化的必要条件,如果实行手工操作,手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行办公日常工作时,不仅能够保证准确无误、快速输出,而且还可以利用计算机对有关各种信息进行统计,同时计算机具有手工管理所无法比拟的优点能够提高企业的管理效率和质量,制度管理能够按照部门进行分离查询这些优点能够极大地提高餐饮管理的效率也是企业的科学化、正规化管理与世界接轨的重要条件
3.2餐饮管理系统简介不同的企业具有不同的管理制度,这就决定了不同的企业需要不同的管理系统传统的管理系统是以数据为处理中心提供面向单机的辅助办公产品虽然完成了信息载体从原始纸介质向比特方式的飞跃但信息仍是高度孤立的饭店以前那种老的运作机制已经不能适应当今社会的需要,单纯靠手工去进行大量的信息处理,不但给饭店本身带来很大的不便,同时也给顾客带来很大的麻烦,造成企业虽然耗费了大量的人力、物力和时间,但仍然导致工作效率的降低利用C#语言、使用MicrosoftVisualStudio2005及MicrosoftSQLServer2005数据库技术相结合开发,减轻了操作员管理的工作量,使其变得更具有条理性,科学性餐饮点餐系统的产生使得饭店建立了信息化、规范化的管理体系,所以,对于饭店来说,建立一套合理有效的管理信息系统迫在眉睫
3.3系统开发的目的和意义随着我国城市的经济贸易和社会活动日益繁忙,餐饮业发生了前所未有的变化,外出就餐的人群越来越多,造成了现有的许多饭店人工管理的饭店无法满足人们快节奏的就餐需求,不适应时代的发展,使得许多人力、物力被浪费现在是信息时代,这种传统的管理方法必然被以计算机为基础的信息管理所取代一个有效的餐饮管理系统,可以通过计算机把各种看似杂乱无章的信息进行综合处理,方便快捷的为客人提供就餐消费登记及结账的操作,并且可以根据相应的信息,快速准确的生成各种报表,使管理者对饭店的经营情况一目了然,帮助企业的经营者调整经营的方针通过计算机来管理酒店的日常业务,不但可以提高员工工作效率,数据的可靠性也得到了保障,为用户查询和汇总提供的便利的条件
3.4系统开发的原则开发该系统必须遵循以下原则
(1)实用性原则确保系统具有良好的系统性能,友好的用户界面,较高的处理效率,便于使用和维护,并采用成熟的技术
(2)先进性原则尽量采用先进而且成熟的技术,使系统具有较高的技术水和较长的生命周期
(3)开放性、安全性、可靠性及可扩展性原则
(4)兼容性原则对于所选硬件系统及平台,能很好地适应开发和使用的需要
(5)规范性原则软件设计过程严格按照“软件工程”的规定,系统编码,文档,操作系统平台以及所采用的开发方法按照相应的国际标准和国家2可行性研究
2.1技术可行性分析技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,软硬件配置能否满足开发者需要等,这一特点非常适合计算机的特点,发挥计算机的数据处理速度快,准确率高的优势,现代计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件由于网上酒店管理系统这一类的企业管理系统的开发已有一定的时期,有很多成功的实例,技术基础成熟、可靠,ASP.NET具有多语言支持等强大更能、SQLServer数据库管理高效稳定、灵活方便、适合现阶段业务规模发展的需要,因而技术上可行
2.2经济可行性分析估算新系统的开发费用和今后的运行、维护费用,估计新系统可以使公司的管理水平大大提高,并将费用与效益进行比较系统的效益可以从公司利益和社会效益两方面考虑对于餐饮管理系统则应着重分析其公司效益例如,系统运行后可以为公司节省多少人力、物力、时间等等下面从以下几个方面对系统的经济可行性进行具体的分析
1.系统初期投资系统初期投资如表2-1所示表2-1餐厅点餐系统初期投资表序号项目人工(人·日)单价(元)合计(元)1需求分析201000200002总体设计301000300003详细设计201000200004数据库结构设计201000200005工程实际成本数据库实现101000100006编码实现501000500007单体测试201000200008系统集成测试201000200009说明手册编制1010001000010合计
2000002.货币的时间价值系统货币时间价值如表2-2所示表2-2餐厅点餐系统货币时间价值年份将来值(万)(1+i)n现在值(万)累计的现在值(万)
1101.
059.
5239.
5232101.
10259.
07018.
5933101.
15768.
63927.
2324101.
21558.
22735.
4595101.
27637.
83543.
2943.投资回收期引入餐厅点餐系统两年后,可以节省
18.59万元,比最初投资还少
1.4万元但第三年可以节省
8.639万元即
1.4/
8.64=
0.1622+
0.162=
2.162纯收入
43.294-20=
23.294万元当然,如果想要在五年后得到预计的纯收入,那么首先就应拿出初期投资的20万而且考虑到开发本系统将为以后带来的利益,拿出20万来进行餐饮管理系统的开发,是绝对必要!经过以上分析,系统的开发是可行的
2.3操作可行性分析主要是管理人员对开发点餐系统是否支持,现有系统是否科学,是否能满足公司办公需求,公司现有网络通讯基础是否完善本系统采用B/S模式,操作极为简单,系统管理员都可以方便的登录,进行管理和查看因此操作上可行
2.4社会可行性分析社会可行性研究是对系统投入使用后对社会可能带来的影响进行分析,比如是否为人们所接受,是否为社会带来利益餐饮管理直接影响着企业的利益在以往手工进行的工作中,需反复的进行各种抄写、计算等工作,不仅花费大量的时间,而且往往会出错计算机应用于管理领域,不仅可以使企业各类人员以最少的劳动和最短的时间来完成大量的工作而且,可以使他们从简单的数据统计、收集、汇总等重复繁重的事务中解脱出来因此说,该点餐系统在社会上是可行的3需求分析软件的需求分析是软件定义时期的最后一个阶段,其基本任务是回答“系统必须做什么”的问题需求分析也是一个建模的过程,与在概要设计中建模不同在需求分析中建模是面向用户的过程需求分析是软件定义时期的最后一个阶段,这个阶段的任务仍然不是具体地解决问题,而是准确地确定目标系统必须做什么,主要是确定目标系统必须具备哪些功能软件需求分析是一个不断认识和逐步细化的过程在该过程中能将软件计划阶段所确定的软件范围逐步细化到可详细定义的程度,并分析和提出各种不同的软件元素,然后为这些元素找到可行的解决方法
3.1系统需求分析点餐系统的开发不仅是一个应用程序编写的过程更重要的是在系统分析和设计阶段所做的工作系统程序的设计和实现是基于C#语言和SQLServer2000数据库编写管理信息系统的过程该程序通过ADO.NET数据对象来实现前台与后台SQLServer2000数据库的连接并具有典型的数据库应用系统的特征完成了系统结构与现实生活的紧密结合该程序在设计过程中严格遵循软件工程学的方法用分阶段的生命周期计划严格管理并主要讲述了程序的总体设计、详细设计阶段对程序进行需求迭代不断修正和改进利用SQLServer的强大数据库功能直到形成一个完善的可行性系统友好的界面方便实用的查询与强大的管理维护功能共同构成了点餐系统需求分析一般是按图3-1所示的过程进行����1#0;#0;#0;#0;#0;#0;#0;��������#0;����#0;������#0;������#0;������������#0;������������#0;������������������#0;������������������#0;��������#0;图3-1需求分析的一般过程需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成为对象并建模
3.2功能需求管理功能主要有散桌包房管理、酒水信息管理、菜肴类型管理、菜谱菜肴管理、新增开桌信息、开桌信息管理、财务查询报表、结账计算、会员管理将许多日常工作集成在一起,使餐厅管理效率更高
3.
2.1用例分析用例图呈现了一些参与者和一些用例,以及之间的关系,主要用于对系统、子系统或类的功能行为进行建模展示了用例之间以及同用例参与者之间是怎样相互联系的用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素,用例图图符如表
3.2所示可视化图符名称描述系统用来表示系统边界,所有用例放在系统之中用例用来表示用例图中的用例执行者用于描述与系统功能有关的外部实体,可以是用户,也可以是外部系统关联连接执行者和用例表
3.2uml用例图图符通过系统的功能需求分析,可得到系统的执行者为管理员、服务员和厨师,系统的用例为顾客开单、增加消费、快速开单、宾客结账、预订管理、系统设置、财务报表等,系统总体用例图如图
3.3所示���系统�顾客开单管理员服务员厨师增加消费快速开单宾客结账预订管理系统设置财务报表#0;#0;#0;#0;#0;#0;#0;#0;#0;图
3.3系统总体用例图顾客开单主要实现开桌的设置,内容包括对宾客人数和备注的添加、主单餐台和最低消费的查看,顾客开单用例图如图
3.4所示�系统��管理员顾客开单宾客人数开单备注#0;#0;图
3.4顾客开单用例图增加消费主要实现点菜功能,其内容包括对菜品的查询,菜品的增加和退菜增加消费用例图如图
3.5所示�系统��管理员增加消费增加菜品查询菜品退菜《include》#0;#0;#0;图
3.5增加消费用例图快速开单主要实现大厅餐桌上的快速点菜和浏览已点菜单,包括添加菜品、修改菜品,浏览菜品、删除菜品,开始结账,确定开单,快速开单用例图如图
3.6所示�系统��管理员快速开单添加菜品修改菜品浏览菜品删除菜品开始结账确定开单《include》《include》#0;#0;#0;#0;#0;#0;图
3.6快速开单用例图宾客结账主要实现普通用户和会员用户两种不同方式的菜单结算,包括会员编号或姓名、会员折扣、实收金额、宾客支付、找零宾客结账用例图如图
3.7所示�系统��管理员宾客结账结账会员折扣找零实收金额《include》#0;#0;#0;#0;图
3.7宾客结账用例图预订管理主要实现单台预订和批量预订,包括联络方式和姓名、预订查询、预订时段、预抵时间、取消时间等预订管理用例图如图
3.8所示�系统��管理员预订管理单台预订批量预订#0;#0;预订查询#0;《include》《include》图
3.8预订管理用例图系统设置主要实现对房间项目、商品项目、会员、管理员的添加、删除、修改等操作系统设置用例图如图
3.9所示�系统��管理员系统设置�房间项目设置商品项目设置会员设置管理员设置#0;#0;#0;#0;图
3.9系统设置用例图财务报表可以通过开始时间和截止时间查询收益并将其以Excel的形式导出财务报表用例图如图
3.10所示系统���管理员财务报表开始时间收益查询截止时间导出报表《include》《include》《extend》#0;#0;#0;图
3.10财务报表用例图
3.
2.2概念类描述类图是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及与类之间的关系等类图不显示暂时性信息类图由许多(静态)说明性的模型元素组成类图可以组织在(并且属于)包中,仅显示特定包中的相关内容类图是在面向对象的系统模型中使用得最普遍的图类图包含了一组类、接口和协作及其之间的关系使用类图来为系统的静态视图建模通常这包括模型化系统的词汇(从系统的词汇表中发现类),模型化协作,和模型化模式类图还是一些相关的图的基础,包括组件图、分布图没有类是单独存在的,类通常和别的类协作,创造比单独工作更大的语义因此,除了捕获系统的词汇以外,还要将注意力集中到这些类是如何在一起工作的使用类图来表达这种协作,类图图符如表
3.11所示表
3.11类图图符可视化图符名称描述类表示具体的一个类,第一栏为类名,第二栏为类的属性,第三栏为类的方法包一种分组机制,表示一个类图的集合关联表示类的对象间的关系,包括聚集关联和组成关联泛化关系描述类或包的一般元素与特殊元素之间的分类关系创建类图最好的起点是用例图,根据上面的用例图很容易确定类及其关联、属性和操作由上面的用例图得到管理员信息类、服务员信息类和厨师信息类的方法;管理员信息类的方法有新建,更新,删除,编辑,查看等方法,服务员信息类的方法有增加、查询、开单、退菜,厨师信息类的方法有增加和退菜概念类的类图如图
3.12所示����+增加+删除+查询+修改+显示管理员管理#0;#0;顾客开单#0;#0;增加消费#0;#0;快速开单#0;#0;宾客结账#0;#0;预订管理#0;#0;系统设置#0;-账号:char-密码:char-类型:int管理员+增加+查询�#0;服务员管理+增加�厨师#0;+主单餐台:char�顾客开单#0;+项目编号:int+项目名称:char+单价:char详细菜单#0;#0;退菜#0;#0;退菜#0;#0;财务报表#0;+项目编号:int+项目名称:char+单价:char详细菜单图
3.12概念类类图
3.
2.3行为描述系统的行为是通过对象的动作来描述的,通常可以通过顺序图来描述对象之间如何进行消息的传递顺序图是一种动态建模方法一般用于确认和丰富一个使用情境的逻辑一个使用情境就是系统潜在的使用方式的描述,也就是名称所要描述的通过观察什么消息被发送给一个对象,以及通过概略的观察运行被调用的方法需要花费多长时间,很快就能了解哪里的设计需要变化,以达到在系统内部平衡负荷的目的,uml顺序图图符如表
3.13所示表
3.13uml顺序图图符可视化图符名称描述带有生命线的对象用于表示顺序图中参与交互的对象激活表示在这个时间段内,对象处于活动状态消息用于表示对象之间传递的消息返回消息用于表示对象之间传递的消息要绘制系统的顺序图首先要了解系统的过程,根据系统类图中的方法可以获得详细的系统过程,系统管理操作顺序图如图
3.14所示��管理员登陆界面顾客开单增加消费快速开单宾客结账预订管理财务报表登录验证正确性验证成功登录MessageBox数据库操作系统数据库添加成功MessageBox添加失败增加菜品登陆失败对数据库操作增加成功MessageBox快速点菜对数据库操作点菜成功MessageBox宾客结账点菜失败对数据库操作结账成功结账失败MessageBox设置预订信息对数据库操作设置失败设置成功MessageBox导出财务报表对数据库操作MessageBox导出成功设置失败图
3.14系统管理操作顺序图
3.3性能需求系统的性能是系统的一种非功能特性,关注的不是系统是否能够完成特定的功能,而是在完成功能时展示出来的及时性为了能够客观地度量系统的性能,定义了一系列的性能指标,以便于在不同情况下度量系统的性能
3.
3.1响应时间响应时间是指系统对请求做出响应的时间在讨论系统的响应时间时,通常是指系统所有功能的平均响应时间或者所有功能的最大响应时间本系统要求平均响应时间为1秒,最大响应时间为3秒
3.
3.2吞吐量吞量是指系统在单位时间内处理请求的数量对于无并发的系统而言,吞吐量与响应时间成严格的反比关系,实现上此时吞吐量就是响应时间的倒数由于本系统的响应时间比较短,所以系统的吞吐量比较大由于本系统硬件防火墙为100M防火墙,所以吞吐量可达到90~95M
3.
3.3并发用户数并发用户数是指系统可以同时承载的正常使用系统功能的用户的数量与吞吐量相比,并发用户数是一个更直观但也更笼统的性能指标实际上,并发用户数是一个非常不准确的指标,因为用户不同的使用模式会导致不同用户在单位时间发出不同数量的请求本系统并发用户为200个
3.
3.4资源利用率资源利用率反映的是在一段时间内资源平均占用的情况对于数量为1的资源(如CPU),资源利用率可以表示为资源被占用的时间与整段时间的比值;对于数量不为1的资源(如内存),资源利用率可以表示为在该段时间内平均被占用的资源数与总资源数的比值根据本系统的硬件环境,在系统用户高峰期时,CPU占用率为48%,内存占用率为55%
3.4环境需求
3.
4.1硬件环境服务器端的最低配置是由建立站点所需的软件来决定的,在最低配置的情况下,服务器的性能往往不尽如人意,现在的硬件性能已经相当出色,而且价格也很便宜,因此通常应给服务器端配置高性能的硬件,本系统服务器端的配置如下处理器InterPentium
43.0GHz或更高内存1G硬盘空间80GB显卡集成因为客户端主要用于浏览和操作数据,所以对客户端的硬件要求不高,不过现在的电脑很高的性价比,因此需要的配置应该高于下面的配置处理器InterPentium
1.0GHz或更高内存256MB硬盘空间40GB显卡SVAG显示适配器
3.
4.2软件环境服务器端要求如下操作系统Windows2008Server网络协议TCP/IPweb服务器InternetInformationServer
6.0数据库MircrosoftSQLServer2005服务器Framework
3.5环境浏览器InternetExplorer
6.0以上用户端要求如下操作系统Windows98/2000/XP网络协议TCP/IP浏览器InternetExplorer
6.0以上4系统设计
4.1系统结构设计
4.
1.1系统层次结构HIPO图是IBM公司于70年代中期在层次结构图structurechart的基础上推出的一种描述系统结构和模块内部处理功能的工具HIPO图由层次结构图和IPO图两部分构成,前者描述了整个系统的设计结构以及各类模块之间的关系,后者描述了某个特定模块内部的处理过程和输入/输出关系本系统的最顶层的矩形框代表餐饮管理系统的主控模块,调用下层模块以完成全部管理功能;第二层的每个模块控制完成系统的一个主要功能,如此实现自顶向下逐步求精,系统的H图如图
4.1所示图
4.1系统的H图H图只说明了系统由哪些模块组成及其控制层次结构,并未说明模块间的信息传递及模块内部的处理因此对一些重要模块还必须根据H图绘制具体的IPO表用户和管理人员可利用IPO表编写、修改和维护程序IPO表中包含的附加信息主要有系统名称、图的作者,完成的日期,本图描述的模块的名字,模块在层次图中的编号,调用本模块的模块清单,本模块调用的模块的清单、注释以及本模块使用的局部数据元素等查询菜品的上层调用模块为增加消费,没有下层模块可调用,查询菜品任务的IPO表如表
4.2所示表
4.2查询菜品的IPO表系统名称点餐系统设计者林丹模块名查询菜品任务日期2015-04-25模块编号
2.1上层调用模块增加消费下层被调用的模块无输入数据要查询菜品的项目编号输出数据查询得到的结果处理根据查询的信息判断库中是否有相应的记录,如果有则显示查询的结果修改房间信息的上层调用模块为系统设置,没有下层模块可调用,修改房间信息的IPO表如表
4.3所示表
4.3修改房间信息的IPO表系统名称点餐系统设计者林丹模块名修改房间信息日期2015-04-25模块编号
6.1上层调用模块系统设置下层被调用的模块无输入数据填写要修改的信息输出数据对数据库的更新结果处理判断修改信息的合法性,修改成功后显示更新的结果
4.2设计阶段类图在系统分析阶段,已经找出了主要的概念类和类的方法、类间的关系到了系统设计阶段,需要从软件系统的角度来重新设计类图分析阶段的类到了设计阶段有的可能变成一组类,有的可能消失分析阶段的类图主要是用来描述现实世界中的问题;而设计阶段的类图主要是对解决方案进行描述因此设计阶段的类图描述了软件的系统结构创建设计类图的过程包括以下几步1.识别设计阶段出现的类,为这些类添加属性和方法2.建立类间关系,最终完成对属性和方法的细节描述系统设计阶段的类图如图
4.4所示����+增加+删除+查询+修改+显示管理员管理#0;-编号:int-餐台号:char-项目名称:char-单价:char-折扣:char-数量:char-金额:char�顾客开单#0;-项目编号:char-项目名称:char-单价:char-当前数量:char-食品类别:char增加消费#0;-编号:int-餐台号:char-项目名称:char-折扣:char快速开单#0;-账单号:char-餐台:char-应收:char-实收:char-结账时间:char宾客结账#0;-预订编号:int-姓名:char-手机:char-电话:char-预订时段:char-抵达时间:char-取消时间:char-预订类型:char-单台或批量:char预订管理#0;-房间类型:char�系统设置#0;-账号:char-密码:char-类型:int管理员+增加+查询�#0;服务员管理+增加�厨师#0;+主单餐台:char�顾客开单#0;+项目编号:int+项目名称:char+单价:char详细菜单#0;#0;退菜#0;#0;退菜#0;�财务报表#0;+项目编号:int+项目名称:char+单价:char详细菜单图
4.4系统设计阶段的类图
4.3数据库设计
4.
13.1数据库概念设计
1.VIP表存储会员的基本信息
2.餐房表存储餐房的信息
3.餐牌表存储餐品的信息
4.房间类型表存储房间类型的信息
5.开单表存储开单的基本信息
6.管理表存储管理员的基本信息
7.食品类别表存储食品的类型信息
8.预订表存储预订客户的基本信息
9.结账表存储结账信息
4.
13.2数据库逻辑设计VIP表是用来存放会员的相关信息,可以在系统中实现不同的功能操作,内容如表
4.5所示表
4.5VIP表列名类型长度允许空备注账号Nvarchar50Y主键姓名Nvarchar10N性别Char4N级别Nvarchar20N积分Nvarchar50N打折率Nvarchar50N联系电话Nvarchar20N餐房表用于存放饭店信息的状态,查看餐房的使用情况,如果更改餐台的状态操作,则更改对应的记录,内容如表
4.6所示表
4.6餐房表列名类型长度允许空备注餐台号Nvarchar20N主键房间类型Nvarchar20N餐台状态Nvarchar20N所在区域Nvarchar20N宾客人数Nvarchar50Y备注Nvarchar50Y进店时间datetime10N餐牌表,用于存储菜品的基本信息,如表
4.7所示表
4.7餐牌表列名类型长度允许空备注项目编号Nvarchar50N主键项目名称Nvarchar50N单价Nvarchar50N当前数量Nvarchar50Y食品类别Nvarchar50N房间类型表用于存储房间的基本信息,内容如表
4.8所示表
4.8房间类型表列名类型长度允许空备注房间类型Nvarchar30N主键最低消费Nvarchar30Y计费方式Nvarchar30Y容纳人数Nvarchar50N开单表,用于存储开单信息并且记录结账时应用到的基本信息,内容如表
4.9所示表
4.9开单表列名类型长度允许空备注编号Int10N主键餐台号Nvarchar50N项目名称Nvarchar50N单价Nvarchar50N折扣Nvarchar50N数量Nvarchar50N金额Nvarchar50N开单时间Nvarchar50N记账人Navrchar50Y是否已添Nvarchar50Y状态Nvarchar50Y管理员表,用于存储管理员信息,系统可以对其操作,内容如表
4.10所示表
4.10管理员表列名类型长度允许空备注账号Nvarchar20N主键密码Nvarchar20N照片ImageY类型Nvarchar50N食品类别表用以划分餐品的种类,内容如表
4.11所示表
4.11食品类别表列名类型长度允许空备注食品类别Nvarchar50N主键预定表用于存储宾客的预约信息,分为单台预订和批量预订,内容如表
4.12所示表
4.12预订表列名类型长度允许空备注预定编号Int10N主键姓名Nvarchar50N电话Nvarchar50N预订时段Nvarchar50N抵达时间Nvarchar50N取消时间Nvarchar50N预订押金Nvarchar50N预订类型Nvarchar50N地址或餐台Navrchar50N客户留言Text50Y单台或批量Nvarchar50Y结账表用于存储结账的相关信息,系统可以对其进行操作,内容如表
4.13所示表
4.13结账表字段类型长度允许空备注账单号Nvarchar50N主键餐台Nvarchar50N应收Navarchar50N实收Nvarchar50N结账时间Datatime10N
4.4人机界面设计根据用户在实际操作中的业务操作习惯,特提出如下原则,来指导人机界面交互设计
1.一致性原则即从任务、信息的表达、界面控制操作等方面与用户理解熟悉的模式尽量保持一致
2.兼容性在用户期望和界面设计的现实之间要兼容,要基于用户以前的经验
3.适应性用户应处于控制地位,因此界面应在多方面适应用户
4.指导性界面设计应通过任务提示和反馈信息来指导用户,做到“以用户为中心”
5.结构性界面设计应是结构化的,以减少复杂度
6.经济性界面设计要用最少的支持用户所必须步骤来实现一个操作
4.
14.1用户界面设计本系统的用户在使用系统时,首先要通过登录模块对身份进行验证,当确认合法后可进入系统的主界面,不同的角色跳转到不同的界面,管理员登录后的主界面要提供包括顾客开单、增加消费、快速开单、宾客结账、预订管理、系统设置、财务报表等模块的链接服务员登陆后则跳转到服务员页面包括服务员开单、增加消费、退菜等模块的链接厨师登陆后跳转到厨师页面包括增加消费、退菜等模块的链接每个模块都具有自己的页面和功能,根据人机界面设计指南和模块功能可以设计用户界面由于系统的用户界面众多,不可能将所有的用户界面都进行简介,为了能看到直观的用户界面,在此仅以登陆界面、管理员主界面、结账界面为进行简介系统的用户需要通过登录模块,输入用户名和密码进行身份验证,并选择相应的身份,验证合法后,跳转到不同模块中系统登陆界面如图
4.14所示图
4.14系统登录界面管理员主界面,可以实现开单、更改餐房状态、增加消费、修改,添加系统的基本信息等功能,管理员主界面如图
4.15所示图
4.15管理员主界面结账界面,主要是实现顾客的结账功能,分为普通客户和会员两种结账模式,同时根据会员的等级不同,折扣也不同,结账界面如图
4.16所示图
4.16结账界面
4.5系统详细设计程序员根据这个蓝图写出实际的代码因此,过程设计的结果基本上决定了最终的程序代码的质量过程设计的任务不是具体地编写程序,而是要设计出程序的“蓝图”,在软件的生命周期中,实际上对于长期使用的软件系统而言,人读程序的时间可能比写程序的时间还要长得多因此,衡量程序的质量不仅要看逻辑是否正确,性能是否满足要求,更主要的是要看是否容易阅读和理解过程设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂结构程序设计技术是实现上述目标的关键技术,因此是过程设计的逻辑基础PAD图是面向高级程序设计语言的,为常用的高级程序设计语言都提供了一整套相应的图形符号由于每种控制语句都有一个图形符号与之对应,显然将PAD图转换成与之对应的高级语言程序比较容易PAD是一种程序结构可见性好、结构唯
一、易于编制、易于检查和易于修改的详细设计表现方法用PAD可以消除软件开发过程中设计与制作的分离虽然目前仍需要由人来编制程序,一旦开发的PAD编程自动化系统实现的话,计算机就能从PAD自动编程,到那时程序逻辑就是软件开发过程中人工制作的最终产品显然在开发时间上大大节省,开发质量上将会大大提高本系统的功能模块有顾客开单、增加消费、快速开单、宾客结账、预订管理、系统设置、财务报表等每一个模块又包含有自己的子模块,并具有其相应的功能由于系统的功能模块众多,在此不能对每个模块都设计其PAD图,所以仅以预订管理、增加消费、宾客结账的PAD图来进行说明
4.
15.1预定管理PAD图管理员通过登陆模块成功登陆系统后进入该模块,管理员可以选择不同的条件来查询预订信息,将信息以表格的形式显示给管理员,在这里管理员还可以添加、修改、删除预订信息,预订管理的PAD图如图
4.17所示处理图
4.17预订管理PAD图
4.
15.2增加消费PAD图服务员进入增加消费模块后,选择相应的菜品进行添加,也可通过项目收索查询菜品,获取指定的菜品信息,增加消费的PAD图如图
4.18所示处理
4.18增加消费PAD图
4.
15.3宾客结账PAD图用户进行宾客结账操作时,输入会员编号或姓名,根据会员的级别进行相应的收费折扣,如为普通用户则直接进行,实收和找零计算,并且显示消费菜单,宾客结账的PAD图如图
4.19所示处理图
4.19宾客结账PAD图5测试
5.1系统功能实现
54.
1.1用户登录在用户登录中,主要实现的是对用户的合法性进行验证用户在此输入其用户名、密码,经过与后台数据库服务器的信息进行对比,验证成功后登录到属于该用户权限的页面,如图
5.1所示图
5.1管理员登录界面功能实现1.用户登录时,验证用户输入的信息是否正确,通过使用客户端脚本JS,来验证用户输入的信息是正确,如果信息不正确,则提示信息错误2.验证用户输入信息正确后,使用Membership来对数据库进行访问,来完成对用户名、密码和类型的验证,验证成功后,在客户端存储Cookie文件,用来存储用户的基本信息3.当用户验证成功后,判断用户的角色,跳转到角色所对应的页面
54.
1.2主界面以管理员身份成功登录后进入系统主界面,根据菜单相应的功能进行管理操作,主要功能有顾客开单、增加消费、快速开单、宾客结账、预订管理、系统设置、财务报表等功能,窗体左侧显示当前餐房和餐台的信息;使使用者浏览更为方便快捷,窗体右侧为餐房或餐台的使用状态,如图
5.2所示图
5.2主界面功能实现1.管理员和服务员登陆后可以进行开单设置,选择相应的餐桌或餐房点击“顾客开单”按钮或右键单击选择“开单”,弹出“客户开单”对话框,通过在textbox中输入顾客人数,在开单备注中输入客户的要求,点击“确定”按钮实现对餐桌或餐房的激活2.“顾客开单”对话框中显示的主餐台和最低消费则是通过数据库中的调用加以显示的,根据所开餐桌和餐房的不同会发生显示设置的不同
3.在此窗体中,饭店现在的所有餐桌和包房的状态都非常形象地显示在主界面中,餐桌或包房的的状态为“占用”表示该餐桌或包房现在正在被使用,“预订”表示该餐桌或餐房已被预订,不能被使用,“可供”表示该餐桌或餐房可以被使用,这些状态都使用图标的方式很形象地显示处理,右键单击某一个餐桌或餐房的图标,则会出现下拉列表,可以在列表中进行开单,和状态的更改实现此功能,则需要设置DataGrid的行宽度,设置每行的行高再将定好的行高设置回DataGrid中,在设置行宽度时使用一个反射relection来取得DataGrid中行的集合,通过get_DataGridRows方法返回Rows的集合并转化为一个System.Array对象
54.
1.3增加消费增加消费是本系统的主要模块之一,只有通过该模块,才可以进行菜品的选择、增加、查询、退菜如图
5.3所示图
5.3增加消费功能实现1.在点菜之前需要对餐房或餐桌进行“开单”设置,开单后用户方可对其增加消费,进入增加消费窗体后,用户在“详细菜单”和“菜单列表”选项卡中选择宾客所点选的菜品点击“增加”按钮进行添加,也可以在列表中直接选择相应的菜品双击或拖拽,都可以实现对菜品的添加2.对菜品进行查询时,在项目搜索框中输入项目编号实现查询为了实现输入信息的模糊查询,系统会将输入框中的信息提取出来,通过与数据库中相应的信息进行比对,使用like+%+key+%+方法,将满足条件的所有记录显示出来3.用户在右侧的dataGridView中选择想要退得菜品,点击“退菜”按钮,则将相应的菜退掉
54.
1.4宾客结账宾客结账是本系统的重要模块之一,是将顾客的各项消费项目详细列出并计算出顾客的总消费金额管理员只需要选择桌台,点击结账按钮,就可以获取到该桌台详细的消费项目以及总消费金额,若顾客是该店VIP,在会员编号/姓名一项输入则可以计算出会员折扣后的消费金额如图
5.4所示图
5.4宾客结账功能实现
1.点击主界面的宾客结账选项,跳转到宾客结账界面,下方的datatable会自动显示出本次消费的账单同时也会在窗体中显示本次的消费金额2.会员可以在textbox中输入自己的会员编号或姓名,系统会根据会员的不同等级进行相应的会员积分打折优惠其中会员的编号或姓名的搜索为模糊查询,这方面主要通过like%+关键字%来检索数据库3.结账还可分为优惠结账和非优惠结账优惠结账就是应收金额减去优惠金额就是宾客实际应交的钱,此外还可以免费或退单非优惠结账就是正常结账,宾客支付的金额减去实收金额等于找零
54.
1.5预定管理点击主界面的预订管理选项,跳转到预订管理界面,进入预订管理界面可以对其进行单台预订、批量预订、编辑、预订取消、查询等操作如图
5.5所示图
5.5预定管理功能实现1.当用户点击单台预订按钮,将会弹出“单台预订”对话框,在“单台预订”对话框中输入预订信息,包括姓名、联系手机、联系电话、预订电话、预订押金、预订时段、取消时间、预订规格、餐台编号、客户留言同时在对话框的右下角有一个复选框选项,选择内容为“到达取消时间是否取消预订”如果选择系统将会在设定的取消时间到达时自动取消餐台的预订点击“确定”按钮弹出对话框提示预订成功2.当用户点击批量预订按钮,弹出“批量预订”对话框,在批量预订中除了要输入单台预订中的信息外还会通过treeview和dataGridView控件进行所有餐台和餐桌的大批量选择点击“确定”按钮弹出对话框提示预订成功3.在下方的预订信息中选择一条预订信息点击“编辑”按钮,弹出“编辑”对话框,将会对已选的预订信息进行修改,点击“确定”按钮,提示修改成功4.当出现大量的预订信息时,为了能更快的查找预订信息,我们可以根据预订人的电话和姓名,及时的查找出所要的预订记录
54.
1.6系统设置点击主界面的系统设置选项,跳转到系统设置界面,进入系统设置界面可以对其进行房间设置、商品项目设置、会员设置、管理员设置等操作如图
5.6所示图
5.6预定管理功能实现1.进入系统设置界面,点击“房间设置”选项卡,可以对房间的类型,进行增加、删除、修改、保存操作用户可以通过输入房间类型、餐台状态等增加房间的种类和餐桌、餐台的数量2.点击“商品项目设置”选项卡,可以添加商品的类别和具体的菜品,也可以对其进行修改、删除等操作3.点击“会员设置”选项卡,进入会员界面,通过输入会员信息,对其进行添加、删除、修改等操作,其中会员信息包括账号、姓名、性别、级别、积分、打折率等会员信息4.点击“管理员”选项卡,进入管理员界面,右侧将会显示所有能登陆系统的用户名称,可以对其信息进行修改、添加、删除等操作,其中包括账号、密码、类型和照片
54.
1.7财务报表财务报表可以获取到指定时间段的饭店的所有消费记录如图
5.7所示图
5.7财务报表功能实现1.可根据日期段进行查询,比如录入2014-11-06到2015-5-06的日期段,则就显示在这个日期段内的所有的消费记录,财务报表是对结账表进行条件查询操作鸣谢在这次毕业设计中,首先要感谢指导教师王军民老师对我们的认真负责,在实践中为我们提供宝贵的指导意见我从老师身上学到了很多东西他认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅他无论在理论上还是在实践中,都给与我很大的帮助,使我得到很大的提高,这对于我以后的工作和学习都有一种巨大的帮助,在此感谢他耐心的辅导在做这个系统的过程中,我遇到了很多的问题,在调试时总是出现错误,但是在调试成功的那一刻心情是非常喜悦,经过这一次实践,我学到很多,也成熟许多即将踏上工作岗位,在以后的日子里,我会记得这么一个难忘的时期,是我的指导老师和同学们鼓舞和激励了我,使得我能够完成整个设计开发,在此,我再次对他们表示谢意45调试此系统加参考文献
[1]蒋培.ASP.NETWeb程序设计.
2007.清华大学出版社.
2008.
3.P22-24
[2]郑健.纵向切入ASP.NET
3.5控件和组件开发技术.电子工业出版社.
2009.P20-25
[3]伊夫杰.ASP.NET
3.5高级编程.清华大学出版社,2008P455-490
[4]里克特..NET框架程序设计.清华大学出版社,2003P231-254
[5]恭德罗依.SQLServer2005从入门精通.电子工业出版社,2006P146-212
[6]龚赤兵.ASP.NET
3.5MVC架构与实战.电子工业出版社,2009P93-109
[7]施穆勒.UML基础、案例与应用(第三版).人民邮电出版社.
2004.P55-91
[8]张海藩.软件工程导论(第四版).清华大学出版社.
2003.P271-301
[9]卢桂香.软件工程案例教程.北京大学出版社.
2007.P66-129
[10]程杰.大话设计模式.清华大学出版社,2007P23-80
[11](美)克拉克.超越CSS WEB设计艺术精髓.人民邮电出版社,2002P56-78
[12]修马克.UML实战教程-面向.NET开发人员.清华大学出版社.
2006.P320-348
[13]扎卡斯.JavaScript高级程序设计.人民邮电出版社,2006P67-96
[14]朱少民.全程软件测试.电子工业出版社.
2007.P56-121
[15]陈能技.软件测试技术大全.
2008.P23-98
[16]贺平.软件测试教程.电子工业出版社.
2006.4:P26-37点餐系统财务报表
7.0系统设置
6.0预订管理
5.0宾客结账
4.0快速开单
3.0增加消费
2.0顾客开单
1.0删除房间信息
6.2修改房间信息
6.1批量预订
5.2单台预订
5.1查询预订
5.3退菜
2.3增加菜品
2.2查询菜品
2.1继续操作或退出输入查询信息查询预订信息显示查询结果显示无记录导出继续操作或退出导出显示无记录显示查询结果输入查询信息查询菜品信息进入宾客结账模块折扣输入会员信息结账结账普通用户显示消费菜单继续其他操作。