智能餐饮管理系统.docx
《智能餐饮管理系统.docx》由会员分享,可在线阅读,更多相关《智能餐饮管理系统.docx(70页珍藏版)》请在冰豆网上搜索。
![智能餐饮管理系统.docx](https://file1.bdocx.com/fileroot1/2023-5/18/ef1689f4-d7b8-44d2-a7c2-110be3165870/ef1689f4-d7b8-44d2-a7c2-110be31658701.gif)
智能餐饮管理系统
本科毕业论文
题目:
基于C#研发的智能餐饮管理系统
分析设计与实现
院系:
数学与信息科学学院
专业:
软件工程
姓名:
学号:
指导教师:
教师职称:
填写日期:
2013年5月1日
摘要
随着社会科技的不断发展,人们步入了信息化时代、智能化时代。
餐饮业逐步走向信息化、智能化处理的模式:
从全手工经营方式到手工操作和计算机管理并存的半手工经营方式,最终步入全信息化、智能化经营方式。
一个好的智能餐饮管理系统能帮助餐馆节约成本、规范管理、提高经营效率。
首先,餐饮管理系统主要包括了客户端,厨房端,柜台端及前台,后台管理,点菜管理,收银管理及订位管理,全部实现智能化,不需要传统的服务员来记单,提升了餐馆的档次,方便了客户,同时也提高了餐馆的效率。
其次,本系统使用VisualStudio2005-C#编程语言,利用ADO.NET和SQLServer2005技术。
从系统设计和开发的角度提出了系统的总体设计目标和基本原则,阐述了系统的总体结构设计。
该系统包括:
登录模块,基础信息模块,辅助工具模块,系统维护模块,系统设置模块、财务管理模块等6个主要模块,每个模块下又有多个子模块。
该系统能为餐馆管理提供方便、快捷的服务,减少人力、物力资源,是一个功能完善、适用面较广的餐饮管理系统,基本实现了餐饮管理的智能化。
关键词:
餐饮管理系统;C#编程;SQLServer2005;管理;智能
Abstract
Withthedevelopmentofsocialscienceandtechnology,peoplehaveenteredintotheinformationageandaneraofintelligence.Especiallycateringindustryhasbeenenteringtowardsinformationintelligentprocessingmode—fromfullmanualmodeofoperationtobothmanualandcomputermanagementmanualmodeofoperation.Inthiswaycateringindustrywillbeabletoentertheinformation,intelligentmanagement.Agoodintelligencecateringmanagementsystemcansavetherestaurantcost,standardthemanagementandimprovethemanagementefficiency.
Firstofall,cateringmanagementsystemmainlyincludestheclient,thekitchen,thecounterendandthemanagementwhichincludesforeground,background,ordermanagement,cashierandbookingmanagement.Ithasachievedintelligentmanagementthatdoesn’tneedwaiterstowritedownorders.Notonlydoesintelligentmanagementenhancetherestaurantgradeconvenientforcustomers,butalsoimprovestheefficiencyoftherestaurant.
Secondly,thesystemusesVisualStudio2005-C#ProgrammingLanguage,ADO.NETandSQLServer2005technology.Dependingonthesystemfromtheangleofdesignanddevelopmentputsforwardthegeneraldesignobjectivesandbasicprinciples.Itintroducesthestructureofthesystemdesign.Thesystemincludes6mainmodules—theloginmodule,thebasicinformationmodule,toolmodule,systemmaintenancemodule,systemsettingsmoduleandfinancialmanagementmodule.Eachmainmodulehasitssubmodule.
Thissystemcanprovideaconvenient,quickservicerestaurantmanagementandreducemanpower,materialresource.Cateringmanagementsystemwhichisacompletefunctionandwiderangeofapplication,achievesthebasicrealizationoftheintelligentcateringmanagement.
Keywords:
restaurantmanagementsystem;C#programming;SQLServer2005;management;intelligent
第一章绪论
第一节项目研究的背景
一、国内现状分析
随着我国改革开放的步伐加快,管理模式急剧转型,计算机网络、分布技术日趋成熟,餐饮业的竞争也越来越激烈,想在这样竞争激烈的环境下生存,就必须运用科学的管理思想与先进的管理模式,使点餐与管理一体化,这样不仅可以提高工作效率,也避免了以前手工作业的麻烦,从而使管理者能够准确、有效地管理,因此,餐饮业的管理者更希望从科学的管理中取得竞争的优势,在竞争激烈的商业市场中取胜。
第二节项目开发目的和必要性
一、项目开发的目的
我国目前正处于发展阶段,市场活跃、科技更新快、管理模式也日趋成熟和智能,运用高新技术不断创新是管理者的首选之路,这样不但提高了管理的效率还加快了餐馆的运营,在我国的餐饮类是以中小型为主,在这样激烈的竞争中怎样才能脱颖而出、独树一帜使自己的餐馆在市场上获取最大的利益,随之就应运而生了以高新技术和智能化管理系统相结合研发的一项餐饮智能化管理系统。
二、项目开发的必要性
目前,我国餐饮业管理总的来说,还处于传统的手工管理模式范畴,在这一范畴中也就有着普遍存在的问题。
1、结账速度慢:
顾客多的时候,结账等候时间过长,有时甚至会出现跑单的现象;
2、存在下错单或漏单现象:
有时顾客会抱怨点好的菜迟上、错上甚至漏上。
这些往往都是由于服务员忘记落单、下错单或者是厨房丢失单据等人为错误造成的疏漏;
3、服务到位率低:
业务繁忙的时候,服务员疲于往返于顾客与厨房之间,腾不出足够的时间为顾客服务,难以提高饭店的服务水平;
4、账务核算用时过长:
日常的收银稽核工作需要设专人而且要耗费大量的工作时间,有时还会因人为的疏漏产生稽核错误或舞弊现象;
5、经营者缺乏对各类菜品销售情况的准确掌握:
无法进行科学的分析和预测,很难做到对菜品销售、顾客口味、客流等数据的营销分析,会直接影响经营的效益。
提高劳动生产率与改进利润是企业管理者追求的目标,从餐饮业未来发展趋势的考虑,随着IT技术在餐饮、饭店业务应用的深入,服务行业信息化战略的实现也是势在必行。
第二章相关技术简介
第一节.NET概述
一、.NET简介
.NET是MicrosoftXMLWebservices平台。
XMLWebservices允许应用程序通过Internet进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。
Microsoft.NET平台提供创建XMLWebservices并将这些服务集成在一起之所需。
对个人用户的好处是无缝的、吸引人的体验。
二、.NET组成
.NET的初级组成是CLI和CLR。
CLI(CommonLanguageInfrastructure)是一套运作环境说明,包括一般系统、基础类库和与机器无关的中间代码,全称为通用中间语言(CLI)。
CLR(CommonLanguageRuntime公共语言运行时)则是确认操作密码符合CLI的平台。
在CLI执行前,CLR必须将指令及时编译转换成原始机械码。
如果一种语言实现生成了CLI,它也可以通过使用CLR被调用,这样它就可以与任何其他.NET语言生成的资料相交互。
CLR也被设计为作业系统无关性。
三、ADO.NET技术
ADO.NET的名称起源于ADO(ActiveXDataObjects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据,之所以使用ADO.NET名称,是因为Microsoft希望表明这是在.NET编程环境中优先使用的数据访问接口。
ADO.NET是一组向.NET程序员公开数据访问的服务的类,为创建分布式数据共享应用程序提供了一组丰富的组件,它提供了对关系数据、XML和应用程序数据的访问,因此是.NETFramework中不可缺少的一部分。
ADO.NET支持多种开发需求,包括创建由应用程序、工具、语言或Internet浏览器使用的前端数据库客户端和中间层业务对象,ADO.NET是以ActiveX数据对象为基础,以XML为格式传送和接收数据的。
四、.NET动态编程
C#是静态强类型语言,而在很多情况下,提供“动态”行为,是常常发生的事情,例如通过反射在运行时访问.NET类型、调用动态语言对象、访问COM对象等,都无法以静态类型来获取。
因此,C#引入的又一个全新的关键字dynamic,也同时引入了改善静态类型与动态对象的交互能力,这就是动态查找(DynamicLookup)就像一个object可以代表任何类型,dynamic使得类型决断在运行时进行,方法调用、属性访问、委托调用都可动态分派。
同时,动态特性还体现在构建一个动态对象,在C#实现IDynamicObject接口的类型,可以完全定义动态操作的意义,通过将C#编译器作为运行时组件来完成由静态编译器延迟的操作。
第二节数据库系统设计概述
数据库应用系统开发涉及到后台数据库技术和前台的开发语言与数据库访问技术。
本系统的数据库选择SQLServer2005版本,前台开发选择当前最为流行的开发工具VisualStudio.NET中最新、最为经典的C#语言。
数据库技术是现代信息科学的重要组成部分,它已经成为了计算机信息系统和应用系统的重要技术支持。
数据库技术就是指如何科学地存储数据、高效地处理数据。
一般来说,数据库系统由3个部分组成:
数据库、数据库管理系统(DBMS)和数据库应用程序。
数据库是按一定的结构组织在一起的相关数据的集合;数据库管理系统是负责组织和管理数据信息的程序;数据库应用程序是数据库的前端程序,是用于浏览、修改数据的应用程序。
根据数据库对数据组织方式的不同,数据库管理系统分为基于文件的管理系统、网状数据库管理系统、层状数据库管理系统和关系数据库管理系统。
而SQLServer数据库是在数据库领域一直处于领先地位的一种关系型数据库管理系统。
第三节C#概述
一、C#简介
C#读作CSharp。
最初它有个更酷的名字,叫做COOL。
微软从1998年12月开始了COOL项目,直到2000年2月,COOL被正式更名为C#。
在1998年,Delphi语言的设计者Hejlsberg带领着Microsoft公司的开发团队,开始了第一个版本C#语言的设计。
在2000年9月,国际信息和通信系统标准化组织为C#语言定义了一个Microsoft公司建议的标准。
最终C#语言在2001年得以正式发布。
C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。
它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。
C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
C#是面向对象的编程语言。
它使得程序员可以快速地编写各种基于Microsoft.NET平台的应用程序,Microsoft.NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。
二、C#组成
类:
类可以是抽象的和不可继承的:
一个被申明成abstract的类不能被实例化,它只能被用做一个基类,C#关键字lock它申明一个类不是抽象的,但是它也不能被用做另一个类的基类界面:
一个界面是一组方法集合的抽象定义。
当一个类或结构体实现一个界面的时候,它必须实现这个界面中定义的所有方法。
一个单一的类可以实现几个界面,也许以后会出现一些微妙的差别。
强类型:
C#是一个强类型的语言,它的数值类型有一些可以进行隐式转换,其他的必须显式转换,隐式转换的类型只能是长度短的类型转换成长的类型,int可以转换成long、float、double、decimal,反之必须显式的转换。
类型:
C#中的类型一共分为两类:
一类是值类型(ValueType),一类是引用类型(ReferenceType)。
值类型和引用类型是以它们在计算机内存中是如何被分配的来划分的。
值类型包括结构和枚举,引用类型包括类、接口、委托等。
还有一种特殊的值类型,称为简单类型(SimpleType),比如byte,int等,这些简单类型实际上是FCL类库类型的别名。
COM的集成:
C#对Windows程序最大的卖点可能就是它与COM的无缝集成了,COM就是微软的Win32组件技术。
实际上,最终有可能在任何.NET语言里编写COM客户和服务器端。
C#编写的类可以子类化一个已存在的COM组件;生成的类也能被作为一个COM组件使用,然后又能使用。
NOTE:
堆栈(stack)是一种后进先出的数据结构,在内存中,变量会被分配在堆栈上来进行操作。
堆(heap)是用于为类型实例(对象)分配空间的内存区域,在堆上创建一个对象,会将对象的地址传给堆栈上的变量(反过来叫变量指向此对象,或者变量引用此对象)。
三、C#2.0版-泛型编程
C#2.0为开发者带来的最主要的特性就是泛型编程能力。
和面向对象思想一样,泛型思想也是一种已经成熟的编程思想,但依然是没有哪一种主流开发语言能够支持完备的泛型概念。
这主要是因为泛型的概念在一定程度上对面向对象概念进行冲击,同时,由于在编译期间对类型参数的完全检测很难做到,很多问题会被遗留到运行时。
C#2.0别出心裁,对泛型类型参数提出了“约束”的新概念,并以优雅的语法体现在语言之中。
有了约束,结合编译器强大的类型推断能力,可以在编译时发现几乎所有“危险”的泛型应用。
四、C#.WinForm控件技术
WinForm是基于.NETFrameWork2.0平台下用于设计窗体和可视控件,以创建丰富的基于Windows的应用程序,WinForm控件是指以输入或操作数据的对象,有自己的属性和方法。
属性是控件数据的简单访问者。
方法则是控件的一些简单而可见的功能。
包含在.NETFramework中的Windows窗体类旨在用于GUI开发。
您可以轻松创建具有适应多变的商业需求所需的灵活性的命令窗口、按钮、菜单、工具栏和其他屏幕元素。
第四节MicrosoftVisualStudio概述
MicrosoftVisualStudio不仅是一款为人熟知的开发工具,更是研发团队的协作与管理平台。
您可以用VisualStudio来创建桌面、网络、移动终端等不同平台的应用程序,VisualStudio更是云计算时代唯一的开发工具与协作管理平台。
您还可以使用VisualStudio来进行应用生命周期管理(ALM),并使用与微软相同的测试工具与方法来提升软件质量,并加快软件开发时程。
2005年,微软发布了VisualStudio2005。
.NET字眼从各种语言的名字中被抹去,但是这个版本的VisualStudio仍然还是面向.NET框架的(版本2.0),这个版本的VisualStudio包含有众多版本,分别面向不同的开发角色。
您可以根据开发任务的不同,有针对性地选用不同版本的MicrosoftVisualStudio,使您的开发工作更加快捷、更加高效!
第三章问题定义及可行性分析
第一节问题定义
一、要求
问题定义是计划时期的第一个阶段,其目的是要弄清用户需要计算机解决的问题根本所在,以及项目所需要的资源和经费。
本项目的主要研究内容是餐饮业管理,我国目前大多中小型餐饮还是采用的原始手工方式,这样做不仅效率不高,还容易造成落单、错记等,在顾客消费过程中难免会有记错菜、上错菜,这样会直接影响到顾客对餐馆的印象,从而对餐馆生意造成影响。
为了管理方便、快捷、无错,使营业更高效、安全。
得出需要完成如下任务:
1、使餐饮管理员的工作量减轻,极大的保证了餐饮营业的效率;
2、使顾客在消费过程中将手动操作转为智能化操作;
3、使顾客在点菜后第一时间将菜谱传送到厨房,节约时间,顾客消费后系统自动结算费用避免了错算、漏算;
4、方便顾客随时查询消费记录,方便管理人员对顾客转台、加菜、加人的有效管理。
系统主要实现智能点菜、综合管理两方面的各种功能,从餐饮管理来看,手工管理与信息化管理模式之间的明显差距,面对餐饮业多元化的经营现状,经营的特色、规模、出品这些因素的不同,带给餐饮企业的则是不同的标准和工作流程和方法,面对着这解决方法不一的情况,对企业进行需求管理分析及业务流程管理规划是必不可少的,通过科学的调研方法及工作流管理分析,从而从根本上解决餐饮业自身问题及不足。
二、目标
从实际的业务流程出发对餐饮管理系统的设计和实现,将餐饮管理系统运用到实际的生活中可实现的目标具体表现为以下的功能:
1、管理员的权限:
包括了添加、删除、查询、修改基础信息、辅助工具、系统维护,做餐饮营业前的准备工作,包括增、删、查、改菜肴信息、桌台信息、会员信息等功能。
2、经理的权限:
对基本信息的添加、修改、查询,员工信息的增、删、查、改操作,在顾客消费时可以查看顾客消费信息、详细留言等。
3、一般会员权限:
查看自己消费的相关信息,留言评论。
4、系统辅助功能:
系统辅助功能主要是为顾客提供便捷、简单的功能帮助。
5、点菜管理:
点菜管理是本系统实现的重要模块,它包括:
开台、点菜、结账、消费查询等功能,实现了将点菜与管理一体化的智能功能。
总之,利用智能化的餐饮管理系统可大大的提高对餐饮的管理力度和运营效率,力求使整个餐饮管理过程规范化、科学化,有序性和高效性地运行。
尽可能避免错误和重复数据操作,实现系统智能化计算相关信息。
并且也使得点菜和管理与其他信息化方面的建设相协调。
第二节可行性分析
可行性分析是在用户的要求和现状分析的基础上进行的,对新系统的开发从技术、管理、经济等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。
一、技术可行性分析
技术可行性分析是根据系统的目标来衡量是否具备所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。
从技术支持上来看,本系统的开发使用语言是VisualStudioC#,采用的是windows开发模式,后台数据库管理是SQLServer2005,这三项技术都是在管理信息系统开发的过程中是较为成熟的技术,并均带有一定的代表性,有其一定的优点。
从硬件资源看,这要考虑到系统开发人员在管理信息系统的开发过程中所需要的计算机设备及其有关的外部设备。
而鉴于餐饮管理系统的用途和环境,我院的硬件资源满足此系统的开发和使用。
从软件资源看,本系统的开发充分考虑了满足用户的要求,因此也具备一定的可行性。
二、管理可行性分析
所有人员都有必要对现行工作业务流程进行改进,管理系统实施后,需要对员工进行适当的培训,使员工理念在整个业务中得到更好的融合,餐饮管理系统同时能够给出具体的相应的符合企业自身要求的较科学的标准化管理流程,通过使用该系统就能完成一系列标准化管理。
餐饮管理系统通过对目前餐饮市场的具体情况科学的调研分析后设计而成的,它能够针对餐饮中因其菜品的多样化和特色化的服务困难而实现标准化管理,针对餐饮企业的成本控制困难实现合理化调整。
餐饮管理系统不仅仅是单纯的用于结帐计算的工具,它有着科学的、标准的管理体系,餐饮管理系统的加入给餐饮管理注入了新的生机。
因而是可行的。
三、经济可行性分析
在现代化管理中,经济效益的评价是决策的重要依据。
关于经济上的可行性,除了研究开发与维护新系统所需要提供的费用能否得到保证外,还需要研究新系统将要带来的收益、开发成本与维护费用之间的关系。
对于整个系统而言,在系统未运行之前,初期投资比较大,花费相对而言比较多。
各部门必须配置电脑、服务器及相关的网络设备,但是现在计算机已经普及了,并且在整个系统投入运行之后,相关的会计人员、服务员、专业的系统维护人员等都可减去,只需要聘请一个基本懂电脑的人就可完成一切餐饮管理,相应的各个环节也节约了很多时间,大大提高了整个餐馆的运营效率。
综合以上几个方面分析得出,该系统具有很高的开发可行性,无论是从技术上还是经济上都满足立即研发的标准。
第四章需求分析
第一节需求描述
一、系统需求
系统需求分析,是管理系统开发方法其中的生命周期法的第一阶段。
在系统需求分析阶段,根据系统调查中获得的原始资料,对组织内部整体管理状况和信息处理过程分析,确定用户的需求,并建立新系统的逻辑模型。
系统处理的准确性和及时性:
系统处理的准确性和及时性是系统的必要性能。
在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间信息处理的需求。
系统的易用性和易维护性:
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,易于系统的维护。
二、功能需求
功能需求分析,是管理系统开发方法其中的生命周期法的第二阶段。
在需求分析中,功能需求分析是重要组成部分,功能的实现与运用是整个系统的纽带;功能分析在需求分析中是不可或缺的一部分。
根据分析,该系统应需具备以下功能:
1、登录管理:
实现用户的登录,根据给定的用户名和密码进行登录。
2、主界面管理:
用于展现系统所有的功能模块,主要有:
基础信息、辅助工具、系统维护、系统设置、系统帮助、退出六大模块和工具栏等相关小模块。
3、台桌信息管理:
添加、更改、查询、删除关于大厅和包间的餐桌,设置包间费等
4、职员信息管理:
由经理对餐馆的职工进行信息的录入、增添删改。
5、菜品信息管理:
主要是采购菜品的名称、类别、数量、单价等相关信息统计,由采购经理对其进行增添删改。
6、菜肴信息管理:
对于餐馆提供的各类菜肴和烟酒等信息的添加、修改、查询,实现了菜肴的类别、价格多元化和特殊化的统