《网上订餐系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《网上订餐系统的设计与实现.doc(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 湖南工程职业技术学院 毕业设计说明书 类型:软件产品设计 设计题目 网上订餐系统的设计与实现 学生姓名 潘利忠 系 部 信息工程系 专 业 软件技术 班 级 2014170602 校内指导教师 阳小丽 企业指导教师 余剑 2017 年 5 月 网上订餐系统的设计与实现 2 目录 插图索引 . 5 附表索引 . 7 第 1 章 项目简介 . 8 1.1 选题的来源和意义 . 8 1.1.1 选题来源 . 8 1.1.2 选题意义 . 8 1.2 所要实现的功能与所针对的人群及解决的问题 . 8 1.2.1 所实现的功能 . 8 1.2.2 针对的人群 . 9 1.2.3 解决的问题 . 9 第
2、 2 章 系统开发环境 . 10 2.1 硬件环境 . 10 2.2 软件环境 . 10 2.3 相关技术 . 10 2.3.1 B/S 三层结构 . 10 2.3.2 MVC 模式 . 10 2.3.3J2EE 技术 . 12 第 3 章 网上订餐系统的需求分析 . 13 3.1 可行性分析 . 13 3.1.1 技术可行性 . 13 3.1.2 经济可行性 . 13 3.1.3 操作可行性 . 14 3.2 功能需求 . 14 3.2.1 登陆管理 . 14 3.2.2 管理员管理 . 14 3.3 性能需求 . 15 3.3.1 精度 . 15 3.3.2 时间特性要求 . 15 网上订
3、餐系统的设计与实现 3 3.3.3 输入输出要求 . 15 3.3.4 数据管理能力要求 . 16 第 4 章 网上订餐系统设计 . 17 4.1 系统框架 . 17 4.2 系统功能模块 . 18 4.2.1 登陆功能模块 . 18 4.2.2 后台管理员模块 . 18 4.2.3 菜单信息模块 . 19 4.3 数据库设计 . 20 4.3.1 数据库需求分析 . 21 4.3.2 数据库结构的设计 . 22 4.3.3 数据库表设计 . 22 第 5 章 系统功能模块实现 . 26 5.1 全局数据结构设计 . 26 5.2 网上订餐系统的实现 . 27 5.2.1 管理员登录模块实现
4、. 27 5.3.2 网上订餐前台模块实现 . 28 5.3.3 网上订餐后台模块实现 . 32 第 6 章 项目测试 . 34 6.1 测试环境 . 34 6.2 测试计划 . 34 6.3 测试记录 . 34 6.4 系统测试 . 34 总结 . 37 网上订餐系统的设计与实现 4 插图索引 图 21 MVC 模型图 . 10 图 31 登陆管理用例图 . 14 图 32 管理员管理用例图 . 15 图 41 系统总体功能模块图 . 18 图 42 管理员登陆信息程序流程图 . 19 图 43 添加管理员信息程序流程图 . 20 图 44 添加管理员信息程序流程图 . 21 图 45 E-
5、R 图 . 23 图 51 系统目录结构 . 26 图 52 登录界面 . 27 图 53 登录核心代码 . 27 图 54 网站首页界面 . 28 图 55 注册信息 界面 . 28 图 56 用户订餐 界面 . 29 图 57 修改密码及信息 界面 . 30 图 58 营养指南界面 . 30 图 59 留言板界面 . 31 图 510 管理员后台登录界面 . 31 图 510 管理员后台操作界面 . 32 图 511 管理员修改界面 . 32 网上订餐系统的设计与实现 5 附表索引 表 41 admin 表 . 24 表 42 菜品菜单表表 . 24 表 43 用户注册表 . 24 表 4
6、4 评论表 . 24 表 45 菜品类型表 . 24 表 46 订单表 . 25 表 4-7 订单详细信息表 . 29 表 4-8 新闻 表 . 31 表 4-9 购物车 表 . 33 表 6-1 系统测试用例表 . 33 表 6-2 系统测试用例表 . 33 表 6-3 系统测试用例表 . 33 表 6-4 系统测试用例表 . 33 表 6-5 系统测试用例表 . 33 网上订餐系统的设计与实现 6 第 1 章 项目简介 1.1 选题的来源和意义 1.1.1 选题来源 本系统的设计目的是为了满足消费者只要通过互联网就可以足不出户的订购自己喜欢的菜品,改变 传统商业交易,在互联网上进行交易,实
7、现网上购买菜品。 1.1.2 选题意义 该系统方便网上订餐系统信息的记录,更新,查询,利于其信息管理,对于客户提出的要求能够及时满足,提高了餐饮行业的工作效率,同时,开发这样一套管理软件对于我们即将从软件技术专业毕业的学生来说,也是一次将计算机应用于现实的一次很有意义的实践活动。 1.2 所要实现的功能与所针对的人群及解决的问题 1.2.1 所实现的功能 该系统分为前台和后台两个部分,前台部分主要是浏览者和普通用户进行资讯的浏览,以及订餐,订座管理等,主要是面向用户的。而后台 主要是管理人员对前台数据的维护和设置,主要是面向管理人员的。网上订餐系统无论是在应用的深度还是广度都是一个逐步发展的过
8、程。在开发一个局部系统时要充分考虑到局部系统和整个目标系统之间的相容性和完整性,以利于今后整个系统的建立。该系统从总体上把握系统,在具体的设计实现上我们围绕着三个方面的需求展开,即管理者、系统使用者、系统维护者。 网上订餐系统的设计与实现 7 1.2.2 针对的人群 本系统目前的主要对象是各个餐饮行业。 1.2.3 解决的问题 随着社会经济发展和人民生活水平的不断提高,人们的餐饮消费观念逐步改变,外出就餐更趋经常化和理 性化,选择性增强,对消费质量要求不断提高,更加追求品牌质量、品位特色、卫生安全、营养健康和简便快捷。快餐的社会需求随之不断扩大,市场消费大众性和基本需求性特点表现的更加充分。网
9、上订餐系统 后台管理系统针对上述问题,设置了多重查询、菜单记录、菜品订单检索等几个功能。支持按条件组合查询,多项信息结合更准确定位所需信息。同时可以对房屋的信息进行修改和删除。采用 java 技术开发,建立详细和易于理解的可视化对象,以帮助业务人员获得所需信息,并实现动态更新与检测。 网上订餐系统的设计与实现 8 第 2 章 系统开发环境 2.1 硬件环境 处理器: Intel(R) Core(TM) i5-4210U CPU 1.70GHz 内存: 4G 硬盘: 500G 2.2 软件环境 操作系统: windows 7 数据库: MySQL 开发平台: Myeclipse 8.6 2.3
10、相关技术 2.3.1 B/S 三层结构 B/S 和 C/S 是现在流行的软件系统结构, B/S 最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。 B/S 结构的使用越来越多,特别是由需求推动了 AJAX 技术的发展,它的 程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了 交互性 ,能进行局部实时刷新。 2.3.2 MVC 模式 MVC 设计模式包括业务模型、 用户界面 、 控制器 三层, MVC 是一种使用 MVC(Model View Controller 模型 -视图 -控制器
11、 )设计创建 Web 应用程序的模式 : Model(模型 )表示应用程序核心 (比如数据库记录列表 )。 网上订餐系统的设计与实现 9 View(视图 )显示数据 (数据库记录 )。 Controller(控制器 )处理输入 (写入数据库记录 )。 MVC 模式同时提供了对 HTML、 CSS 和 JavaScript 的完全控制。 Model(模型 )是应用程序中用于处理应用程序数据逻辑的部分。 通常模型对象负责在数据库中存取数据。 View(视图 )是应用程序中处理数据显示的部分。 通常视图 是依据模型数据创建的。 Controller(控制器 )是应用程序中处理用户交互的部分。 通常控
12、制器负责从视图读取数据,控制用户输入,并向模型发送数据。 MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。 MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。 MVC 模型结构如图 2-1 所示。 图 0 1 MVC 模型图 房屋中介后台管理系统使用 MVC 设计模式进行设计,有利于把模型数据与视图层实现有效分离,设置较为灵活的用户页面,提高用户体验效果。 网上订餐系统的设计与实现 10 2.3.3 J2EE 技术 J2EE 技术是 JAVA 语
13、言开发应用软件系统的主要平台之一,是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。 J2EE 核心是一组 技术规范 与指南,其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格,让各种依循 J2EE 架构的不同平台之间,存在良好的 兼容性 ,解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。 J2EE 组件和 标准的 Java 类的不同点在于 :它被装配在一个 J2EE 应用中,具有固定的格式并遵守 J2EE 规范,由 J2EE 服务器对其进行管理。 J2EE 规范是这样定义 J
14、2EE 组件的 :客户端应用程序和 applet 是运行在客户端的组件 ;Java Servlet和 Java Server Pages (JSP) 是运行在服务器端的 Web组件 ;Enterprise Java Bean (EJB )组件是运行在服务器端的业务组件。 网上订餐系统的设计与实现 11 第 3 章 网上订餐 系统的需求分析 3.1 可行性分析 可行性研究的目的不是解决问题,而是确认问题是否值得去解决。可行性研究 实质上是要进行一次大大压缩简化了的系统分析和设计过程,也就是较高层次上以较抽象的方式进行的系统分析和设计的过程。对于可行性分析,可从如下三个方面来进行: 3.1.1 技
15、术可行性 技术可行性考虑的问题是利用现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。 网上订餐系统的工作主要是在方便客户和餐厅之间架起一座桥梁,能相互提供信息,处理信息。这一特点非常适合于计算机特点,而计算机硬件和软件技术的飞快发展,也为系统的建设提供了技术条件。通过对网上客户流程加以分析,同时 java 提供给的良好开发平 台,其数据库链接的方便性以及目前一些利用数据库知识实现的信息管理系统,为实验的顺利进行提供可靠的参考和依据。 3.1.2 经济可行性 经济可行性 应该考虑其开发维护费用及该系统所能带来的效益之间的关系。该系统适用于各个餐厅以及年轻一族的人群,开发该
16、系统的费用主要包括开发阶段的费用以及今后的运行维护、费用。这些主要体现在工作人员的减少,工作效率的提高,相应工资支出的减少,更容易满足客户的需要,使网上订餐系统的客户群扩大,从而后期可以产生一定广告的收入。 网上订餐系统的设计与实现 12 3.1.3 操作可行性 1)正确性:根据拼餐厅网站的运作 流程设计软件,流程中的每个步骤在系统中都必须有所体现,保证程序的正确性。 2) 灵活性:系统应具有较灵活的更新操作,对菜单、会员、公告、定单等数据项应具备实时配置的功能,避免二次开发;对一段时间后数据库的内容进行有选择地删除,必要时对数据库系统进行初始化。 3) 稳定性:系统应具备长期持续工作的能力;
17、使数据库的一致性控制在可操作范围内;避免因系统引起的死机现象。 4) 安全性:有良好的用户身份认证体制和灵活的密码更改模块;用户权限可以通过管理员灵活修改;有手动备份等操作。 3.2 功能需求 网速订餐 管理系统的 功能 主要实现对 菜单数据和管理员数据的添加和管理 。 3.2.1 登陆管理 登陆管理 主要实现对登陆管理员信息的查询与判断,具体如图 3-1 所示 图 0 1 登陆管理用例图 3.2.2 管理员管理 管理员信息管理 主要实现对管理员信息的添加和管理员信息的管理与维护,登陆管理员 填写登陆信息 管理员系统 查询管理员信息 网上订餐系统的设计与实现 13 具体如图 3-2 所示。 图
18、 0 2 管理员管理用例图 3.3 性能需求 3.3.1 精度 系统 对精度要求不高,只要输入输出数据正确无误,使 登陆的管理员 能够轻松读懂即可。 3.3.2 时间特性要求 系统 需要响应时间应该适中,系统响应时间过长, 登陆的管理员 就会感到不安和沮丧,而响应时间过短有时会造成操作节奏 过 快,从而导致错误。而更新处理的时间和数据转换和传送的时间要快,如 查询信息时 。 3.3.3 输入输出要求 输入信息 菜品信息 : 出售菜单信息、 菜单类型 、价格。 管理员:用户名、密码等。 管理员系统 填写管理员信息 添加管理员信息 修改管理员信息 删除管理员信息 查询管理员信息 系统管理员 网上订
19、餐系统的设计与实现 14 输出信 息 查询结果、操作提示等,统计结果等。 3.3.4 数据管理能力要求 在设计数据库的表的时候,因为考虑到在系统运行时,可能会出现有些用户的需求会超出数据库库中数据之外,从而导致不能登记正确完整的信息,所以数据库中一共 6 个表左右,每个表都是独立存在的,没有外界关联的,而且每个表都有自己的主键,所以,基本上每个表都可以实现直接在该表上进行增删改查四种操作。 网上订餐系统的设计与实现 15 第 4 章 网上订餐 系统设计 根据网上订餐系统的需求分析结果,本章主要设计了网上订餐系统的架构模型、划分了系统的功能模块、设计了数据库的逻辑结构,使用 E-R 图 描述了系
20、统的实体关系,使用程序流程图详细描述了各功能的设计思路。 4.1 系统框架 系统需要提供的主要功能如下: 1. 普通用户能浏览系统、给系统留言并能注册成会员 2. 会员能网上订餐、给系统留言并能和在线的其他会员进行网上聊天 3. 管理员能对商品进行增删改查管理 4. 管理员能对各种商品进行销售统计 5. 管理员能管理(增删改查)普通会员 6. 管理员能对会员订单进行管理 网上订餐系统 总体框架划分如图 4-1 所示。 网 上 订 餐 管 理 系 统 的 设 计 与 实 现前 台 模 块 后 台 模 块注册登录菜品查询用户订餐在线聊天用户留言菜品管理订单管理销售统计留言管理用户管理图 0 1 系
21、统总体功能模块图 网上订餐系统的设计与实现 16 4.2 系统功能模块 4.2.1 登陆功能模块 登陆功能模块主要实现对登陆的管理员的查询与管理员账户和密码是否一致的判断。程序流程设计如图 4-2 所示。 图 0 2 管理员登陆信息程序流程图 4.2.2 后台管理员模块 后台管理员模块主要实现对管理员信息的添加、查询、修改和删除。程序流程设计如图 4-3 所示。 开始 管理员登录 登录否? 是 打开系统控制台 结束 否 网上订餐系统的设计与实现 17 图 0 3 添加管理员信息程序流程图 4.2.3 菜单信息模块 菜单信息模块主要实现对菜单信息的添加、查询、修改和删除,菜品出单,程序流设计如图
22、 4-4 所示 否 开始 系统 控制台 添加管理员 查询管理员 管理员信息登记 是否有效 提交给服务器保存 管理员信息 是否有效 提交给服务器保存 结束 否 修改管理信息 删除管理员信息 网上订餐系统的设计与实现 18 图 0 4 添加管理员信息程序流程图 4.3 数据库设计 该系统的主要功能是对数据进行管理 ,所以数据库的设计在该系统中起着相当关键的作用。数据库设计的好坏直接决定了该系统设计成功与否。本系统采用MySql 作为后台数据库。 开 始 系统控制台 添加菜单 查询菜单 管理员登记 是否有效 提交给服务器保存 否 菜单信息 是否有效 提交给服务器保存 结束 菜单 详情 删除菜单 是否
23、有效 修改菜单 否 是否有效 送货信息 否 菜品出货 否 网上订餐系统的设计与实现 19 4.3.1 数据库需求分析 1主页:在这里我们可以看见本系统的主要功能和信息。 2用户注册:在这里我们可以注册我们的基本信息,其中电话和 Email 是比较重要的,因为我们需要对这些信息进行处理,以方便用户的付款和邮购。 3用户登陆:为了方便用户的付款,邮购和管理,我们需要变成会员后才可以进行消费。 4菜品浏览:成功登陆后的用户可以分页浏览菜品菜品,并将想要的菜品提交到填写 订单页面。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登录页面”。 5订购菜品:成功登陆的用户可以在该页
24、面定购所需要的菜品。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。 6查看订单:成功登陆的用户可以在该页修改已经订购的菜品。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。 7修改订单:成功登陆的用户可以在该页修改或删除已经订购的菜品。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接 到“用户登陆页面”。 8菜品查询:成功登陆的用户可以在该页查找自己需要的菜品。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。 9修改密码:成功登陆的用户可以在该页修改自己的密码。如果用户
25、还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。 网上订餐系统的设计与实现 20 10修改个人信息:成功登陆的用户可以在该页修改自己当初注册时的信息。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。 11.商城公告:发布各种菜品信息或者新闻。 4.3.2 数据库结构的设计 数据库结构设计是为了展示数据直接的关联,其具体的设计如 图 4-5 所示 : 会 员i d用 户 名密 码类 型发布管 理 员i d用户名密 码类 型订 单i d会 员 名地 址邮 编固定电话移动电话描 述总 价管理包含菜 品i d描 述价 格存 储 量原 料销 售 量菜 品 名图 片11N1N1图 0 5 E-R 图 4.3.3 数据库表设计 在上面的实体以及实体之间关系的基础上,设计出各个数据表,用以记录信息。改数据库的设计中包含 6 个表格,分别用来记录管理员信息,房屋信息,预约签约人信息,省份信息,城市信息,区县信息。其具体的设计如下图所示: 网上订餐系统的设计与实现 21 表 0 1 管理员 表 字段名 中文名 类别 长度 允许为空 主键 id 编号 bigint 255 Y Name 用户名 varchar 255
限制150内