《酒店管理系统说明书(共23页).doc》由会员分享,可在线阅读,更多相关《酒店管理系统说明书(共23页).doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上*实践教学* 兰州理工大学计算机与通信学院2014年春季学期 数据库 课程设计题 目: 酒店管理系统 专业班级: 计算机科学与技术1班 姓 名: 甄浩玲 学 号: 指导教师: 王 燕 成 绩: 专心-专注-专业目 录摘 要酒店餐饮管理系统是为了实现酒店餐饮自动化管理而设计的,它完全取代了原来酒店餐饮管理一直使用的人工处理的工作方式,并且避免了由于管理人员的工作疏忽以及管理质量问题所造成的各种错误,为及时、准确、高效的完成酒店餐饮管理工作提供了强有力的工具和管理手段。针对传统的酒店餐饮管理带来的诸多不便,文章介绍了新型的酒店餐饮管理模式。在开发酒店餐饮管理系统中,采用了
2、sqlserver 2008数据库管理系统,java主流开发技术进行了实现实现流程规范化,数据灵活化配置一套餐饮管理系统。通过系统的开发掌握软件的基本的开发流程,了解了系统的业务。从而掌握软件开发整体过程,把知识运用实际生产中。 关键词:数据库;餐饮管理系统;系统设计;java; sql server 20081. 需求分析项目需求分析就是描述系统需求,通过定义系统中的关键域类来建立模型。分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通的机制,因此,酒店餐饮管理系统的需求分析也是开发人员和用户一起完成的。需求分析的第一步是描述酒店餐饮管理系统的功能,即定义用例,以此确定系统的功能需
3、求。该系统主要从酒店的订餐方面来分析。酒店餐饮管理系统也是一个酒店不可缺少的部分,它的内部无论对于客户还是员工来说都至关重要,所以一个系统应该能够为用户提供充足的快捷的信息和方便的查询方式,而且不应有时间和地域的限制。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已成为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的部分,使用计算机对酒店餐饮的管理具有着手工管理所无法比拟的优点:(1)客户和工作人员可以随时了解有关酒店餐饮的相关信息。(2)减轻了工作人员的工作负担。(3)查询、修改更加方便、快捷。1.1系统的主要功能根据餐饮行业的特点和该企业的实际情
4、况,该系统以餐饮业务为基础,突出前台管理,从专业角度出发,提供科学有效的管理模式。点菜方面采取图形界面加数据的方式,使用户能直观地管理数据信息,并能有效地管理每个开台所点的酒菜。点菜收银管理可实现点菜、结账、清台。营业分析可对客人点单情况、房台营业情况、酒菜销售情况、销售收入等进行分析。点菜收银、营业分析的有机结合,可为酒店经营方向提供依据,为酒店餐馆的发展提供重要保证。根据该企业的具体情况,系统主要功能设计有五大部分,分别为前台管理,财政管理,应收应付管理,系统初始化,系统管理,。1、前台管理:主要是对酒店前台收银的管理。包括订餐管理、结账管理、当日结账数据分析、日结算管理。2、财政管理:主
5、要是对酒店财务方面的管理。包括日结算管理、月结算管理、年结算管理。3、应收应付管理:主要是对酒店的往来账款进行管理。4、系统初始化:主要是对酒店的基础设置信息的管理。包括订餐管理,收款管理,交班管理,餐饮成本核算。5、系统管理:主要是对权限进行管理。1.2功能模块设计采用本系统可以大大减少前台的服务人员的人数,直接和厨房联系加快上菜速度。由于采用计算机操作,可以大大提高操作速度。为了能够适应信息化发展的需要,提高餐饮部门的工作效率,引入了该信息系统。根据分析,酒店餐饮管理系统可分为以下三个模块:登录模块、订餐模块、后台管理模块。其系统模块图1.1所示。 图1.1系统功能模块图1.3数据字典数据
6、字典是系统中各类数据描述的集合,是进行详细的数据的收集和数据分析秘获得的主要成果。数据字典部分如下:表1.1餐桌信息表数据流系统名:餐饮管理系统条目名:餐桌信息来源:区域餐桌信息去处:餐桌信息预定查询数据结构:餐桌信息: 桌号,名称,状态,主菜单ID,其他简要说明:餐桌信息表主要是查看餐桌的当前状态表1.2菜单信息表数据流系统名:餐饮管理系统条目名:菜单信息来源:菜单信息去处:菜单信息添加,删除查询数据结构:菜单信息表主要是查看菜单的信息菜单信息: 菜号,菜名,描述,价格,菜单ID简要说明:菜单信息,主要是管理员对菜单信息的添加与删除表1.3订餐信息表数据流系统名:餐饮管理系统条目名:订餐信息
7、来源:订餐去处:订餐信息删除查询数据结构:订餐信息: 菜号,菜名,订餐时间,客户号,客户姓名简要说明:酒店登陆系统,订餐1.4 系统数据流图图2.7酒店餐饮管理系统顶层数据流图图2.8一层数据流图图2.9 P1的明细图2. 概念结构设计2.1 局部E-R图概念设计是一种面向对象的数据模型。它描述了从用户角度看到的数据,反映了用户的实现环境。概念设计中最著名的方法就是实体联系方法,建立E-R模型,用E-R图表示概念结构,得到数据库的概念模型 。本系统的主要的实体有订餐信息,客户信息,菜谱信息,结算信息等。实体关系图如下所示:订餐信息:包括的数据项有桌号、菜号、菜名、数量、价格、订餐日期,就餐日期
8、等;订餐信息实体关系图如图2.2所示。菜谱信息:包括的数据项有菜谱号、名称、种类、价格、描述等;菜谱实体关系图如2.3所示。客户信息:包括的数据项有客户编号、客户姓名、年龄、性别、联系电话、所在单位等;客户实体关系图如图2.4所示。结算信息:包括的数据项有客户号、桌号、结算日期、打折情况、总计等;结算实体关系图如图2.5所示。 图2.1 订餐信息实体关系图 图2.2 菜谱实体关系图 2.3客户信息实体关系图 图2.4结算信息实体关系图2.2总体E-R图逻辑设计的目的是把概念设计好的概念模型转换成与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构。这些模型在功能上、完整性和一致性约束及
9、数据库的可扩展性等方面均应满足用户的各种要求2。因而,根据上节的实体E-R图,总体E-R图如下: 图2.5 总体ER图3. 逻辑结构设计3.1 关系模式:订餐信息(桌号、菜号、菜名、数量、价格、订餐日期,就餐日期)菜谱信息(菜谱号、名称、种类、价格、描述)客户信息(客户编号、客户姓名、年龄、性别、联系电话、所在单位)结算信息(客户号 、桌号 、结算日期、打折情况、总计)3.2系统数据表 表3.1餐桌表dinnertalbe字段名称数据类型字段大小说明索引是否为空idInt4编号Primary KeyNOAreaidInt4区域IDPrimarykeyNONameNvarchar50名称YesS
10、tateInt4状态YesMenuidInt4主菜单IDYesMemoNvarchar100其他Yes该表是用来记录餐桌的信息,及当前的使用状态。表3.2 订餐表dinnermenu字段名称数据类型字段大小说明索引是否为空IdInt4IDPrimarykeyNoStateInt4状态YesGuesttypeSmallint2用户类型YesGuestidSmallint2用户idYesGusetcountSmallint2用户数YesDinnertableidInt4餐桌IDYessumToPayReal4总合YesDiscountReal4打折率YesWaiteridInt4服务员IDYesM
11、emoNvarchar50其他Yes该表是用来记录订餐信息,主要有客户信息,订餐人数等。表 3.3 菜单添加表menuitem字段名称数据类型字段大小说明索引是否为空idInt4编号Primary KeyNOdishnamenVarchar50区域名称NOMemonVarchar50描述YesPriceReal4价格YesMenuidInt4菜单idNo该表是用来记录菜单信息,和添加菜单信息。表3.4退菜表 reject字段名称数据类型字段大小说明索引是否为空IdInt4菜号Primary KeyNOReasonnVarchar50原因NOMemonVarchar50描述YesItemidIn
12、t4菜品idYes该表是用来记录退菜的信息和退菜的原因。3.3 关系图图3.1关系图4. 系统实现4.1 用SQL Server建立数据库SQL Server程序:create database 酒店管理系统;1)、创建客户信息表SQL Server程序:create table 客户 (客户号 char (5)primary key, 菜号 char (3), 客户姓名 char (8), 年龄 char(3), 性别 char(2), 联系电话 char(11), 所在单位 char(20), );2)、创建菜谱信息表SQL Server程序:create table 菜谱 (菜号 cha
13、r (3) primary key, 名称 char (10), 种类 char(10), 价格 char(5), 描述 char(30), );3)、创建订餐信息表SQL Server程序:create table 订餐 (桌号 char (5)primary key, 菜号 char (3), 菜名 char (10), 数量 char(3), 价格 char(5), 订餐日期 char(8), 就餐日期 char(8), foreign key (菜号) references 菜谱(菜号) );4)、创建结算信息表SQL Server程序:create table 结算 (客户号 cha
14、r (5) , 桌号 char (5), 结算日期 char(8), 打折情况 char(10), 总计 char(5), 餐饮成本 char (10), primary key (客户号,桌号), foreign key (客户号) references 客户(客户号), foreign key (桌号) references 订餐(桌号) );4.2 界面实现1、用户登陆界面如下图4.1图4.1 用户登录界面2、功能界面如下图4.2 图4.2 功能界面 3、菜单管理界面如下图4.3所示 图4.3 菜单管理 4、订餐管理界面如下图4.4所示 图4.4 订餐管理 5、管理员界面如下图4.5所示
15、图4.5 管理员界面6、 结账管理界面如下图4.6所示 图4.6结账管理 5. 系统测试5.1测试方法系统功能测试最常见的两种方法是黑盒测试和白盒测试,黑盒测试也称功能测试,将软件看作黑盒子,在完全不考虑程序的内部结构和特性的情况下,研究软件的外部特性。根据软件的需求规格说明书测试用例,从程序的输入和输出特性上测试是否满足设定的功能。白盒测试也称结构测试,将软件看作一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对软件的逻辑路径及过程进行测试,检查与测试是否相符。(1)链接测试链接是应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分
16、为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。(2) 表单测试当用户给应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。如果表单只能接受指定的某些值,则也要进行测试。 (3) 数据库测试在应用技术中,数据库起着重要的作用,数据库为应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在应用中,最常用的数据库类型是关系型
17、数据库,可以使用SQL对信息进行处理。在使用了数据库的应用系统中,一般可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。5.2 测试用例1、本系统在订餐时必须填写桌号和订餐日期才可以订餐成功,如下图5.1:图5.1 订餐测试图2、修改密码模块必须先输入原来的密码在进行修改,如下图5.2所示:图5.2 密码修改测试图参考文献1. 赵艳铎等(译). 数据库原理(第5版) M. 清华大学出版社, 2011 2. 杨冬青等(译). 数据库系统概念(第6版) M.
18、 机械工业出版社, 20123. 金名等(译). 数据库系统设计、实现与管理(第8版) M. 清华大学出版社, 20124. 刘智勇. SQL Server 2008宝典M. 电子工业出版社,20105. 苏金国等(译). Oracle Database 9i/10g/11g编程艺术M. 人民邮电出版社, 20116等. JSP程序设计M. 清华大学出版社, 2009,87吴长忠,曹树坤,陶立英,桑曙光.高校毕业设计管理系统设计与构建研究J.,2009年35期8张建伟,王璐,蔡增玉,陈娟娟. 基于Web的高校毕业设计全程管理的系统设计与实现J. ,2009年05期9. 李华. PowerBui
19、lder程序设计教程M. 清华大学出版社,2010课程设计总结本次数据库课程设计历史两周,是一个学习和实践的过程,它使我获得了一些开发小型系统的经验。至此,本系统的大部分模块已经实现,提供的界面友好,美观。但由于一些客观原因的限制,有些功能还没有实现。通过这次所做的酒店管理系统,我真正了解到了什么叫做编程,以及做一个系统的思路和步骤,对软件工程也有了一个非常清晰明确的概念。这次的课程设计让我有了一个明确的学习目标。有些东西想起来比较容易做起来却难,只有真正做的时候,才会发现有许多知识是自己不懂的。比如设计时想好要如何实现订餐系统,但是实际操作时遇到了很多的问题,例如:数据库的连接,页面美化等,在实际操作过程中都遇到了或这或那的问题。但是通过这些问题,学到了很多遗漏的知识。第一次做如此正规的系统,难免会有些遗漏和疏忽的地方,系统也会有不稳定,不完善的地方。但这些都是需要我们改进的地方。只有实践了,才知道问题所在,才能使自己在今后避免同样的错误。一个完整的系统仅仅靠两周的分析和设计而开发时远远不够的,它需要更长的时间来测试并完善。所以,该系统可以在此基础上继续改进和扩展。这次课程设计具有非同一般的意义,对我的很多方面都产生了积极的影响。让我对专业知识有了更深刻地认识,对今后的在数据库开发上也有了更多的自信。