4.3菜单管理和添加菜单功能 20
4.4角色管理和权限分配 21
4.5当前用户列表和用户信息 23
4.6菜品分类管理 24
4.7订单销售管理 25
4.8顾客管理 26
4.9系统日志 27
4.10前台手机使用 27
第 5 章 系统的整体测试 32
5.1系统测试定义 32
5.2测试的目标和意义 32
5.3用例测试 32
5.4系统评价 34
5.5测试结论 34
第 6 章 结论 36
参考文献 37
致谢 38
第 1 章 绪论
1.1设计背景
在当今日新月异的生活环境中,互联网大数据时代给人们的生活带来了很多的便利, 一部手机就可以解决生活中的问题,计算机技术、软件技术飞速发展,渗透到人们生活的方方面面,不仅在经济,社会,交通,通信等领域得到广泛发展,也从家电、娱乐、艺术、社会发展到最接地气的衣食住行文化。计算机智能逐渐取代人工,云计算、数据挖掘已逐渐成为最为流行的时代潮流。而在这样的大背景下逐渐发展、兴盛起来的互联网社会,智能手机、ipad 等智能设备似乎成了每一个人的标配,与此同时几乎大部分人都会在一天的时光中分出大量时间花费在手机上,手机所能实现的功能也是越来越丰富。
随之而来的是互联网与通信技术的崛起,手机上所能支持的外卖点餐 app 种类繁多, 让人挑花了眼。其同时也在改变着人们的消费观念和消费习惯,致使整个餐饮业正潜移默化、不动声息地发生着“翻天覆地”的变化。可是从另一方面来看,外卖点餐 app 虽然也给各式餐饮店提供了一个展示的平台,促使消费者可以轻而易举地购买自己想要的菜品, 但平台所要收取的佣金比例较高,且在不断上涨,导致商家的利润也随之降低,整个餐饮业受此影响,进入微利时代。因此,一个低佣金甚至零佣金的外卖点餐系统呼之欲出,类似于 kfc 等快餐品牌自身推出的在线点餐系统,不仅可以实现商家成本最大化,还能根据餐饮店自身特色打造出更为庞大的附加值,通过该平台将买卖双方利益最大化。
1.2设计意义
时至今日,人们的生活日常需求都可以通过一部手机来完成,手机点餐系统逐渐取代了传统点菜系统的地位,整合了线下的菜谱,通过线上的点单系统来完成交易,对餐饮业来说是一个重要的突破。现如今的手机屏幕高清且通透,丰富了人们的视觉感受,通常对电子点餐界面都会进行精心的人性化界面设计,客户可以在满足自己点单需要的同时能够简洁明了的看到商家的菜谱,具有一定的观赏性。因此此系统的开发的具有很大推广价值与应用前景,让餐饮服务业的经营更上一层楼,放心使用此系统。电子点餐系统对于餐饮服务业商家来说,一方面减少了传统菜单需要制作、设计、加工的费用,还取代了传统菜谱的具有使用期限与周期容易出现脏乱差的状况。电子点餐系统,是一个完全可以取代传统菜谱的系统,规避了传统菜单的缺点,拥有传统点单所不具有的优点。
1.3系统部署现状
现如今,市场上的大多数餐馆的点菜系统不单单只是依据基础的点菜功能而存在,更是作为餐馆信息管理处理的重要部分,为了让客户以及管理者在操作中更加方便快捷,增加了很多的附加功能,但是个人在点菜时,较难快速的完成点菜。但是通过手机 WAP 点菜系统,可以简单快速的点菜,且没有繁杂的门槛限制,这不管是对于商家还是客户来说都
很方便快捷。且另一方面,电子菜单相比传统菜单来说具备了很多优点,首先是电子菜单不存在弄脏和更换的担忧,不会像传统点菜一样财务核算慢而且容易杂乱,在人手不够的时候,传统点菜方式还会出现漏点或者漏结算等情况,但是通过电子菜单点菜系统,可以保证完整记录客户点单情况、结算情况以及出单情况,从而节省客户与商家各自的时间, 提高效率。
第 2 章 WAP 版手机外卖订餐系统分析
2.1整体可行性分析
1、应用可行性
当今时代科技迅猛发展,智能手机、平板电脑等智能设备普及率高,对于身在当下的现代人来说,操作这些智能设备以及适应各种智能系统简直易如反掌。一方面,该外卖点餐系统界面清晰明了、简洁大方,紧跟系统设计潮流,基本可以说成是傻瓜式操作,用户极易上手;另一方面,工作人员只需在售后人员简单指导下即可熟练掌握系统的使用方法, 同时经过短期培训就能立刻解决系统里所出现的常见问题。因此,本手机版外卖订餐系统在应用方面也完全可行。
2、技术可行性
现如今科技不断层层高升,在系统硬件配置上,我们不需要有过多的担忧,而硬件更新速度、容量等方面也发生了质的飞跃,其价格也在呈现直线下降的趋势,从中看出硬件平台完全可以胜任该系统开发的重任。
同时本系统使用java 语言作为开发语言,运用了较为前沿且符合时代潮流的开发技术, 如通过 管理操纵 MySQL 数据库,通过 ssm 框架搭建起整个系统核心,也便于后续人员在此基础上进行二次开发,采用了 B/S 结构网络结构模式大大降低了维护成本,提高了管理平台的工作效率。这些开发技术在当前社会环境中运用最广,学习起来也较为轻松, 同时这些技术也经受住了时间的考验,由此可见,本系统在技术方面可行。
3、经济可行性
随着时代更替,计算机等智能设备也相较于之前其售价也变成了断崖式下跌,同时计算机性能却得到了质的提升,可谓物美价廉,实现了性价比最大化,售后质量也有所保障, 而商家对此的投入成本可以做到远小于通过该系统所取得的利益。同时该系统还可极大的提高餐馆工作效率,省去铺面空间,节省大量的时间成本和人力劳动,实现隐藏效益最大化。最后,该系统所需要的开发工具也完全免费,在网络上都可免费下载使用,无需二次付费,由此可见,该系统在经济方面可行。
2.2系统模块分析
2.2.1系统信息需求分析
通过对当地餐馆进行实地调研,了解到餐馆在平常情况下的运营模式、工作流程以及业务情况后,对收集的数据和资料进行分析思考,得出在该系统的开发过程中,不应该仅仅只模仿餐馆流程,还应该考虑到实时的用户需求,深入思考客户到底想要什么样的服务和品质保障,才能留住客人,建立反馈机制,实现效益最大化、长远化。为此,根据用户信息需求建立了图 2.1 的运营流程图:
2.2.2系统功能需求分析
(1)菜品管理
在餐馆传统运营模式中,厨师长往往担任对菜品挑选、决定该季度的主菜和推出的特色菜为哪些菜品、根据销量适时调整以及是否售空该撤换掉哪些菜品的职责。而在该功能模块中,菜品管理模拟了该过程,可对菜品信息进行修改,并决定菜品是否下市等,是整个后台管理系统的核心板块,其流程图如下图所示:
(2)顾客管理
顾客即上帝,我们都知道老顾客回流对于餐馆运营的重要性,通过老顾客还能为餐馆带来新的顾客量而实现引流,扩大顾客群体。因此顾客管理在该系统中也是必不可少的一部分,该模块主要实现了记录老顾客的相关信息,如联系方式、住址信息等,方便餐馆统计顾客需求、推销自己的菜品、加强店家与顾客联系并在此基础上不断完善自身服务机制以及菜品选择、拓广销售群体。
(3)订单销售管理
该模块详尽地记录了各式菜品的订单销售情况,如每一份菜品分别被下单的次数、顾客下单的时间、以及相关顾客信息等,可实现对销售订单作出整体统计和销售情况概览的功能,为商家改进菜品提供依据。
(4)系统信息管理
该模块提供了菜单管理、角色管理、修改密码三个子模块,分别实现了增加删除角色, 为角色分配权限,其中最高权限获得者为超级管理员,可对角色名称、地址、昵称等相关信息进行修改,最后还可修改登录密码。系统信息管理为该系统建立了安全性保障。
(5)后台用户信息管理
该模块用于添加新用户,以及对用户相关信息进行检测,最后通过系统日志记录下该过程,满足了后台数据库的数据安全性需求,具体流程图如下图所示:
(6)系统日志
系统日志可以帮助使用者在最短的时间内排除故障,发现问题,找到根源,同时可以监视系统中发生的所有事件,是系统异常分析的重要依据,可为系统的安全运行保驾护航。
2.2.3系统性能需求分析
(1)系统界面设计合理,易于使用,整体简单明了,页面布局也更为科学化人性化、且可在多种浏览器环境下运行,独立性强,对系统结构影响比较小。
(2)餐馆业务信息管理高效化,餐馆工作人员可实时查询订单销售情况,并可以此为依据快速作出相应调整,及时避免或减少损失,增大收益。
(3)系统维护升级等相关操作易上手,便于生成新功能和实现第三方平台的对接, 另外该系统也可方便管理人员扩充信息,具有较高的灵活性、可扩展性。
(4)该系统不是一个封闭系统,可通过接口与其他系统或平台相连,具有与外界进行信息处理和信息交换的能力,开发性强。
(5)另一方面,该订餐系统可在餐饮行业自助点单中发挥重要作用,同时也能对餐
馆酒店等生产经营水平起到促进作用,从而帮助商家用户提高自己的经营办事效率,减少失误,对未来发展的适应性强。
第 3 章 WAP 版手机外卖订餐系统设计
3.1开发应用工具简述
3.1. 简述
是一种基于原型并将支持类型内置、可广泛应用于服务器的直译型客户端脚本语言。同时也是一种轻量型且面向 Web 的编程语言,可嵌入到 HTML 网页当中去,提供页面与用户的交互途径:、DOM、BOM,是当前网页设计和Web 项目所需熟练掌握的基本工具之一。
最初的目的是为了赋予网页生命,在页面加载时会自动执行,和 JAVA 有着较为明显的区别。其安全性也较高,对外不提供内层或 CPU 底层访问。 在浏览器运行时也会被限制能力,如 没有直接访问操作系统的功能,这样做的目的是为了防止用户的私人数据被泄露,从而造成安全隐患,通过这种方式保障用户信息安全。
3.1. 简述
是目前应用较广的、可以简化 开发、兼容性和可扩展性强的 框架,使用起来类似于 CSS 层叠样式表的选择器,可以快速操作 HTML 元素,完成网页的相关设计,以便快速开发网站,可以实现用更少的资源做更多的事情。
同时 也为Web 项目提供了可跨浏览器的抽象层,通常用${}实现字符串的替换, 将 HTML 和 CSS 分离开来,使得代码更加清晰明了。同时 运行代码时不一定要等到整改页面加载完成时才开始执行,而是在 DOM 树构造完成时就开始执行代码,大大改善了其代码性能,使得开发者可以高效工作。
3.1. 简述
MySQL 是响应速度极快、能储存大量数据并根据用户请求快速返回搜索结果的关联式数据库,运用 C 语言和C++编写,可移植性强,多种操作系统如 Linux、 都可使用该数据库对数据进行操作。其也能适应多种编程语言,支持多线程,尤其凭借开源的优势,受到广大中小型企业的青睐。
MySQL 数据库一般采用客户-服务器体系结构,具有高效、灵活的特点,在收发客户请求时,先使用监听器处理请求,根据逻辑判断客户想访问哪些数据库的内容,再把相关信息回传给客户,主要在数据库服务器上运行。而另一个客户端程序则负责连接数据库服务器,向其发送命令,传递服务器想要什么具体操作的相关信息。
3.1.4SSM 简述
SSM 框架由 ++ 三部分构成,其实笼统地来讲,也可说成由
、 两个免费开源框架整合而成, 与 其实是包含关系,
中包含了 ,。它的出现是为降低应用开发的复杂性,使得越来越多的人可以成为Web 项目的程序开发者。下面将一一对这三者进行详细介绍:
:
相当于一个容器,用来装 (java 对象),我们可以形象地将其比喻为一个对象工厂,按要求标记的类都会被提前放入 这个容器中来,不用需要开发者再显式地 new 一个实例对象,使用时直接声明变量即可网上外卖订餐系统,由此也可便于管理这些对象。
在项目开发过程中,其难点往往来源于需要调试大量配置项的配置文件。框架开发中的一个弊端就是如果程序报错而实际问题出现在配置文件中,则系统没办法去定位该错误,从而使得开发人员很难找到错误的根源点在哪,进而纠正不了错误导致程序报废。而 在创建对象时往往就是依据配置文件,因此我们在编写配置文件时应格外小心,尽量避免在配置文件里过于频繁地修改自己编写的代码。
:
从字面来看便知其由三部分组成:M 即 Model,为业务处理模型,听从 控制器的调派,进行处理相关业务和数据的操作。C 即 控制器,用于接受客户请求,判断下一步该进行什么逻辑操作,然后传给视图分发器作出回应,将页面传回前端,响应用户请求。
:
从内部封装了 JDBC 数据库连接,很大程度上简化了开发人员需要手动设置参数等操作,利用反射实现了 java 类和 sql 语句之间的相互转换,基于 实例实现,其中 配置文件可被抽象为 接口。
SSM 框架的工作流程可简要概括为:用户发起一个请求, 服务器根据URL 判断,找到相应的控制器,控制器接收分析参数,判断是否从数据库获取数据,通过 容器找到访问对象,告诉对象需要什么数据,再传回视图分发器,回传图像给用户响应其请求。下图简要展示了该过程:
3.1. 简述
是基于 Java、支持定制化 SQL、且具有持久化特性的对象关系映射框架,可将接口和 JAVA 的普通对象映射到数据库中。因其内部封装了 JDBC,省去了开发者需要额外花费时间精力关注数据库驱动、数据库连接等麻烦,应用起来十分灵活。编写代码的程序员也只需关注 SQL 语句本身,其内部已经实现了将 SQL 语句与 JAVA 方法相关联, 因此可直接编写 SQL 原生代码。
的功能架构分为三层,可为用户提供对数据库的增、删、改、查、设置数据库专有特性的各种功能。在 API 接口层,开发者可通过本地接口 API 来对数据进行频繁的调动网上外卖订餐系统,进而完成相关数据处理操作。在数据处理层, 可根据开发人员的调用请求完成相关数据库操作,如对 SQL 语句进行查找解析等。在基础支撑层, 会将各个最基础且具有共用性特征的组件全部抽取出来,为数据处理层提供最基本的功能支撑。另外, 可对不规范或遗留下来的数据库进行操作,相当灵活,也支持编写重用动态的 SQL 语句,对数据库进行统一管理。
与 JDBC 相比的优势在于相关代码得到了简化,且兼容性、集成性强、更易维护并进行单元测试。一个硬币有其两面性, 同样如此。当关联表变多时,开发人员编写 SQL 语句的工作量就会随之上升,且移植性较差,一次编码只能应用于当前编写的数据库,不能再用于别的数据库,其缓存机制也有待加强。
3.1.6C3P0 简述
C3P0 是一个免费开源且拓展了传统的 JDBC 数据库的连接池,也可称为一个库,可绑定数据源和 JNDI。而传统模式中建立数据库连接时,每次连接都会去验证用户请求,因此将会消耗我们大量的时间和资源。
但 C3P0 连接池与此不同,当用户发送一个需要访问数据库的请求时,数据池会将该连接作为一个对象储存在内存块里,然后从连接池中取出一个已经建立完毕的连接对象进行连接,不会有新连接的出现。而在用户使用完毕后,将该对象又放回连接池中以便于循环利用,从而实现连接复用。以此大大提高了应用程序的健壮性。
3.1. 简述
是一种基于 框架以第三方组织开发的 UI 插件集合体,可帮助开发人员方便快捷且迅速地实现 UI 界面的美工,其功能强大,在中小型公司开发项目中广受欢迎。
与此同时, 也简单易懂,比较好上手。具体体现在开发者不需要对 css 层叠样式表有过多的了解或精通此项技术,只需会编程一些简单的 HTML 超文本标签,就可以轻轻松松定义用户界面。用 写出来的代码哪怕是编程小白在进行简单学习后也能完全读懂,省掉了开发者编写复杂繁琐的 JS 代码过程,却能达到相同的效果,可以看出 简直是个可支持 HTML 网页运行的完美框架。最后我们还能充分利用 为我们节省出来的时间成本去完善系统的相关功能,由此可见, 功能强大,不容小窥。
3.2模块设计
根据对系统模块进行相应的分析,可将该系统各个功能模块之间的输入、输出连接关系
表示为下图图 3.2 模块设计图
3.3系统数据库设计概述
3.3.1概念结构设计
要实现对手机外卖订餐的概念结构设计,还需以先前进行的系统分析作为依据,将所得到的应用需求抽象为概念模型,用来表达信息世界的结构,直观反映出该系统所需要满足的功能性需求,客观地展现出各个实体之间的对应关系和内在联系,满足对用户的处理要求。
在概念模型中最为典型的是 E-R 模型,通过 E-R 图可表达不同实体型之间的联系,该系统 E-R 图主要包含顾客、后台信息管理员、菜品三个实体,且都为多对多关系。顾客的主要属性有顾客姓名、送餐地址、联系电话;菜品的主要属性有菜品单价、菜品数量等; 后台信息管理员的主要属性有角色权限、角色昵称、实名信息等;其 E-R 图如下图所示::
3.3.2数据表设计与应用
图 3.3 系统整体 E-R 图
在数据表的设计中,为方便数据库检索和访问数据信息,应减少数据库数据冗余和重复,保持数据信息的一致性,并将结构设计和操作设计相结合,逐步对数据模型进行优化, 便于之后对数据的维护、更新、完善。
在以上的前提下,可以有如下的逻辑结构: 1)数据库名称:db-book-
2)该数据库设置了下列的表格属性:
表 3-1 user 表(存储后台管理员信息)字段名称 数据类型 主键 是否空 说明
id int Y N 主键,用户 ID
N N 用户登录名
N N 用户登录密码
int N N 用户类别,是否为管理员
photo N N 用户头像
sex int N N 性别
age int N N 年龄
N N 住址
。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。
论文下载地址:请点击》》》》
免责声明:部分文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性,如本站文章和转稿涉及版权等问题,请作者在及时联系本站,我们会尽快为您处理。