2、求分析说明书144.1引言144.2项目概述144.3系统需求分析164.4项目详细设计214.5项目技术方案224.6可行性分析235.开发环境与项目规划255.1开发环境255.2项目规划与管理265.2.1266.业务流程图277.0数据流程图307.1零层数据流程图307.2一层数据流程图308.数据字典及处理逻辑318.1逻辑设计318.2物理设计319.数据需求说明书329.1引言329.2数据的逻辑描述339.2.3动态输出数据339.2.4内部生成数据339.2.5数据约定349.3数据的采集349.3.1要求和范围:349.3.2输人的承担者349.3.3预处理35系统设
3、计351.功能模块设计352.软硬件配置方案363.网络拓扑结构设计374.数据库设计374.1数据库环境说明374.2数据库逻辑设计384.3数据库物理设计455.人机界面设计505.1设计问题505.2设计过程51项目系统实现561.系统实施说明561.1引言561.2系统运行环境配置与安装572.系统使用说明书592.1系统概述592.2使用说明60项目开发评价621.功能方面622.性能方面633.课程知识运用方面63参考文献64第一章系统分析1.开发背景与目标1.1开发背景随着社会消费水平的不断提高和网络技术的发展与普及。当今社会,要在竞争中取得优势,就肯定要依靠现代科学技术,各种
4、行业软件的支持来赢得效率和市场。订餐系统也就应运而生了。本系统就是针对大中小型餐厅而开发的一个点餐系统,它带来的是方便、实惠和个性化。系统采用C/S模式进行开发,以android为开发工具,以access为数据库。实现顾客自主通过客户端机器点菜,改变以往那种纯手工的点单模式,从而节省了大量的人力劳动。服务器端主顺序主要功能包括:前台营业(选桌、换桌、会员卡办理、结账等)系统基本设置、查询、系统管理、数据维护、数据报表。客户端顺序主要功能包括:顾客点菜管理、顾客查询。借助于计算机来统一管理顾客的点单,可极大的提高餐厅的运营效率。1.2开发目标喜莱多V5.0版本的点餐管理系统,界面友好,功能强大,
8、,系统的关系:本项目采用客户机/服务器原理,客户端的程序是建立在android系统上以eclipse为开发软件的应用程序,服务器端采用windows为操作系统的工作站,是采用Mysql为开发软件的数据库服务程序。3.1.3定义专门术语:缩写词:3.1.4参考资料:实用软件工程,郑人杰等,清华大学出版社3.2可行性研究的前提3.2.1要求主要功能:为顾客提供点餐服务,减少餐厅服务员的工作量,提高餐厅的服务质量和服务效率,大大降低了点餐和送餐不及时以及送餐错位的产生。性能要求:客户提供的信息必须及时的反映在餐厅后厨的工作平台上。系统的定单必须无差错的存储在餐厅的主服务器上。对服务器上的数据必
10、理系统具有怎样的功能,总结调查内容,对点餐管理系统做一个整体的规划。待我们的点餐管理系统开发出来并进行试用后,再次对参加试用的餐厅进行一次调查,了解他们对此系统的评价,然后我们在对此系统进行改善。3.4决定可行性的主要因素成本/效益分析结果,效益成本。技术可行,现有技术可完全承担开发任务。操作可行,软件能被使用人员快速接受。3.5技术可行性分析3.5.1系统简要描述在餐厅的各个餐桌中的终端是安装了android的移动终端机,主要目的是向餐厅后厨的服务器传递数据。顾客在移动终端机上进行点菜,确定点餐结束并不做更改后确定提交,终端向服务器发出详尽的一份定单,服务器核对后,存入点餐信息库,并修
11、改存货数据库。顾客只需等待便是,服务员也只按照订单内容配送餐点。3.5.2处理流程和数据流程服务器终端显示数据系统管理员产生报表库存信息的更新在客户端显示需支付金额及产生报表及帐单后厨配餐人员服务员核对信息进行送餐查看订单客户机终端显示数据产生报表数据库顾客订餐3.6经济可行性分析3.6.1支出(1)基础投资:移动机30台:600*30=18,000元网络设备:15,000元辅助配置:10,000元共计:43,000元(2)其他一次性投资:access:12,000元Windowsserver2008:5,000元操作员培训费:10,000元共计:27,000元(3)经常性支出:
12、其他不可知额外支出:20,000元共计:20,000元支出共计:9万3.6.2效益(1)一次性收益0元(2)经常性收益(按银行利率:1%);减少员工5人(1000元/人)五年收益:1000*(1.1+(1.1)2+(1.1)3+(1.1)4+(1.1)5)*5*12*5=30万工作效率提高收益(工作效率提高30%):30*(1.1+(1.1)2+(1.1)3+(1.1)4+(1.1)5)*(30%)*5=45万经常性收益共计:75万(3)不可定量收益因服务质量提高增加顾客量10%:10万*10%*(90%+(90%)2+(90%)3+(90%)4+(90%)5)=3.6万收益共计:
13、78.6万3.6.3收益/投资比78.6万/9万=873%3.6.4投资回收周期1年3.6.5敏感性分析设计系统周期为1年,估计最长可达2年处理速度:一般速度5秒3.7社会因素可行性分析3.7.1法律因素所有软件都选用正版;所有技术资料都由提出方保管;合同制定确定违约责任。3.7.2用户使用可行性使用本软件人员基本无任何技术要求,系统管理员要求由计算机的专业知识,所有人员都要经过本公司培训;管理人员也需经一般培训;经过培训人员将会熟练使用本软件;两名系统管理员,一名审计员将进行专业培训,他们将熟练管理本系统。3.8其他可供选择的方案3.8.1客户端与服务器端联系在一起在餐桌上、厨房内、
17、汇总,以对用餐食物进行合理预算。4.3系统需求分析4.3.1性能需求分析该系统在性能功能应达到如下要求:操作简单,界面友好:完全空间式的页面布局,使得菜品、咨询等信息录入的工作更简单:另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见类似的网站的管理的各个方面:基本信息录入、浏览、删除、修改、搜索等方面都大体实现,用户对菜品的预定以及支付方式;即时可见:对客户预定餐饮信息的处理(包括录入、删除)将立即在首页的对应栏目显示出来,达到“即时发布,即时见效”的功能系统运行应该快速、稳定、高效和可靠;在结构上应该具有很好的可扩展性,便于将来功能的扩展和维护。4.3.2项目报表
19、2用例概述进行再次对单,将厨师做好的菜端给顾客。前置条件顾客发送了订单后置条件厨房服务人员接收订单成功,菜已烹饪好了。事件流1:再次对单2:把菜端给顾客表3.4-2餐厅厨房人员获取订单,做菜并把菜送给服务员用例名称餐厅厨房人员用例编号3用例概述餐厅厨房人员获取订单,做菜并把菜送给窗口服务人员前置条件厨房人员已获得订单后置条件把菜送给窗口服务员事件流1:获取订单2:做菜3:把菜送给窗口服务人员表3.4-34.4项目详细设计4.4.1系统模块详细设计本系统总共有两大主要模块,分别是顾客模块和管理员模块。每个模块分别有不同的权限和使用功能。4.4.2顾客模块详细设计顾客模块的主要功能是浏览,订
22、MYSQL作为后台数据库。其内置的数据库引擎可以控制访问权限并快速处理数据,搜索引擎可以对表中的数据进行索引,并执行多种条件的查询,快速返回结果。便于防火墙日志的管理和规则的访问以及操作。数据库管理员和开发人员可以方便地利用其进行数据库管理或编写相应的MYSQL语句。4.6可行性分析4.6.1技术可行性分析网络订餐系统的开发是一项复杂的系统工程。为了保证系统开发成功,必须采用工程化的系统开发方法,并研究出一些符合工程化标准的开发方法。这些方法旨在指导开发者进行工程化的系统开发,从而加快系统开发的速度,保证质量以及降低开发成本。工程化的系统开发方法确实在开发实践中取得了一定的效果。此次开发使用
24、事物,用户表现出极大的兴趣和热情。4.6.4法律可行性本系统没有侵犯个人隐私和个人责任方面的问题,使用本系统不会引起法律方面的纠纷问题,所以开发本系统具有法律可行性。综上所述,本系统的开发是符合现在的实际情况的,并具有一定的实用意义。在技术、经济、运行、法律上都可以看到此系统的可行性,并且很具有其实现的必要。5.开发环境与项目规划5.1开发环境随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象,其中餐饮业的发展尤为突出。近两年来已呈现出高速发展的态势。但在快速发展的同时,餐饮业在日常经营管理中仍普遍采用手工管理方式,整体科技含量低。随着餐饮企业规模和数量的不断增长,手工管理模式无论
25、是在工作效率、人员成本还是提供决策信息方面都已难以适应现代化经营管理的要求,因此制约了整个餐饮业的规模化发展和整体服务水平的提升。有效的管理成为了一个难题,为能有效的解决这些问题提高企业的经济效益,在这些大中小型饭店中采用工作流技术,结合饭店绿色管理内容,实施计算机管理信息系统视为一条有效的解决途径。餐饮业的蓬勃发展带动餐饮投资多元化,大量资本的进入进一步推动了餐饮业的快速、健康发展,随着社会各领域信息化建设的不断普及,餐饮业也开始不断注入信息化元素,将餐饮业务融入计算机管理,既节省人力资源,也提高了管理效率和工作效率,将餐饮业提升到一个新的阶段。该餐饮系统从发展现状谈起,结合用户实际需求提
27、.2.2开发进度安排在三周之内完成,一周调查,两周做系统及文件。6.业务流程图前台订餐业务流程图库存处理业务流程图结账处理业务流程图总业务流程图7.0数据流程图7.1零层数据流程图7.2一层数据流程图8.数据字典及处理逻辑8.1数据项表1菜品表:Food列名中文名称数据类型长度是否允许为空备注FoodID菜品IDIntNotnull主键FoodClassID分类IDIntnullFoodName菜名nvarchar25nullFoodClass分类类名nvarchar25nullFoodIntroduce菜品简介nvarchar100nullFoodPrice价格FloatnullFoo
32、网络无线连接,内置Web浏览器,支持JavaScript。通过系统测试,该机型完全可以胜任点餐系统所需的各项功能。在软件配置方面,成熟的Web方案成为首选。在数据中心,采用了Windows+JSP+access作为支撑环境。在开发模式上,采用JSP+JDBC进行网站开发。该开发模式开发难度低,容易推广。因为很多餐厅原有系统大都使用类似的服务器配置,因此采用这些配置也可以保护餐厅的原有投资。在管理工作站上,采用了Windows+Java客户机开发模式。在无线网络的架设上,系统采用了无限局域网技术,Wi-Fi网络。选用的Linksys的无线路由器作为该方案的无线基站,可以稳定地覆盖大厅内半径为10
33、0米的区域,并且可以穿透一堵混凝土墙体。下面给出了系统中各个子系统的硬件和软件的配置描述:系统软件:android系统、windows系统数据库管理系统:Mysql硬件要求:CUPinterX862.0GHz内存2G显卡256色以上,128MB显存3.网络拓扑结构设计4.数据库设计4.1数据库环境说明本系统是一个管理系统,采用一般的数据库系统,主要采用的是Mysql数据库。数据库设计是开发数据库及其应用系统的技术,也是信息系统开发和建设的重要组成部分。具体的说,数据库设计是要在一个给定的应用环境中,通过合理的逻辑设计和有效的物理设计,构造较优的数据库模式,建立数据库及其应用系统,
34、满足用户的各种信息需求。在系统的数据库设计中,首先对系统分析得到的数据字典中的数据存储进行分析,分析各数据存储之间的关系,然后得出系统的关系模式。本系统用实体联系图(简称ER图)来描述系统的概念模型。ER图由实体、属性、联系三部分组成,其符号如下图所示:实体属性联系4.2数据库概念设计ER图图1-1餐桌实体图图1-2菜品实体图图1-3员工实体图图1-4顾客实体图分E-R图E-R图4.3数据库逻辑设计4.3.1逻辑设计步骤(1)将概念结构转换为一般的关系、网状、层次模型;(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;(3)对数据模
37、须用字母开头,采用有特征含义的单词或缩写,不能用双引号包含。主键名前缀为PK_。主键名称应是前缀+表名+构成的字段名。如果复合主键的构成字段较多,则只包含第一个字段。表名可以去掉前缀。外键名前缀为FK_。外键名称应是前缀+外键表名+主键表名+外键表构成的字段名,表名可以去掉前缀。索引普通索引前缀为IDX_。索引名称应是前缀+表名+构成的字段名。如果复合索引的构成字段较多,则只包含第一个字段,并添加序号。表名可以去掉前缀。主键索引前缀为IDX_PK_。索引名称应是前缀+表名+构成的主键字段名,在创建表时候用usingindex指定主键索引属性。唯一索引前缀为
38、IDX_UK_。索引名称应是前缀+表名+构成的字段名。外键索引前缀为IDX_FK_。索引名称应是前缀+表名+构成的外键字段名。函数索引前缀为IDX_func_。索引名称应是前缀+表名+构成的特征表达字符。簇索引前缀为IDX_clu_。索引名称应是前缀+表名+构成的簇字段。视图前缀为V_。按业务操作命名视图。实体化视图前缀为MV_。按业务操作命名实体化视图。存储过程前缀为Proc_。按业务操作命名存储过程。触发器前缀为Trig_。触发器名应是前缀+表名+触发器名。4.3.3触发器的设计(1)在入库信息表上创建食料入库的触发器:当某种食料入库时检
39、查仓库中是否有该食料,如果有则放在一起,如果没有则重新选择存放的仓库号。即:入库信息表添加记录时检查食料号是否存在于库存信息表中,若存在则修改库存信息表中的数量,若不存在则在库存信息表中添加相应记录。(2)在出库信息表上创建食料出库的触发器:当某种食料出库时修改该食料的库存数量(工作人员可以从仓库运出的食料数量一定小于等于库存数量)。即:当出库信息表中添加记录时在库存信息表中修改相应食料数量。函数前缀为Func_。按业务操作命名函数。数据包前缀为Pkg_。按业务操作集合命名数据包。序列前缀为Seq_。按业务属性命名。4.3.4逻辑设计图权限设计用户数据库对象允许操作类型能否转授
40、权管理人员所有表、视图allprivileges能仓库管理员table入库信息表table出库信息表table库存信息表selectinsertupdate否table仓库基本信息表select收银员Table销售记录表selectinsert否采购员table供应商基本信息表select否table进货表selectinsert顾客View点餐表select否4.4数据库物理设计4.4.1数据库物理设计步骤物理设计的步骤如下:(1)存储结构设计数据库的存储结构不同于一般文件系统的存储结构。数据库数据的特点是各种记录型之间彼此有联系,数据是结构化的。数据的存储结构不仅涉及每种记录型的
41、记录如何存储,而且要使数据的存储反映各种记录型之间的联系。在DB多级模式中引入内模式(存储模式)的主要目的是使模式的数据结构的描述同它的存储表示的描述分开,以致DBA为了协调数据库性能而对数据库数据的存储方法进行修改时,可不必修改模式,以提高数据库的物理独立性。在各个数据库管理系统中,对内模式的定义功能各不相同。在关系数据库管理系统中有些DDL语句可影响数据库的存储结构。在DBMS中各级模式的存储结构是恒定的或唯一的,而数据库内容(或其记录)的存储方式是不唯一的。数据库存储结构设计的好坏直接影响系统的性能。在存储结构中主要是涉及存储记录的设计。存储记录与概念记录之间具有对应关系,如果存储记录与
42、概念记录之间具有一一对应关系,在这种情况下存储记录的设计就比较简单,不需要进一步讨论。概念记录是指在逻辑结构中的记录。但当一个概念记录对应多个不同类型的存储记录时,存在如何设计存储记录的问题。在次关键字索引中,由于一个次关键字值对应于多个记录值,它们的个数是不固定的,所以对应的指针数目是可变的。这种可变性给管理带来困难,为了解决这个困难,引入了多表组织。多表组织的实现思想比较简单,在索引中多个指针分散存放在每个记录值中,索引项中的指针指向第一个记录,在第一个记录中的指针指向第二个记录等等。(2)存储空间分配根据系统需求和各关系模式中属性的特征,为了加快查询的速度,可以建立如下索引:1餐桌
49、统比较简单,需要加载的东西很少。一般,顾客点击完就响应了。5.1.2用户帮助设施因为顾客界面简单明了,终端界面上没有直接的帮助信息,不过,整个软件有文档。5.1.3出错信息处理当顾客操作不对时,系统会有声音,并弹出出错框,告诉顾客出错的大致原因。5.1.4命令交互系统随着用户的操作,而执行不同的命令。5.2设计过程5.2.1用户终端用户登陆界面使用系统的用户进行快捷登陆用户对客户进行选桌设置收银结账界面5.2.2顾客触屏点餐界面初始欢迎界面主界面顾客已点菜界面5.2.3厨房显示界面厨师登陆界面厨师未读菜单数显示还有那几个桌号的点单没完成,桌号是几,则显示几号桌的点单,没完
50、成一样菜,厨师就在菜名前点一下,完成后,桌号和未读菜单数会自动更新。5.2.4管理员登陆界面项目系统实现1.系统实施说明1.1引言1.1.1编写目的本实施说明为山口组集团喜莱多V5.0点餐管理系统实施说明,目的在于介绍开发和运行环境以及环境的配置和安装,为以后系统的实施和维护做好准备。1.1.2项目背景待开发的系统:山口组集团喜莱多V5.0点餐管理系统;本系统的提出者:山口组集团项目开发中心;开发者:山口组集团项目开发中心YW小组;用户:各大中小型餐厅;实现软件单位:各大中小型餐厅及重庆师范大学项目与其他软件,系统的关系:本项目采用客户机/服务器原理,客户端的程序是建立在android系统上以
51、eclipse为开发软件的应用程序,服务器端采用windows为操作系统的工作站,是采用Mysql数据库服务程序。1.1.3系统简介系统分为以下这些模块:前台管理、点餐管理、厨房管理、库存管理、系统信息管理。系统主要是对餐厅顾客点餐信息进行管理和餐厅信息进行管理。1.2系统运行环境配置与安装1.2.1系统实施内容(1)软件配置要求前端:采用AndroidOS,使用Java语言开发;后端:服务器采用WindowsServer2003OS,使用.Net开发平台开发;数据库采用Mysql(2)硬件配置要求前端:QUOTATIONFORMID/MiniLaptopRK-1020T
52、,支持Android2.1、Android2.2;CPUTelechipsCPUSpeed1GMHZMemoryCapacitiesDDR256MBHarddrive2GFLASHNAND(TouchPanel)OperationSystemAndroid2.1/Linux/winCEChipsetsARM800MHZ,DSP550MHZResolution1024*600Display10.2inchTFTLCD7inchTFTLCD8.9inchTFTLCD(TouchPanel)LAN10/100MEthernetAccess3GExternal3GWIFIWirele