基于JAVA的餐饮管理系统毕业设计说明书

上传人:1777****777 文档编号:36142485 上传时间:2021-10-29 格式:DOC 页数:54 大小:1.78MB
返回 下载 相关 举报
基于JAVA的餐饮管理系统毕业设计说明书_第1页
第1页 / 共54页
基于JAVA的餐饮管理系统毕业设计说明书_第2页
第2页 / 共54页
基于JAVA的餐饮管理系统毕业设计说明书_第3页
第3页 / 共54页
点击查看更多>>
资源描述
SHANDONG毕业设计说明书基于 JAVA 的餐饮管理系统 学 院: 计算机科学与技术学院 专 业: 通信工程 0901 班 完成时间: 2013 年 5 月 摘要_I摘摘 要要餐饮管理系统的设计目的是实现餐饮自动化管理,以前是人工处理的方式,它完全取代了这种方式,并且避免了因为管理人员的工作疏忽和管理质量问题所造成的种种错误,为及时、准确、快捷的完成餐饮管理工作提供了很好的工具和管理手段。针对传统的餐饮管理系统带来的诸多不便,本文介绍了新型的餐饮系统管理模式。在开发餐饮管理系统过程中,采用Myeclipse以及jdk1.6搭建管理系统平台,并且采用了sql sever2008数据库管理系统和java主流的开发技术进行了完成流程规范化,数据灵活性配置一套餐饮管理系统。通过系统的研发掌握软件开发的基本流程,了解了系统业务。从而掌握整体软件开发过程,把知识运用实际生产生活中。关键词关键词:餐饮管理系统,java swing,数据库管理系统,系统设计,sql sever2008.ABSTRACT_IABSTRACTABSTRACT Restaurant Management System is to achieve automated management of the ho- tel restaurant design, it completely replaced the original restaurant management has b- een using the manual processing of the work, and to prevent any management staff over- sight and management of quality problems caused by the error, for the timely, accurate and efficient completion of the hotel restaurant provides a powerful management tools and man- agement tools. The traditional Restaurant Management brought a lot of inconvenience, the article introduces a new type of hotel and catering management. Restaurant Management in the development of the system, using Myeclipse and jdk1.6 build management system platform, and uses sql server2008 database management system and java mainstream development of technologies to achieve process standardization to achieve, flexibility of configuration data a food management system. Control software system development through the basic development process, to understand the systems business. To grasp the overall software development process, the knowledge of the use of actual production. Keywords: management,system design, java swing,database management system, sqlserver2008目录_I目目 录录引引 言言.1 1第一章第一章 绪论绪论.2 1.1 系统开发的背景.2 1.2 国内外相关的研究状态.3 1.3 本课题研究目的及意义.4 1.4 开发工具和相关技术.4 1.4.1 JAVA 开发技术 .41.4.2 窗体应用程序 swing 技术. 6 第二章第二章 系统分析系统分析.7 2.1 可行性分析.7 2.1.1 技术可行性分析.7 2.1.2 经济可行性分析.7 2.1.3 安全可行性.7 2.1.4 操作可行性.8 2.2 需求分析 .82.2.1 系统的主要功能 . 9 2.2.2 系统的实现目标.9 2.2.3 系统的性能需求 .10第三章第三章 总体设计总体设计.11 3.1 功能模块设计.11 3.2 数据字典.12 3.3 E-R 图. 13 3.4 总体 E-R 图.16 目录_II3.5 系统数据表 .173.6 系统流程图 .193.7.详细设计书.20 第四章第四章 系统实现系统实现.21 4.1 用户登录 .214.2 系统主界面.22 4.3 修改密码 .234.4 人员管理 .244.5 顾客管理 .26 4.6 菜单管理.26-4.7 盈利管理.28-第五章第五章 系统测试系统测试.29 5.1 测试的作用和意义 .295.2 测试方法 .295.2.1 个人单元测试 .295.2.2 系统功能测试.29 5.3 系统测试 .30第六章第六章 结束语结束语.35 致致 谢谢.36 参考文献参考文献.37 附附 录录.38引言_1引引 言言近年来,伴随着改革开放进程的加快和中西方文化的交流融合与发展,我国人民生活水平取得显著提高,全社会对餐饮行业的需求量愈加增多,伴伴随着消费的持续攀升,餐饮行业现在已经成为社会中发展最快速的行业之一。如果想在激烈的市场竞争中求得生存,就必须在管理、服务等方面提高管理意识。而对餐馆的运营状况起决定作用的还是对餐馆日常营业的管理经营。如何利用先进的管理技术,提高餐饮行业的管理水平,对于每一家的经营者来说都是面临的一个重要课题。 所以乘势而出的管理系统就有着很好的可行应用性。一直以来人们都是采用传统的人工方式管理账单账目,这种传统管理方式存在着诸多缺点,如:效率低下、保密性不好,另如果时间一长,就会产生海量的文件和数据,这些对于查找、管理和维护都带来了很多的不便,与此同时,也加大了管理人员的工作量和工作难度。此系统很好的克服了此类缺点,并且有检索速度快、查找快捷、存储量大、保密性强、寿命长、成本低廉等优点。这些优点对于提高餐馆管理的效率,餐馆的科学化、正规化管理,与世界接轨都有很重要的作用。 系统以Microsoft SQL Server 2008作为后台数据库,Myeclipse为前台开发工具,运用模块化结构设计思想,和面向对象的设计方法,构成了餐馆管理系统的主要模块。现在伴随着经济的不断发展,出国旅游给餐饮系统带来巨大商机。这样就存在着菜品管理和点菜系统等一系列数据的导入导出,大多数餐饮企业只是用简单的Office Excel记录,这样查询起来就不方便了。如果存在一款专门为餐饮管理者和餐馆员工查询餐厅的信息,将会大大减少销售商的工作量并提高酒店营业值。同时加强了管理者对菜品和员工的管理工作,实现了餐饮管理工作的无纸化办公。第一章 绪论- 2 -第一章第一章 绪论绪论1.1 系统开发背景伴伴随着我国市场经济的快速发展,各行业都呈现出生一派机勃勃的景象,其中餐饮行业的发展尤为突出。这两年来已经呈现出高速发展的状态。但是在快速发展的同时,餐饮行业在日常经营管理中还是普遍采用传统手工管理方式,整体的科技含量低。伴随着餐饮企业规模和数量的不断增长,传统手工管理模式无论是在工作的效率、人员的成本还是提供决策信息的方面都已经难以适应现代的经营管理的要求,因此遏制了整个餐饮行业规模化发展和整体服务水平的提高。有效的管理模式成为了一个难题,为了能有效的解决这些问题,增加企业的经济效益,在中小型饭店中采用工作流技术,结合餐馆绿色管理内容,实施电脑管理信息系统已经成为一种新的途径。餐饮行业的蓬勃发展推动了餐饮投资多元化,大量的资本进一步推动了餐饮行业的快速、健康发展,伴随着社会各领域信息化水平的不断普及,餐饮行业也开始不断融入信息化元素,将餐饮行业业务融入电脑管理,节省人力资源,提高管理效率和工作效率,将餐饮行业发展到一个新的阶段。该餐饮系统从发展现状谈起,结合用户实际需求提出本系统的总体结构和功能模块,然后通过系统结构设计、安全设计及前端开发,构建了一个以java swing技术和SQL后台数据库为基础的、具备相关功能的餐饮系统。根据餐饮系统的流程,完成从用户登录到开台点菜,到结账收银,到统计一条线的信息化管理,因此整个餐饮管理信息系统的研发内容就是开发一整套餐饮管理信息系统,实现餐饮行业务的计算机化。该系统将餐饮行业中点菜、退钱、预定、结账等一连串的业务用计算机来管理,分析与设计了餐饮系统的结构及功能模块,解决餐饮系统的关键技术,给出了餐饮行业务的解决方案,实现了现代化的餐饮管理机制。当今世界已进入了在计算机信息管理领域中激烈竞争的时代,应用计算机已经变得十分普遍了,如同我们离不开的自行车、汽车一样。我们应该承认,谁掌握的知识多,信息量大,信息处理速度快,批量大,谁的效率就高,谁就能够在各种竞争中立于不败之地。伴随着科第一章 绪论- 3 -学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。越来越多的管理人员意识到信息管理的重要性。作为计算机应用的一部分,使用计算机对餐饮企业信息进行管理,具有手工管理所无法比拟的优点.例如:检索快速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。1.2 国内外相关研究状态 伴随着信息化技术的日益普及,餐饮这样的传统行业也越来越多的采用信息技术来管理业务,市场上餐饮管理软件正处于百花齐放、百家争鸣的阶段。目前市场上大多数餐饮软件是基于 WINDOWS 操作系统的,也有部分餐饮软件考虑到版权的问题,采用 LINUX 操作系统;又比如,系统数据库,有ACCESS、SYBASE、MYSQL、SQLSERVER 等,对于餐饮系统来说,采用什么数据库与餐厅的规模比较相关,较小的餐厅可以采用比较简单的数据库如 ACCESS,这样使用维护都可以做的比较简单,而规模大的餐厅就应该用 SQLSERVER 这样的数据库,可以保障数据比较安全、系统比较稳定,但同时也要求有专门的系统管理员来维护。还有,数据的录入通常有三种方式,一是基于普通计算机,二是基于触摸屏,三是采用无线点菜系统,而无线技术又有基于红外技术和基于无线网络的技术。从目前的发展趋势看,餐饮系统越来越多的采用触摸屏,而无线技术正在逐步成熟起来。 在国内,餐饮软件的发展也正处于蓬勃发展的时期,如北京天良软件,它是一家以软件开发、销售为主营方向的技术开发型企业。天良软件立足于餐饮及酒店客房管理市场,致力于为客户提供一流的产品及服务,企业下设市场拓展部、产品研发部、公关策划部、客户服务部等主要职能部门。在国外发展比较成熟的软件有龙腾触摸屏点菜系统, “龙腾餐饮管理系统”软件采用了独特的组网技术,以 Window 为操作平台,全 32 位应用软件系统,功能在国内处于领先地位。网络系统是以 Windows 搭成的对等网络,简单实用、稳定可靠,保证企业非常快速地把信息传递到各个点。这个系统适用于快餐企业、西餐、火锅有勾划式菜单的餐饮企业,中高档中餐可以配合其他点菜设备一起使用这个系统。第一章 绪论- 4 -1.3 本课题研究的目的及意义餐饮管理系统也是典型的管理信息系统(MIS) ,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发以及后厨等自动化管理这几个方面。该系统中,应用SQL Server 2008数据库管理系统、SQL语言原理、java swing应用程序设计,采用成熟的B/S结构,根据分析和讨论,实现餐饮订餐管理,提供与用户交互的界面,完成餐饮管理系统的设计和开发。根据该系统的具体情况,应能完成以下功能: (1)前台管理:点菜管理、客人买单、结账数据分析;(2)基础信息管理:酒水信息设置、菜谱信息设置、顾客基础信息登记、员工基础信息登记;(3)服务管理:点菜、上单下单等;(4)营业管理:月收入明细,年收入明细分析;另外,餐饮管理系统要确保信息安全,以系统安全为主要目标,保护系统资源免受恶意的毁坏、替换、盗窃和丢失。其系统资源包括:硬件设备、存储介质、软件、数据等。具体来说,应达到以下安全要求:(1)保密性,机密或敏感数据在存储、处理、传输等过程中要完全保密,确保仅授权用户在授权后才能进行查询、删除及修改等操作;(2)完整性,保证系统中的信息处于一种完整和未损害的状态,防止因非授权访问,部件故障或其他人为错误而引起的信息篡改、破坏或丢失。(3)可靠性,必须保障系统在复杂的网络环境下能够提供持续、稳定、可靠的服务。1.4 开发工具及相关技术1.4.1 JAVA 程序开发技术Java 是 Sun 公司推出的一种编程语言。它是一种通过解释方式来执行的语言,语法规则和 C+类似。同时,Java 也是一种跨平台的程序设计语言。用 Java 语言编写的程序叫做“Applet”(小应用程序),用编译器将它编译成类文件后,将它存在 WWW 页面中,并在 HTML 档上作好相应标记,用户端只要装上 Java 的客户软件就可以在网上直接运行“Applet”。 Java 非常适合于企业网络和 Internet 环境,现在已成为 Internet 中最受欢迎、最有影响的编程语言之一。 第一章 绪论- 5 -Java 有许多值得称道的优点,如简单、面向对象、分布式、解释性、可靠、安全、结构中立性、可移植性、高性能、多线程、动态性等。Java 摈弃了 C+中各种弊大于利的功能和许多很少用到的功能。 Jave 可以运行与任何微处理器,用 Java 开发的程序可以在网络上传输,并运行于任何客户机上。 java 主要有以下特性1、Java 语言是简单的。Java 语言的语法与 C 语言和 C+语言很接近,使得大多数程序员很容易学习和使用 Java。另一方面,Java 丢弃了 C+ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 2、Java 语言是一个面向对象的。Java 语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为 implements) 。Java 语言全面支持动态绑定,而 C+ 语言只对虚函数使用动态绑定。总之,Java 语言是一个纯的面向对象程序设计语言。 3、Java 语言是分布式的。Java 语言支持 Internet 应用的开发,在基本的 Java 应用编程接口中有一个网络应用编程接口(java net) ,它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket 等。Java 的 RMI(远程方法激活)机制也是开发分布式应用的重要手段。 4、Java 语言是健壮的。Java 的强类型机制、异常处理、废料的自动收集等是 Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。 5、Java 语言是安全的。Java 通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。除了 Java 语言具有的许多安全特性以外,Java 对通过网络下载的类具有一个安全防范机制(类 ClassLoader) ,如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类 SecurityManager)让 Java 应用设置安全哨兵。 6、Java 语言是体系结构中立的。Java 程序(后缀为 java 的文件)在 Java 平台上被编译为体系结构中立的字节码格式(后缀为 class 的文件), 然后可以在实现这个 Java 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 7、Java 语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可移植性,Java 编译器是用第一章 绪论- 6 -Java 实现的,Java 的运行环境是用 ANSI C 实现的。 8、Java 语言是解释型的。如前所述,Java 程序在 Java 平台上被编译为字节码格式, 然后可以在实现这个 Java 平台的任何系统中运行。在运行时,Java 平台中的 Java 解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。 9、Java 是高性能的。与那些解释型的高级脚本语言相比,Java 的确是高性能的。事实上,Java 的运行速度伴随着 JIT(Just-In-Time)编译器技术的发展越来越接近于 C+。 1.4.2 窗体应用程序开发环境java swing 技术1、Swing 是 Java 为桌面开发而设计一个重要 GUI 工具包,整个设计是基于 AWT 技术上的扩展.加上 Java 在网络的优势和跨平台的特点,Swing 已经无处不在,在 Java2D 的性能加强,可插入式的 Look And Feel,主题(Theme)和 JDK5.0Tiger的出现后,基于 Swing 的技术框架如雨后春笋诞生,像 Infonode 实现界面设计.但是强大的 java 也不比 vb 逊色.同样可以设计出精美的界面. 2、Swing 概述:当 java1.0 刚刚出现时还没有 swing,当时的 GUI 基本编程库,sun 取名叫 AWT(Abstract Window Tookit),基本 AWT 库处理用户界面 的方法是将这些元素的创建行为交给,底层操作系统的 GUI 工具箱进行处理,来实现 WORA 的目的.而因为种种原因,不同的 OS 之间存在差异,使得 AWT 界面库存在许多 bug.1996 年 sun同 netscape 通力合作创建了新的库取名 Swing.如果,没有 Swing,java 的图形就面就不名一文 swing 是 java 的基础类,是 JFC 的一部分,完整的 JFC 是很巨大的.包括的组件也很多. 3、为什么要选择 Swing: Swing 具有更丰富而且更加方便的用户界面元素集合,Swing对于底层平台的依赖更少,因此,特殊平台上的 bug 会很少,Swing 会带来交叉平台上的统一的视觉体验 4、许多初学 java 的朋友们在学完 java 的基础部分后就会感到很茫然,还是对 java能干什么不是很了解,所以在初步掌握基本的概念后就可以,JGoooodes 都是很优秀的框架.用过 Vb 的朋友可能会被它的简单的设计用户界面方法所吸引,只需要拖几个控件到窗体上,为每个空件编写 event 就可以简单的第二章 系统分析- 7 -第二章第二章 系统分析系统分析2.1 可行性分析可行性分析是需求分析的基础上进行的,对系统的开发从技术、经济、营运等方面进行分析,并得出系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。可行性分析阶段的主要工作包括以下几个方面:2.1.1 技术可行性分析技术可行性分析是根据新系统的目标来衡量是否具各所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。从各个网站及许多局域网的建设中可以看到,目前基于 Web 的系统开发技术已经十分成熟,相信伴随着 Internet/Intranet 技术的进一步发展,基于 Web 的信息系统开发将有更为明朗的前景。2.1.2 经济可行性分析经济可行性分析主要是对开发新系统所投入的资金与系统投入使用后所带来的经济效益进行比较,确认新系统是否会给企业带来一定的经济效益。开发此餐饮管理系统,不仅能提高企业的管理水平给管理者提供一个企业运作的信息平台还能提升企业的形象及增强竞争力。使用餐饮管理系统能将餐饮企业业务管理和人员管理信息化,使企业从原材料进货到客人消费都由计算机管理并记录,可伴随时掌握酒店里房间的使用状况,客人点单,挂账等情况,并能尽可能的降低使用者的劳动强度,同时提高工作质量和效率。用最少的成本获得最好的经济效益,增强了餐饮企业的市场竞争力2.1.3 安全可行性在系统运行后,就用户方而言,由于用户使用本系统时不会也不必关心系统内部的结构及实现方法,即对用户来说是透明的,所以本系统对用户而言是定位在界面友好、操作方便、功能齐全的原则上的,用户只需简单的用鼠标点击各页面上的链接或按钮就能执行相应的功能。就管理者而言,关心的是如何处理用户信息,只要把用户的信息放入服务器端的数据库第二章 系统分析- 8 -或专门的数据库服务器,管理者就可运行相应的后台程序进行处理。2.1.4 操作可行性目前资源的利用情况和可操作性,只需根据相关需要对数据库中的相应表数据直接操作就可以实现系统的完整、稳定的运行,不会造成系统的巨大压力,可以保证系统的正常运行。综上所述,通过技术可行性,经济可行性,安全可行性,操作可行性分析,本系统的开发是可行的。2.22.2 需求分析需求分析项目需求分析就是描述系统需求,通过定义系统中的关键域类来建立模型。分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通的机制,因此,餐饮管理系统的需求分析也是开发人员和用户一起完成的。需求分析的第一步是描述餐饮管理系统的功能,即定义用例,以此确定系统的功能需求。餐饮管理系统以顾客是上帝为核心,这就意味着餐厅将把客人作为其运作的核心,提升客人满意程度,获得更大的利润。近年来,伴随着行业竞争的加剧和市场需求的快速膨胀,增长率的下降,利润的降低,消费行为的理性化是必然的发展趋势。各大酒店更多的将目光专注于如何提高服务质量,提高经营管理,而提高经营管理最重要的保证就是信息技术。餐饮管理系统也是一个餐厅不可缺少的部分,它的内部对于客户和员工来说都至关重要的,所以一个系统应该能够为用户提供充足的快捷的信息和方便的查询方式,而且不应有时间和地域的限制。近年来由于计算机科学技术的不断提高,计算机科学日渐成熟,人们深刻认识到它的强大功能,在人类社会的各个领域发挥着越来越重要的作用。作为计算机应用的部分,使用计算机对餐饮的管理具有着手工管理所无法比拟的优点:(1)客户和工作人员可以随时了解有关餐厅餐饮的相关信息。(2)减轻了工作人员的工作压力和负担。(3)查询、修改更加方便、快捷效率提高。第二章 系统分析- 9 -2.2.1 系统的主要功能根据餐饮行业的特点和相关餐厅的实际情况,该系统以餐饮行业业务为基础,突出前台餐饮管理,从专业角度出发,提供了科学有效的管理模式。在点菜方面采取了图形界面加数据的方式,使用户能直观地管理数据信息,得到相应餐桌所点菜品的信息。点菜收银管理可实现点菜、结账、清台等功能。菜品管理可记录菜品添加、图片情况。营业管理分析可对餐厅的月营业额进行统计。点菜收银、营业分析、菜品管理的有机结合,可为餐厅经营方向提供依据,为餐馆的发展提供重要保证。根据该企业的具体情况,系统主要功能设计有七大部分,分别为点菜管理、菜品管理、顾客管理、营业管理、员工管理、密码修改、帮助。1、点菜管理:实现为每桌顾客点菜的功能,点菜结束,计算费用。图形化界面更加人性化。2、菜品管理:实现菜品的添加,修改,删减功能。3、顾客管理:实现顾客的添加,修改信息功能。4、营业管理:实现查看月收入明细,年收入明细的功能。5、员工管理:实现员工的添加,删除,修改员工信息,显示所有员工信息的功能。6、密码修改:实现用户修改登录密码的功能。7、帮助:显示本软件信息以及使用说明。2.2.2 系统的实现目标面对服务行业的高速发展和餐饮企业信息化发展的过程中出现的各种情况,该餐饮管理系统在实施后应能够达到以下目标:1、采用汉字图形用户界面,系统界面友好美观,操作简单易行。2、业务管理信息化,可以随时掌握进货、客人点单、挂账等情况。3、采用流行的 BS 方式,响应速度快,安全性高,扩充方便。4、该软件应尽可能地降低使用者的劳动强度,同时提高工作质量和效率。第二章 系统分析- 10 -5、系统维护方便可靠,具有灵活性、通用性及安全性的特点。2.2.3 系统的性能需求1 系统的安全性系统运行安全是决定软件质量的重要因素,虽然此餐饮系统不需要接入Internet,但系统中涉及多方信息,有顾客信息,员工信息,菜品信息等等,如果有人蓄意破坏任意信息,都可能会导致系统的停用,会带来损失,因此仍然需要保证它的安全。为了保证系统的安全性,必须采取一定的安全措施,防止用户越权使用,防止工作数据被非法篡改、破坏和泄露等。既要考虑操作系统的安全性,还要考虑到餐饮系统本身的安全性。2 系统的合理性在设计系统时要考虑实际的系统性能和硬件要求,不能忽视所处环境,也不能一味地追求新技术,要保证系统的合理性。3 系统的简单性、易用性要考虑到不同层次服务人员及领导人员的计算机操作水平,一般而言,大部分服务员的计算机操作水平偏低,因此开发时要本着“简单易用”的原则,方便各层次人员的使用,使人员的培训降到最低。对于收银的服务员只需要简单且快捷地收银方式,既利于他们使用,也提高收银速度,同样对于领导人员,也需求简单、一目了然的界面,这样即使是没有操作过计算机的人来说,只需要进行简单的操作培训就可以达到熟练,使之能顺利地完成系统各种功能。4 系统的稳定性、可靠性餐饮行业从业人员来源广泛,分布性强,往往不具备专业的计算机知识,因此,餐饮系统必须稳定、可靠。另外,餐饮行业营业时间与一般公司(或企业)区别很大:一般公司(或企业)正常上班时间,餐饮企业生意不多;而一般公司(或企业)休息时间却正是餐饮行业营业高峰。餐饮系统必须兼顾到餐饮行业这种间隙性的营业状况,必须具有高度的稳定性,保证在营业高峰时不出故障,即使出现故障,系统也必须具有快速恢复能力。第三章 总体分析- 11 -第三章第三章 总体设计总体设计3.13.1 功能模块设计功能模块设计采用本系统可以在很大程度上减少前台的服务人员的人数,因为采用计算机操作,可以大大提高餐厅运转速度速度。为了能够适应信息化发展的需要,提高餐饮部门的工作效率,引入了该信息系统。根据分析,餐饮管理系统可分为以下六个模块:点菜系统、菜肴管理、顾客管理、营业管理、员工管理、密码修改。系统模块图如图3.1所示图3.1 系统模块图打开系统登录验证密码NY点菜系统菜肴管理顾客管理营业管理员工管理密码修改菜品选择结算菜肴添加菜肴删减菜肴修改菜肴展示顾客添加顾客修改显示顾客月收益年度收益员工删减员工修改员工显示密码验证NY修改员工添加第三章 总体分析- 12 -3.23.2 数据字典数据字典数据字典是系统中各类数据描述的集合,是进行详细的数据的收集和数据分析秘获得的主要成果。数据字典在数据库设计中占有很重要的地位。数据字典部分如下:管理员信息表表3.1所示,餐桌信息表如表3.2所示,菜单信息表如表3.3所示,营业信息表如表3.4所示,顾客信息表如表3.5所示。表3.1管理员信息表数据流系统名:食全食美餐饮管理系统条目名:Yuangong来源:系统管理员去处:服务员信息删除查询数据结构:管理员信息: 编号,姓名,性别,种类,年龄,工资,电话,住址,日期简要说明:管理员信息表主要是录入员工的信息,以及对员工的添加,删除,分工表3.2餐桌信息表数据流系统名:食全食美餐饮管理系统条目名:zhuocai来源:区域餐桌信息去处:餐桌信息预定查询数据结构:餐桌信息: 编号,状态,菜品简要说明:餐桌信息表主要是查看餐桌的当前状态表3.3菜单信息表数据流系统名:食全食美餐饮管理系统条目名:Caipin来源:菜单信息去处:菜单信息添加,删除查询数据结构:菜单信息表主要是查看菜单的信息菜单信息: 编号,类别,名称,价格,图像第三章 总体分析- 13 -简要说明:菜单信息,主要是管理员对菜单信息的添加与删除表3.4营业额信息表数据流系统名:食全食美餐饮管理系统条目名:yingli来源:营业额去处:营业额信息查询数据结构:营业额信息: 编号,消费,时间简要说明:营业额信息,管理员能查看总的营业额表3.5顾客信息表数据流系统名:食全食美餐饮管理系统条目名:Guke来源:酒店去处:酒店信息查询数据结构:酒店信息: 编号,姓名,总消费金额,等级简要说明:管理员可查看,修改酒店的基本信息3.33.3 E-RE-R 图图概念设计是一种面向对象的数据模型,是按采用用户的观点来对数据和信息进行建模。它描绘的是用户端看到的信息,实体联系方法(ER方法)是概念设计中最著名的方法就是,建立ER模型,用ER图表示概念结构,得到数据库的概念模型 。ER模型中包含“实体”,“联系”和“属性”。在本系统中,多对多的关系用(m-n)表示。本系统的主要的实体有餐桌,实体ER图如图3.2所示,员工,实体ER图如图3.3所示,管理员,实体ER图如图3.4所示,菜品,实体ER图如图3.5所示,顾客,实体ER图如图3.6所示,盈利,实体ER图如图3.7所示等。第三章 总体分析- 14 -图 3.2 餐桌 ER 图图 3.3 员工 ER 图第三章 总体分析- 15 -图 3.4 管理员 ER 图图 3.5 菜品 ER 图第三章 总体分析- 16 -图 3.6 顾客 ER 图图 3.7 盈利 ER 图3.43.4 总体总体 E-RE-R 图图逻辑设计的目的是把概念设计好的概念模型转换成与选用的具体计算机上的DBMS所支持的数据模型相符合的逻辑结构。这些模型在功能上、完整性和一致性约束及数据库的可扩展性等方面均应满足用户的各种要求。因而,根据上节的实体ER图,总体ER图如图3.8所示第三章 总体分析- 17 -图3.8 总体ER图3.53.5 系统数据表系统数据表下面将主要介绍关键数据表的数据库设计的详细说明。表3.6 登录表admin字段名称数据类型字段大小说明索引是否为空adminnameVarchar50登录名NOadminpwdVarchar50登录密码NO 表3.6是用来记录登录用户信息表3.7 菜品表Caipin字段名称数据类型字段大小说明索引是否为空IdIntIDNoLeiVarchar10分类NonameVarchar50菜名No账单客人餐桌提交餐饮结账入座上菜用餐点菜菜谱11nmnnm111第三章 总体分析- 18 -PriceInt菜品价格NoimgVarchar200菜品图片地址Yes表3.7是用来记录菜品信息,主要有菜品价格,分类等。表 3.8 收入查询表yingli字段名称数据类型字段大小说明索引是否为空zhuoidInt桌号NOmonInt消费金额NOmouthVarchar50月份YesdateDate日期No表3.8是用来记录盈利信息,主要有桌号,消费金额,日期等。表 3.9员工表Yuangong字段名称数据类型字段大小说明索引是否为空idInt4编号Primary KeyNOnameVarchar10员工姓名NOSexchar2员工性别NOTypeVarchar50员工职务YesAgeInt员工年龄NOSelaryInt员工收入NOTelchar11联系方式NOAddressVarchar200员工地址NODateVarchar50上岗日期Yes表3.9是用来记录员工信息,主要实现员工添加修改功能。 表3.10 餐桌状态表zhuocai字段名称数据类型字段大小说明索引是否为空zhuoidInt编号Primary KeyNOZhuostatevarchar50餐桌状态NOCaivarchar200餐桌菜品Yes表3.10是用来记录餐桌的信息,及当前的使用状态。第三章 总体分析- 19 - 表3.11 顾客表Guke字段名称数据类型字段大小说明索引是否为空idInt编号Primary KeyNOnameVarchar20顾客姓名NOMonInt消费金额YesDengjiInt顾客等级Yes是3.11用来记录顾客类型信息,主要有顾客的姓名,消费金额,等级等。表3.12 点菜信息表zhuocai字段名称数据类型字段大小说明索引是否为空zhuoidInt编桌号NOzhuostateVarchar20餐桌状态NOCaiVarchar500点菜信息Yes表3.12用来记录每个餐桌的点菜信息,用于最后的结算。3.6 系统流程图系统流程图图 3.9 系统流程图打开系统登录验证密码NY点菜系统菜肴管理顾客管理营业管理员工管理密码修改菜品选择结算菜肴添加菜肴删减菜肴修改菜肴展示顾客添加顾客修改显示顾客月收益年度收益员工添加员工删减员工修改员工显示密码验证NY修改第三章 总体分析- 20 -系统流程图如图 3.9 所示。3.7.3.7.详细设计书详细设计书1 用户登录员工通过输入用户名和密码登录入系统,如果密码或者用户名不正确,则不任许员工登录到系统。只有有此系统账号,员工才可以登录到本系统,以便员工操作系统。2 修改密码员工登录后可以自行修改密码,必须先输入原始密码,再重新输入两次新密码,如果输入不最正确,则系统不任许用户修改密码3 点菜系统此系统主功能,选择桌号,选择菜品后提交,消费完完成结算任务。4 员工管理可以查询所有员工基本信息,包括员工编号,员工姓名,员工性别,员工的职责类别员工地址,员工工资,员工联系方式。对于员工信息也可以删除。如果新添加员工时,则添加员工姓名,员工编号,性别。5 菜单管理系统给出酒店所有菜单信息列表,列出菜单的名称,菜单的价格,菜品的规格,如果删除菜品的信息,则通过“菜肴删除”按钮删除想要删除的数据,如果添加菜品信息,则点“添加菜品”,进入添加菜品信息页面,选择菜品所归属的类别,填写菜品的名称,菜品的规格,菜品的价格。6 顾客管理记录顾客的消费金额和等级信息。同时可以修改添加顾客。7 营业额提交订单后,系统会记录消费金额和消费月份,在营业管理功能中能显示选定月份的营业额。第四章 系统实现- 21 -第四章第四章 系统实现系统实现4.14.1 用户登录用户登录员工通过输入用户名和密码登录入系统,如果密码或者用户名不正确,则不任许员工登录到系统。只有有此系统账号的员工才可以登录到本系统,用户登录界面如图4.1所示。在业务逻辑层定义checkadmin方法,在数据库中查找相应用户名密码进行匹配。图4.1 登陆界面关键代码如下:boolean flag=false; String s=jtName.getText(); char p=jtPwd.getPassword(); String pwd=new String(p); flag=loginCheck.checkName(s, pwd); if(flag) Main m=new Main();第四章 系统实现- 22 - m.setVisible(true); Login.this.setVisible(false); else JOptionPane.showConfirmDialog (null, 您用户名密码输入有误,请重新输入, 警告, JOptionPane.CLOSED_OPTION); jtPwd.requestFocus(); return; 4.24.2 系统主界面系统主界面通过前期的规划和设计,现将系统页面具体实现。登录成功进入系统主页面。系统主页面中主要包括的功能有:点菜系统,菜肴管理,顾客管理,营业管理,员工管理,密码修改,帮助。系统主界面如图4.2所示。图4.2 系统主界面第四章 系统实现- 23 -4.34.3 修改密码修改密码员工登录后可以自行修改密码,须先输入原始密码,再重新输入两次新密码,原始密码输入正确后调用业务逻辑层的updatename方法修改密码。修改密码界面如图4.3所示。图4.3 修改密码界面关键代码如下:String name=jtname.getText();char ch1=jpfpwdold.getPassword();String pwdold=new String(ch1);char ch2=jpfpwdnew1.getPassword();String pwdnew1=new String(ch2);char ch3=jpfpwdnew2.getPassword();String pwdnew2=new String(ch3);boolean flag=loginCheck.checkadminName(name, pwdold);if(flag)if(pwdnew1.equals(pwdnew2)loginCheck.updatename(name, pwdnew1);JOptionPane.showMessageDialog(null, 第四章 系统实现- 24 -修改成功, 提示, JOptionPane.CLOSED_OPTION);elseJOptionPane.showMessageDialog(null, 两次密码输入不匹配, 提示, JOptionPane.CLOSED_OPTION);jpfpwdnew1.setText();jpfpwdnew2.setText();jpfpwdnew1.requestFocus();elseJOptionPane.showMessageDialog(null, 原始密码输入错误!, 提示, JOptionPane.CLOSED_OPTION);jpfpwdold.setText();jpfpwdold.requestFocus();4.44.4 人员管理人员管理可以看到所有人员基本信息,包括员工姓名,员工编号,员工性别,员工的职责类别。对于员工信息也可以删除。如果新添加员工时,则添加员工姓名,员工编号,性别,主要用到了数据库的增删改查功能。人员列表界面如图4.4所示。增加员工界面如图4.5所示。第四章 系统实现- 25 -图4.4 显示所有人员界面图4.5 添加人员界面关键代码如下:this.jpYuangongall.setBounds(150, 0, 550, 598);第四章 系统实现- 26 -this.jsp.setBounds(10, 10, 500, 570);String sql=select * from Yuangong;try Connection conn=DBtools.getConnection();Statement stmt=conn.createStatement();ResultSet rst=stmt.executeQuery(sql);while(rst.next() v=new Vector();v.add(rst.getObject(1);v.add(rst.getObject(2);v.add(rst.getObject(3);v.add(rst.getObject(4);v.add(rst.getObject(5);v.add(rst.getObject(6);v.add(rst.getObject(7);v.add(rst.getObject(8);rows.add(v);TableModel model=new DefaultTableModel(rows,heads);jtab.setModel(model); DBtools.closeAll(conn, stmt, rst); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();4.54.5 顾客管理顾客管理系统给出餐馆内所有顾客信息,增加顾客,修改顾客信息。顾客管理界面如图4.6所示第四章 系统实现- 27 -4.64.6 菜品管理菜品管理系统给出酒店所有菜单信息列表,列出菜单的名称,菜单的价格,菜品的种类,如果删除菜品的信息,则通过“删除”按钮删除想要删除的数据,如果添加餐桌信息,则点“添加菜品”,进入添加菜品信息页面,选择菜品的类别,填写菜品的名称,菜品的规格,菜品的价格。菜单管理界面如图4.7所示图4.6 顾客管理界面第四章 系统实现- 28 -图4.7 菜品管理界面4.4.7 7 盈利管理盈利管理系统给出餐馆月盈利,年度盈利明细功能。在菜品结算时,将消费金额,消费金额日期存入到盈利的数据表中,在盈利界面按照月份将选定月份的消费金额相加显示当月的营业额。盈利管理界面如图4.8所示。第四章 系统实现- 29 -图4.8营业管理界面第五章 系统测试- 29 -第五章第五章 系统测试系统测试5.15.1 测试的作用和意义测试的作用和意义系统测试是系统开发周期中的一个非常重要环节。尽管在系统开发周期的各个阶段均采取了严格的技术审查,但依然难免会留下错误,如果系统的一些漏洞或错误在投入运行之前的系统检测阶段没有发现并纠正,这些问题在运行阶段是迟早会暴露出来的,到那时要纠正错误将会付出更大的代价。系统测试占用的时间、花费的人力和成本占软件开发的很大比例。统计表明,开发较大规模的系统,系统测试的工作量大约占整个软件开发工作量的4050。而对于一些特别重要的大系统,测试的工作量和成本更大,甚至超过系统开发其他各阶段的总和的若干倍。5.25.2 测试方法测试方法5.2.1 个人单元测试对于小系统,在编码过程中,最常用的单位测试。单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。 单元测试不仅仅是作为无错编码一种辅助手段在一次性的开发过程中使用,单元测试必须是可重复的,无论是在软件修改,或是移植到新的运行环境的过程中。因此,所有的测试都必须在整个软件系统的生命周期中进行维护。5.2.2 系统功能测试系统功能测试最常见的两种方法是黑盒测试和白盒测试,黑盒测试也称功能测试,将软件看作黑盒子,在完全不考虑程序的内部结构和特性的情况下,研究软件的外部特性。根据软件的需求规格说明书测试用例,从程序的输入和输出特性上测试是否满足设定的功能。白盒测试也称结构测试,将软件看作一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对软件的逻辑路径及过程进行测试,检查与测试是否相符。(1)监听测试监听是swing窗体的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址第五章 系统测试- 30 -的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证swing窗体上没有孤立的界面 (2) 表单测试当用户给swing窗体管理员提交信息时,就需要使用表单操作,例如用户登陆、信息提交等。在这种情况下,我们必须通过测试提交操作的完整性,以校验提交给服务器的信息的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。(3) 数据库测试在swing窗体技术中,数据库起着重要的作用,数据库为swing窗体管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。在使用了数据库的swing窗体中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。5.35.3 系统测试系统测试软件测试方法从测试人员角度看,可分为人工测试和机器测试。人工测试又称为代码复审。主要有三种方法:个人复查、走查、会审。机器测试分为黑盒测试(又称功能测试)和白盒测试(又称结构测试)两种。下面对本餐饮管理系统进行测试,以检查系统能否正确完成各种操作,是否能够实现预期具有的功能。1.用户登录输入密码错误时系统会提示。测试结果如图5.1所示第五章 系统测试- 31 -图5.1 登陆界面2. 修改密码员工登录后可以自行修改密码,输入密码 123,新密码也是123测试结果如图5.2所示。 图5.2 修改密码界面 3.人员管理从人员列表中,删除人员信息,增加人员信息,删除员工界面如图5.3所示,删减成功提示界面如图5.4所示。第五章 系统测试- 32 -图5.3 员工管理删除员工界面图5.4 删除成功提示界面第五章 系统测试- 33 -删除数据后,列表找不到该数据。4 菜单管理菜单列表信息,删除信息,增加菜单信息,系统自动提示。菜肴修改界面如图5.5所示。图5.5 菜品修改模块提示操作成功5 点菜管理就餐时,列表能正常打开点菜,类别热菜,凉菜等,菜品歌乐山炒鸡,铁板酿豆腐,铁板黄花鱼,选菜提示操作成功,点击提交上传选定菜品。要删除已经选定的菜品时,只要再次点击该菜品图片即可。显示点菜界面如图5.6所示。第五章 系统测试- 34 -图5.6 显示点菜模块结算时选定桌号,点击结算,系统定义全局变量sum累计相加得到菜品总价自动计算选定桌号所消费金额,点击清空后,桌号,消费金额数据传入盈利表,用于计算营业额使用。结算界面如图5.7所示。图5.7 结算模块6营业额显示固定月份的营业额,界面如图5.8所示。图5.8 结算模块7 退出系统如图5.9所示。图 5.9 系统退出第六章 结束语- 35 -第六章第六章 结束语结束语这次毕业设计既是一个学习的过程,也是一个实际工作的过程,它使我获得了一些开发小型系统的经验。至此,我已将所做的系统做了一个非常完整的描述。本系统的大部分模块已经实现,提供的界面友好,美观。但由于一些客观原因的限制,还不能对其进行进一步研究。通过这次所做的酒店餐饮管理系统,我真正了解到了什么叫做编程,以及做一个系统的思路和步骤,对软件工程也有了一个非常清晰明确的概念。毕业设计和我在大学初期做课程设计的时候很不一样,原来我们做的东西很不规范,想到哪里就做到哪里,没有一个正规的,清晰的过程。这次的毕业设计让我有了一个明确的学习目标。有些东西想起来比较容易做起来却难,只有真正做的时候,才会发现有许多知识是自己不懂的。比如设计时想好要如何实现订餐系统,但是实际操作时遇到了很多的问题,例如:jdk的配置,数据库的连接,页面美化等,在实际操作过程中都遇到了或这或那的问题。但是通过这些问题,学到了很多遗漏的知识。通过毕业设计,将大学所学的所有知识贯穿起来。并不是有了编程的知识,或者软件工程的概念就可以完成任务了,还必须弄清楚酒店餐饮管理系统是怎样运行,究竟是怎样一个过程等。只有把这些都弄清楚了,才能做出有用的,合乎逻辑和使用方便的系统。第一次做如此正规的系统,难免会有些遗漏和疏忽的地方,系统也会有不稳定,不完善的地方。但这些都是需要我们改进的地方。只有实践了,才知道问题所在,才能使自己在今后避免同样的错误。一个完整的系统仅仅靠几个月的分析和设计而开发时远远不够的,它需要更长的时间来测试并完善。所以,该系统可以在此基础上继续改进和扩展。这次毕业设计具有非同一般的意义,对我的很多方面都产生了积极的影响。让我对专业知识有了更深刻地认识,对今后的工作也有了更多的自信。也是我这么多年的读书生涯中难忘的经历。致谢- 36 -致致 谢谢大学四年匆匆而过,在这四年的学习生涯中,有苦有乐,学到了许多对未来都有帮助的知识,尤其是这次毕业设计,从中受益匪浅。对于这次的毕业设计首先要感谢我的指导老师王善斌老师,论文的开题、构思以及创作的过程中,得到了汤老师关心和帮助,是在他的精心指导写才得以完成,大学期间学的理论知识比较多但是实践起
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 任务书类


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!