版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
共SECTION页第20页绪论项目背景随着智能终端设备的普及,传统各行各业无一不在寻求新的机遇、好的发展,这给作为人们生活必不可缺的餐饮行业也带来了全新的挑战,俗话说,民以食为天,餐饮行业中的发展潜力十分巨大,如果能在餐饮行业中进行移动嵌入,必将带来餐饮行业的巨大发展。传统餐饮服务业中,酒店通过迎宾服务员接待,点餐服务员服务服务顾客进行点餐,待客户选取菜品之后,点餐服务员与厨师交涉,厨师根据客户所选菜单做菜,待菜品做好之后通知服务员上菜,再到用户用餐完毕之后结账离开的运营模式,有大量的时间浪费在了客服点菜的浏览时间,服务员在等待客户点菜的时间,厨师与服务员进行菜品交涉时的时间,这在人力资源和时间上都有较大的浪费,在追求时尚高效的今天,这种运营模式已远远不能满足顾客和酒店的需求。怎样把握好时代的契机,运用好信息时代产物,在餐饮行业稳居主导地位,与时俱进,成为大小酒店面临的新的急需解决的难题。现在已经有很多餐饮部门意识到了这一点,已经开始使用一些基于特殊需求的定制嵌入式系统进行点菜,如味千拉面,同济大学的‘梦飨’饭店等等,这些嵌入式设备的出现就是为了解决以上的问题,但是因为其定制化较高,不能很好的兼容需求不同的酒店,而且对一些小酒店来说定制自己的嵌入式点菜设备成本过高[1]。他们更希望有一套能够较为通用的点菜系统,并且随着现在智能移动终端的普及,带来了移动终端的无限可能,因为其网络访问的容易性和便携性,人们越来越离不开智能移动设备[2]。Android是由Google公司推出的一套智能开源手机平台,它由操作系统、中间件、用户友好界面和应用软件组成[3],作为当前众多智能手机系统平台的后起之秀,因为其性能优越,系统开放,性价比高等原因,以极其迅猛的速度占有了智能移动终端的大部分市场。而且现在很多餐厅都使用了无线Wifi接入点,已经给点菜平台提供了一个很好的基础[4]。开发一个基于Android平台的点菜系统,集Android系统普及与基于Android设备价格适宜等优势于一身,既能适应各种规模的酒店的点餐系统,又能达到顾客操作便易,提升客户的体验,提高酒店的效率。与传统点菜相比,基于Android的点菜系统能够实现菜单高效变化,无纸化菜谱,更好的用户体验与更高效的服务。编写目的该文档是基于Android的点菜系统的软件说明书,内容主要包含该软件的主要结构,开发和运行环境,软件的开发和维护说明,软件的使用方法。本文档的预期读者为软件开发者、软件使用用户、系统维护工程师。软件概述软件名称本软件名为‘基于Android的点菜系统’。软件功能本软件客户端基于Android系统,服务端基于PHP,提供一套快速的酒店点菜系统方案,能够实现快速绑定酒店,添加、修改菜品,用户可以进行菜谱浏览,添加菜品到菜单,提交菜单给酒店等功能。软件开发者软件编写者:刘健地址:同济大学嘉定校区20号楼522室联系方式:lj6631184@126.com应用领域与使用对象主要应用领域是餐饮业,软件分为两个子系统,一个是基于Android的点菜客户端,一个是基于Web的酒店管理端,基于Web的酒店管理端的目标用户是酒店的管理者和厨师,使用这个系统能够快速的查看当前的酒店订单以及每个订单的详细信息。基于Android的点菜客户端的目标用户是酒店的服务员或者就餐的客户,使用该系统能够了解酒店的菜单的详细情况,快速的查看菜品的各种信息,并且能够迅速下单,支持备注,自选时间等功能。系统结构系统共包含三个部分,Android客户端,Web管理端,服务器端,这也是点菜系统的主要三大构成模块[5],系统架构如图2.1所示,数据以及主要管理逻辑代码都运行或存储在服务器上,Web管理端通过访问服务器进行菜单的管理和维护,Android客户端通过网络访问服务器,与服务器进行数据交换和传输,从而进行菜谱浏览,下订单等操作。整个系统的结构如下图所示:图2.1软件系统架构图功能列表软件共有两个部分,一是基于Web的酒店管理端,基于Web的酒店管理端是基于B/S模式的,通过浏览器访问服务器,酒店管理端能够实现的功能有用户注册功能,用户登录功能,通过邮箱找回密码,酒店注册功能,每个用户可以注册绑定一个酒店,当注册酒店成功后,用户可以进行酒店信息的维护,添加酒店出售的菜品,添加菜品成功后,可以进入菜单管理进行菜品的停售,信息修改,删除等操作。订单管理功能能够让管理者看到当前所有的订单,能够进行订单的管理。酒店管理端的功能列表如图2.2所示。图2.2酒店管理端功能列表软件的另一个部分是基于Android的客户端,考虑到用户的使用的地理位置,软件设计了两种使用模式,一种模式称为酒店模式,这种模式的设想用户是酒店的服务员或者是身在酒店进行点菜的用户,处于这种模式下,可以进行酒店用户登录,通过绑定用户直接进入酒店,适用于固定在桌上的点菜智能设备或者用于给服务员配备的智能设备。进入酒店后可以浏览酒店在售的菜肴,点击菜肴可以进行详细的菜肴信息的查看,加入菜单后提交菜单即可将菜单提交到酒店的管理端。酒店模式下的客户端功能列表如下图所示:图2.3酒店模式客户端功能列表不同于酒店模式,另一种模式更适用于普通客户,在开放的今天,给用户更多的自主权可能更适合时代的潮流。于是软件提供另一种称为用户模式的客户端模式,在该模式下,用户能够进行登录,注册,选择在服务器上的酒店,选择酒店可以查看酒店的详细信息,进入酒店可进行酒店菜品的浏览,可以选择用户心仪的菜品,下订单时还可以选择就餐时间,即方便用户,也便于酒店进行调整和安排。用户模式下的功能列表如图2.4所示:图2.4用户模式客户端功能列表软件开发与维护开发硬件环境此软件开发对硬件需求不是很高,理论上只要符合支持Android开发和PHP开发的硬件最低要求即可进行本软件的开发与维护。笔者的开发硬件环境如下所示:机器:MacBookAir13.3处理器:IntelCorei51.4GHZ内存:8GB1600MHZDDR3图形卡:IntelHDGraphics50001536MB。开发软件环境此软件由两个部分构成,客户端部分使用Android开发,酒店管理部分使用PHP开发,如果要进行该软件的开发与维护,需要搭建好Android开发环境和PHP代码的运行环境,因为还涉及数据库操作,还需要搭建MySQL服务等。服务器的最低要求为PHP5.1.6,MySQL4.1。笔者的软件环境如下:操作系统:MacOSX10.9.5Android开发IDE;Eclipse4.3keplerPHP开发IDE:PHPStormADT版本:23.0.3PHP版本:5.6.1MySQL版本:5.5.38服务器:Apache2.2.29开发语言:Java,PHP,JavaScript,SQL,CSS,HTML软件结构软件包含两个主要部分,一个部分是酒店管理端,使用PHP、JavaScript、HTML和CSS进行开发,PHP上的开发使用广泛被使用的CodeIgniter2.2.0(以下简称CI)框架,这个框架基于MVC设计模式,使用Model,Controller,View三层进行设计,使程序能够快速开发。
图3.1酒店管理端代码结构酒店管理端的工程结构如上所示,除了CI框架自带的Application,System,user_guider文件夹,笔者添加了assets文件夹用于放置控制显示的CSS和JS代码以及一些前端的样式图片。File文件夹中是本软件对应的Android应用文件,客户端可以通过访问服务器从而下载该应用。Image文件夹中是用来存储所有菜品所对应的图片文件,通常的企业级的应用是不会把图片直接放在服务器中的,通常会自己做一个图片服务器或者使用其他专门的图片服务商提供的服务进行图片存储,在笔者之前实习的互联网公司就是这么做的,不过考虑这个软件是个人开发的,而且时间有限,暂时就把图片存储在自己的服务器上。图3.2Application文件夹结构Web端的开发使用了CI框架,Application是该框架的核心部分,其中controllers,models,views三个文件夹最为重要,从名字就可以看出来,这三个文件夹中分别放置MVC的Controller,Model,View,CI框架中,Controller的作用就是控制器,通常与用户交互,对用户操作进行动作响应的逻辑代码都放在这里,在本次的开发中,笔者只使用了一个Controller,名为Order,所有的操作逻辑代码都可以在这个Controller里面找到,同时,这个Controller设计成了既服务于Web端,又服务于Android端,通过Post参数FromAndroid的标识位来进行不同的函数返回。CI框架中Model层主要设计用来进行数据库访问,将数据库访问以及数据库操作编写在这个层,能够很好的实现分离设计。不过在这次的软件开发中,数据库操作的设计不是很好,没有给数据库操作进行一个好的封装,有时间的话会重构一版。Views就较为简单,顾名思义,View层主要是用来做数据显示的,Controller调用Model获取数据,将数据稍作加工传给View层进行显示,View层包含common和pages两个文件夹,common文件夹包含页面的主体框架,pages中的每个文件对应不同的方法,从而显示不同的页面。图3.3Views文件夹结构Web端的开发主要就是这些,开发主要设计上述的三个文件夹的内容,以及一些服务器信息如数据库端口,密码等配置信息,如果需要开发或维护该软件,可以进入上述文件夹进行查看和修改。另一个部分是点菜客户端,基于Android系统,使用Java语言进行开发,整个工程的结构如下图所示,是一个标准的Android应用结构,其中src文件夹中是整个应用的运行代码,res文件夹中是包含整个应用的资源文件,libs等文件夹是应用的运行库。图3.4Android工程结构Android的开发主要是应用层的开发,系统为应用提供了丰富的API供开发者使用[6],应用也是使用了MVC的设计模式,使用MVC实现了很好的前后端分离,在res文件夹中,anim放置应用中使用到的动画文件,drawable-hdpi中放置的是应用使用到的图片素材,在drawable-mdpi放置的是应用中使用到的资源描述问题,其内容类似于网页的CSS文件,主要是描述一些样式,values是应用中使用到的一些值,主要使用了String和color,最为重要的就是layout文件夹了,应用中的界面基本都是基于这个文件夹中布局文件,其内容对应了应用的所有界面,布局文件使用XML进行描述,通过布局文件控制应用的界面显示,将程序员从繁琐的界面调整中解放出来,能够更高效的进行应用开发,也方便程序员去搭建出更漂亮的界面,不过这次的软件开发只有笔者一人,所有的前端到后端都是自己一个人设计的,所以界面上不是很漂亮,但是功能自认为还是较为齐全的。图3.5res文件结构Android应用的逻辑代码都放置在src文件夹下,本软件的src文件夹结构如下图所示:图3.6src文件结构共包含5个包,采用通用的包命名方法,将所有的Activity放置在myactivity包中,使用到的adapter放置在myadapter中,自定义的类放在myclass中,自定义控件放置在myview中,网络连接封装类放在myserver包中,应用使用常量和一些全局量放在myconstant包中。其中Activity是Android开发中的重点,主要的显示逻辑和用户交互都是在Activity中完成的,这个应用中自定义了两个父类Activity的,分别用于全屏和窗口化显示,通过继承这两个基本类来实现一些共同的菜单或界面效果。myactivity的包结构如下图所示:图3.7myactivity包结构应用对网络访问进行了封装,将所有网络访问的部分都封装在了一个文件中,通过传入Post参数和回调接口函数,实现网络操作的异步访问,这是Android系统的要求,为了保障用户体验,网络访问必须使用非主线程操作。网络使用Android系统提供的URLConnection,通过发送Post请求,获取返回的Json数据,对Json数据进行序列化操作,转为对象然后通过Adapter进行数据适配,Activity进行数据显示,最终实现整个应用的运行。然后myclass包中主要就是一些自定义的类,如User,Food等,开发中使用驼峰命名法,对成员变量都设置了get和set函数,具体的实现见代码,这里不再过多描述。myview包中包含两个自定义的View,一个是支持下拉刷新的ListView控件,一个是预览图片的View,然后就是比较重要的myadapter包了,Android应用开发中,大量使用ListView这个高级控件,用于显示具有共性的信息流,在本应用中,也使用到的很多的ListView,adapter就是负责填充ListView的信息的,adapter的设计中都使用了ViewHolder的辅助内部类,用于优化ListView的效率。整个软件的结构如上所述,如果需要开发或维护该软件,可以参考上面的程序结构,并遵循统一的命名规范。软件使用详述运行硬件环境该软件运行需要两部分硬件,一个是服务端,一个是客户端,服务端需要硬件为至少能够运行Apache与PHP的硬件系统即可,客户端必须是能够运行Android系统的智能终端设备。运行软件环境运行的软件环境需要服务器的最低要求为PHP5.1.6,MySQL4.1,酒店管理端使用浏览器即可使用,android客户端需要至少为android3.2的操作系统支持。界面说明 Web管理界面Web管理界面的目标用户是酒店的管理者,通过该界面,管理者可以进行用户注册,登录,酒店的菜单管理,酒店信息管理,订单管理等功能。界面上都有较为友好的提示和操作图标的显示,网页的界面都是基于如图4.1的界面的框架,通过点击左侧不同的标签页进入不同的功能页面,从而实现Web端的管理功能。图4.1酒店管理端界面Android客户端界面通过点击网页上的客户端下载按钮,会生成下载客户端的二维码,在同一局域网下使用Android手机扫描该二维码即可下载对应的Android应用。扫码下载界面如下图所示:图4.2扫码下载界面应用下载安装完毕之后,在手机桌面上点击如图4.3的图标即可进入点菜客户端。图4.3客户端应用图标初次进入应用会要求设置服务器的IP地址和端口,因为此次的服务端程序运行在本地的服务器上,没有固定的IP地址,所以需要进行设置一下,设置并测试连接成功后可以进入模式选择界面,选择不同的模式会进入不同的功能区。图4.4从左往右依次是设置服务器信息,选择模式,以及用户登录的三个界面。 图4.4App设置登录界面登录之后可以进入酒店列表,选择酒店之后可以查看酒店详情,点击进入酒店的按钮之后,进入酒店的菜单列表,菜单列表支持下拉刷新功能,酒店停售的菜品会在客户端实时看到,图4.5从左往右依次是酒店列表,酒店详情,菜品列表界面。图4.5App浏览界面菜品浏览还支持搜索功能,点击右上角的搜索按钮即可进入搜索页面,支持关键字搜索,在菜品浏览界面点击一个菜品可以进入菜品的详细信息,可以查看菜品的简介以及用户评论。菜品详情页面的图片点击之后可以进入图片浏览界面,支持放大拉伸浏览。图4.6从左往右依次是搜索菜单,菜品详情,菜品图片界面。图4.6搜索浏览界面点菜时只需点击菜谱页面的加入菜单按钮即可将菜品加入订单,点菜完毕按下菜单键可以弹出提交订单的按钮,弹出提交订单按钮可以查看已点的菜单,订单总额,每份菜的数量等,用户模式下可以选择就餐时间,酒店模式下可以设置订单桌号,点击提交订单即可将订单提交至酒店管理后台。至此整个点菜流程完毕。图4.7从左往右依次是订单提交,提交成功界面。图4.7App订单界面总结本软件开发时间较短,涉及内容较多,开发者仅有笔者一人,服务器的搭建,后端代码、UI设计等全部由笔者一人完成,幸好之前在互联网公司实习过两个月,有一些PHP的开发经验,在Web管理端实现了较为快速的开发,最终功能的完成,笔者还是比较欣喜的,但是在开发的过程中还是遇到了很多问题,作为一个手机应用,界面的美化以及良好的用户体验是留住客户的关键,但是苦于没有UI设计人员,笔者的美感又是低的可怜,界面上只能设计现在的样子,在服务器的开发上也有一些问题,数据库的操作上没有进行一个好的封装,对数据库的操作较为繁琐,除开这些问题,更多的是收获,实现了一个人从前到后的项目开发,使用到了PHP的开发框架,同时更为深入的学习了关于Android开发的知识,熟悉了JSON,XML等数据格式,坚定了笔者今后从事Android开发的信心。参考文献[1]童治军.基于Android平台的C/S结构点餐系统技术研究[J].萍乡高等专科学校学报.2012.29(6):47-51[2]FrankSposaro,GaryTyson.iFall:AnAndroidApplicationforFallMonitoringandResponse[C].//IEEEEngineeringinMedicineandBiologySocietyConferenceProceedings.31thAnnualInternationalConferenceoftheIEEEEMBS,2009:6119-6122[3]王楠,宋飞,周华春.一种基于Android平台的即时通信方案[J].计算机应用于软件.2013,30(4):107-109[4]王为学,谷刚.基于Android和Wifi的智能点菜终端设计与实现[J].电脑开发与应用,2011,(12):40-42.[5]黎家宏,蒋雯.数字化点餐系统.科技信息.2013(9):155-156[6]耿东久,索岳,陈渝,文军,吕勇强.基于Android手机的远程访问和控制系统[J].计算机应用.2011,31(2):559-561毕业实习任务书(适用于工科类、理科类专业)课题名称基于Android的点菜系统学院(系)专业学生姓名学号
一、毕业实习的课题背景随着智能终端设备的普及,传统各行各业无一不在寻求新的机遇、好的发展,这给作为人们生活必不可缺的餐饮行业也带来了全新的挑战。传统通过迎宾服务员接待,点餐服务员顾客点餐,点餐服务员与厨师交涉,厨师根据菜单做菜,服务员上菜,再到用户结账离开的运营模式,不仅在人力资源和时间上都有较大的浪费,在追求时尚高效的今天,这种运营模式已远远不能满足顾客的需求。怎样把握好时代的契机,运用好信息时代产物,在餐饮行业稳居主导地位,与时俱进,成为大小酒店面临的新的急需解决的难题。基于Android平台的点菜系统,集Android系统普及与基于Android设备价格适宜等优势于一身,旨在开发出基于Android平台适合于各种规模的酒店的点餐系统,以达到顾客操作便易,酒店高效的目的。二、毕业实习的技术参数(研究内容)基于Android平台的系统开发,能够熟练运用eclipse,并安装androidsdk及相关插件,对程序进行调试完善,是本实习的研究内容
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年语言文字能力题库及答案
- 2025年医药护理类考试题及答案
- 2025年医药市场管理题库及答案
- 内科常考护理题库及答案
- 五上科学试卷简答及答案
- 2025~2026学年北京市丰台区新北赋学校高三上学期期中练习数学试卷
- 跆拳道馆接待话术
- 甲壳类繁育工安全技术规程
- 公司硅烷偶联剂生产工职业健康技术规程
- 废塑料加工处理工班组管理强化考核试卷含答案
- 十巧手操(新版配乐)课件
- 小学英语词汇教学有效策略讲座
- 年产10万吨乙酸乙酯毕业设计说明书
- 锁骨骨折课件
- 结构加固改造之结构构件加固
- cognos培训教程与函数ibm102report studio讲解
- YY/T 0031-2008输液、输血用硅橡胶管路及弹性件
- GB/T 15843.1-2017信息技术安全技术实体鉴别第1部分:总则
- 2023年苏教版四年级数学下册全册教学反思
- 北京某航天公司经营管理诊断报告课件
- 祥符东单元控规调整
评论
0/150
提交评论