资源描述
_目 录中文英文摘要232.1 Android.34.3.1 结账说明及实现.235.3测试过程 . 2630_摘 要Android论文提出一种新型的电子点餐系统以弥补传统点餐方式的弊端。在目前的餐馆里,如果采用电子菜单,客人点餐时不需要服务员的陪伴,能实时地了解菜的特色,方便了顾客同时也减轻了餐馆的服务压力。随着WLAN技术的普及,一些规模较大的酒楼餐厅开始考虑利用这种最为先进、最具时尚潮流的网络技术来建设一套灵活、快捷的信息管理系统,以优化管理流程,使酒店的服务和管理得到实质性的提升,提高品牌形象和行业核心竞争力。本课题是基于android(安卓)的电子点餐菜单的设计,该电子点餐系统实现了一个电子点餐终端的部分功能,如:显示菜的分类、单价、口味、已点数量和总价等。本设计采用安装 JAVA JDK 、安装 Eclipse、安装 Android和配置android 开发环境。整个设计是Eclipse SDK软件下的JAVA语言进行编写和android软件终端的支持下实行的。本课题完成的电子点菜单功能齐全,使用方便,可大大提高服务质量,并节省许多人力物力。在餐饮业具有较好的推广价值。并且系统能够正常运行,各个界面交互性较好。在系统规划中先后用数据流程图,系统功能结构图分析了系统所需的各种数据,详细的展示了系统的各个功能模块,并给出了主要功能运用界面图。关键字:android电子菜单;java;eclipse;Abstract The paper presents a new electronic system to compensate for the disadvantages of the traditional order.In the restaurant, if the electronic menu, a customers order is not required when the attendant to accompany, real-time understanding of cuisine, convenient for customers at the same time also reduced the restaurant service pressure.With the popularity of WLAN technology, some of the larger restaurants began to consider the use of the most advanced, most fashion network technology to construct a set of flexible, efficient information management system, to optimize the management process, so that the hotel service and management has been substantially enhanced, improve brand image and the core competitiveness of industry.This topic is based on the Android electronic menu design, the electronic ordering system has an electronic order terminal part function, such as: the display dishes classification, unit price, taste, has been the point of quantity and price etc. This design uses the installation of JAVA JDK, Eclipse Android installation, installation and configuration of Android development environment. The whole design is the Eclipse SDK software under the JAVA language preparation and Android Software terminal support implementation. The subject of electronic menu function is complete, easy to use, can greatly improve the service quality, and save a lot of manpower and material resources. In the restaurant industry has better promotion value.And the system can be running, each interface and better interactivity. In the planning system has used the data flow graph, the system function structure diagram of the system for all kinds of data, detailed display of each function module of the system, and gives the main functions of use interface diagram.Key words: Android electronic menu; Java; eclipse;1 绪论1.1 课题背景在当今世界,以计算机技术、软件技术为核心的技术取得了迅速发展,不仅广泛渗透到社会、经济、军事、交通和通信等相关行业,而且深入到家电、娱乐、艺术、社会文化等领域。现代控制技术、多媒体技术与Internet的应用与普及,促使消费电子、计算机、通信一体化趋势步伐加快,嵌入式技术一度成为一个研究热点。嵌入式系统是以应用为中心,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。嵌入式操作系统将进入一个快速发展时期,嵌入式系统的应用将越来越多样化,当前是餐饮业由传统操作方式向信息化管理模式转换的时期,对信息化产品的需求量很大。根据其对产品要求小型化、低功耗、专用性等特点,可以断言嵌入式技术将在餐馆信息化的过程中发挥重要作用。1.2 课题意义Android电子点菜宝是一款融合传统菜谱与无线点菜信息化于一体的电子点菜设备,是餐饮业的一项重大革新。 适中的高清液晶触摸屏及人性化的界面设计,满足了顾客浏览的便利性与自助点菜的需求,产品无论从外 观、尺寸、重量都比同类产品更具优势,更接近与传统菜谱,是能够让餐厅真正放心作为菜谱使用的一款电子菜谱,实时的菜品更新功能及海量的信息展示功能,使餐厅节省了大量的菜谱、菜牌、手工单等各项高昂的、没完没了的制作费用,解决了传统菜谱短时间内就出现脏、乱、差的问题;电子菜谱,实现了餐厅无纸化的操作,提升了酒店的档次及形象。 1.3 点餐系统的现状市场上出现的点菜系统都是作为餐馆信息化管理系统的一部分出现的,它们除了实现基本的点菜功能外,为了便于客户及管理者的使用,还附加了许多其他功能,个人很难完成一个功能完善的点菜系统。而在电子点菜系统中,方便又快捷;另外,电子菜单与普通菜单相比有很多它的优点,比如普通菜单易脏,需要服务人员写,单据易丢,复杂的财务核算工作;而电子菜单方便快捷,点单灵活,不需要过多的服务人员等待客人点单,管理方便,点单取餐全自助,节省人力及时间。1.4 课题简介本课题的任务即是设计一种简单的电子点餐单终端,主要以eclipse SDK 为软件平台和android系统为硬件模拟平台,利用JAVA语言进行编程,要求实现的电子点菜单功能齐全,使用方便。系统大致分为前台界面操作与后台数据传输2大部分,前台包括登陆(工作人员)、开台、点菜、查询、结算等功能,后台主要负责利用线程队前台的数据进行传输与处理。1.5 本文主要内容围绕上面研究主题,本文共分为5章,其结构安排如下:第一章主要介绍系统的背景与意义,分析研究现状,并对课题进行介绍。第二章主要介绍开发使用的相关技术。如Eclipse、ADT、SQLite。第三章为系统分析与设计,对用户需求分析,可行性分析进行说明,详细的对系统进行用例分析,并对系统的数据库和结构的设计进行解释。第四章为系统实现,介绍系统界面并具体讲解,以及重要代码。第五章为系统的测试,说明测试的重要性,并提供测试用例。最后为结束语、致谢、参考文献。2相关技术2.1 (1) 平台特性 应用程序框架 支持组件的复用和更换 Dalvik虚拟机 专门为移动设备进行过优化集成的浏览器 基于开源的引擎优化的图形机制 自定义的2D图形库,基于OpenGL ES 1.0规范的3D图形实现(本项为硬件加 速器可选)SQLite轻量级的数据库,支持结构化数据的存储媒体支持 面向常见的音频、视频以及静态图形档案格式(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)GSM技术GSM:global system for mobile communications (依赖硬件支持)Bluetooth, EDGE, 3G, and WiFi (依赖硬件支持)Camera, GPS, compass, and accelerometer (依赖硬件支持)Rich development environment丰富的开发环境,包含一套硬件仿真器,一些用于程序调试、内存和性能剖析的工具,以及支持Eclipse集成开发环境的插件()。 (2) Android平台架构 Applications(应用)Android将预装一组核心应用程序,包括email客户端、短信服务、日历日程、地图服务、浏览器、联系人和其他应用程序。所有应用程序都是Java编程语言编写的。 Application Frameworks(应用框架)应用架构设计的初衷是:简化组件复用机制;任何应用都能发布自己的功能,这些功能又可以被任何其他应用使用(当然要受来自框架的强制安全规范的约束)。和复用机制相同,框架允许组件的更换。所有应用都是一组服务和系统,一般包含:一套丰富且可扩展的组件,含有lists, grids, text boxes, buttons,甚至嵌入的网络浏览器。 (内容提供器) 使一个应用可以访问另外一个应用的数据(如联系人),或者使一个应用内部可以共享自身数据。 (资源管理器),提供对非编码资源例如本地化字符串、图形和布局文件的访问通道。(通告管理器),使应用在状态栏显示自定义的警报通知。(行动管理器)负责管理应用的生命周期,提供通用导航回退支持。(3) Libraries(库) Android包含一套C/C+库,Android系统的各式组件都在使用。这些功能通过Android应用框架暴露给开发人员。下面列举一些核心库:System C library 衍生于BSD的标准C系统库实现,尤其支持嵌入式的基于Linux的设备。Media Libraries -媒体库基于PacketVideos OpenCORE;媒体库支持很多流行音频和视频格式、静态图形文件(包括MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG)的播放和录制。Surface Manager -管理范围:对子系统显示功能的访问,跨应用的无缝组合2D和2D图形层。LibWebCore -是流行的浏览器引擎,可以支持Android浏览器和嵌入应用的WEB视图组件。SGL -底层的2D图形引擎。3D libraries -基于OpenGL ES 1.0 API的实现;该类库使用硬件3D加速器或者内置的、高度优化的3D软件加速机制。FreeType -支持位图和矢量字体。SQLite -能干、轻量级的关系型数据库引擎,面向所有应用。(4)Android Runtime(Android运行时)Android的核心类库提供Java类库所提供的绝大部分功能。每个Android应用都运行在自己的进程上,享有Dalvik虚拟机为它分配的专有实例。为了支持多个虚拟机在同一个设备上高效运行,Dalvik被改写过。Dalvik虚拟机执行的是Dalvik格式的可执行文件(.dex)该格式经过优化,以降低内存耗用到最低。Java编译器将Java源文件转为class文件,class文件又被内置的dx工具转化为dex格式文件,这种文件在Dalvik虚拟机上注册并运行。在一些底层功能比如线程和低内存管理方面,Dalvik虚拟机是依赖Linux内核的。(5)Linux Kernel(Linux内核)Android依赖Linux 2.6版,提供核心系统服务:安全、内存管理、进程管理、网络组、驱动模型。内核部分还相当于一个介于硬件层和系统中其他软件组之间的一个抽象层次。2.2开发环境2.2.1 Eclipse Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。 2003年,Eclipse 3.0选择OSGi服务平台规范为运行时架构。 2007年6月,稳定版3.3发布。2008年6月发布代号为Ganymede的3.4版。2009年7月发布代号为GALILEO的3.5版。 Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。 Eclipse的主要构成是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT和PDE.JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。 Eclipse SDK(软件开发者包)是Eclipse Platform、JDT和PDE所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到Eclipse Platform中的工具。Eclipse SDK由Eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。Eclipse项目生产的软件以 GPL发布,第三方组件有各自自身的许可协议。2.2.2 Tomcat服务器Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。2.2.3 ADT2.5 Android开发工具(ADT)是一个为Eclipse IDE的,旨在为您提供一个强大的,集成的环境中构建Android应用程序的插件。 ADT的扩展Eclipse的功能,让您快速建立新的Android项目,创建一个应用程序的用户界面,添加基于Android框架API的组件,使用Android SDK工具调试你的应用程序,甚至出口签署(或符号)。APK文件为了分发您的应用程序。强烈建议在Eclipse开发与ADT是最快的方式上手。引导项目设置与提供,以及工具的集成,自定义的XML编辑器,调试输出窗格,ADT的为您提供了令人难以置信的提高,在开发Android应用程序。ADT是一个Eclipse IDE的插件。才可以安装或使用ADT,你必须有一个兼容版本的Eclipse开发计算机上安装。检查的Eclipse版本是兼容的Android SDK的文档。3系统分析和设计3.1运行环境选择操作系统:Windows XP操作系统数据库:SQL Server 2005网络通信协议:TCP/IP支持软件:Tomcat 6.x3.2需求分析3.2.1 性能需求分析该系统在性能功能上应达到如下需求:(1) 操作简单、界面友好: 完全控件式的页面布局,使得菜品,资讯,座位等信息的录入工作更简便,许多选项包括餐厅信息,桌位,包房信息等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见的类似网站的管理的各个方面:基本信息录入、浏览、删除、修改、搜索等方面都大体实现,顾客对菜品的预定及支付方式;(2) 即时可见:对客户预定餐饮信息的处理将立即在另一应用端及服务器的对应栏目显示出来,达到“即时点击、即时见效”的功能;(3) 系统运行应该快速、稳定、高效和可靠;(4) 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。3.2.2 可行性分析随着经济的快速发展,电子点餐系统已经出现在了许多城市的大酒店中。特别在大型餐饮集团使用已经成为了趋势。同时,随着全国人民的精神、物质和文化生活高度的提高,人们已经不在仅仅停留在吃饱的程度,不但要吃饱,还要吃好,而且对酒店服务也越来越挑刺,正因为如此电子点餐系统的出现,正好满足了大众的的这些需要,不仅让宾客享受到精美可口的美食,更让宾客感受到服务管理的贴心与完善。电子点餐业务在中国有着极大的发展空间以及良好的背景。随着酒店管理的完善,使用这种智能的电子点餐系统必然成为追究卓越的餐饮公司的最爱,也更能够体现信息技术发展的迅速。综合以上几点分析,此次毕业设计决定基于Android平台开发电子点餐系统。Android平台提供了巨大的自由空间,再运用JAVA面向对象语言,使系统功能更加强大。点餐系统可以提高服务员的服务效率并且降低出错的几率。在中高档的餐厅里使用可以省去极其繁琐的中间步骤。3.3 总体设计原则为了保证系统的质量,必须遵守共同的设计原则。1)系统性系统是作为统一的整体存在的。因此,在系统设计中,要从整个系统的角度考虑以下因素:系统的代码要统一,设计规范要标准,传递语言要尽可能一致,对系统的数据采集要做到数出一处、全局共享。2)可靠性一个成功的系统必须具有较高的可靠性,如安全保密性、检错及纠错能力、抗病毒能力等。可靠性既是系统设计的考核指标,也是系统设计时必须注意的一项原则。3)经济性在满足系统需求的条件下,尽可能减少系统的开销。系统设计尽量避免不必要的复杂化,各模块应当尽量简洁,以便缩短处理流程,减少处理费用。4)灵活性为保持系统的长久生命力,要求系统具有很强的环境适应性。为此,系统应具有较好的开放性和结构可变性。在系统设计中,尽量采用模块化结构,提高各模块的独立性,尽量减少模块间的数据耦合,使各个子系统间的数据依赖减至最低程度。这样,既便于模块的修改,又便于系统适应环境变化的能力。3.4 系统划分整个系统划分为若干个子系统,子系统再分子系统(或模块),层层划分,然后再自上而下地逐步设计。对于子系统的划分还包含着个人长期积累的工作经验、个人的习惯、对问题的不同理解等。因此,在系统初步设计的基础上,应进一步认真地对系统划分进行符合客观情况的调查。3.4.1 系统划分的原则在实际过程中,系统的划分还要根据用户的要求、地理位置的分布、设备的配置情况等重新划分。系统划分的一般原则是:1)子系统要具有相对独立性。子系统划分必须使得子系统内部功能、信息等各方面的凝聚性较好。在实际中我们都希望每个子系统或模块相对独立,尽量减少各种不必要的数据调用和控制联系。并将联系比较密切、功能近似的模块相对集中,这样会为以后的搜索、查询、调试、调用等提供方便。2)子系统之间的数据依赖性要尽量小。子系统之间的联系要尽量少,接口要简单、名了。一个内部联系强的子系统对外部的联系必然相对减少,所以应将联系较多的都划入子系统内部。3)子系统划分的结果应使数据冗余较少。4)子系统的设置应考虑今后管理发展的需要。子系统的实现不但能够更准确、更合理地完成现存系统的业务,而且还可以有助于更科学的决策和管理。5)子系统的划分应便于系统分析阶段的实现。系统的开发是一项较大的工程,它的实现一般都要分期、分步进行。所以,子系统的划分应该考虑到这种要求,适应这种分期分步的实施。3.4.2 程序总体设计程序总体设计是程序管理组的工作,由系统设计人员和程序设计人员共同完成。它的任务是确定程序结构,进行程序划分,分配程序编制业务,提出程序设计约定书,力求程序设计标准化,最后要编写程序设计说明书和程序设计说明书所附的文档资料。3.5系统用例分析整个系统将被划分为多个相对独立的子系统,子系统的划分将会在下面的篇幅介绍。3.5.1 用户登录的用例显示了用户身份验证的用例,如图3.1所示。图3.1 用户登录的用例图3.5.2 菜品信息管理的用例显示了所有菜品信息管理的用例:菜品查看,菜品添加,菜品修改,菜品删除,如图3.3所示:图3.2 菜品信息管理的用例3.5.3 员工信息管理的用例显示了员工信息管理的用例:浏览员工信息,添加员工信息,修改员工信息,删除员工信息,如图3.3所示:图3.3 员工信息管理的用例3.5.4 广告信息管理的用例显示了广告信息管理的用例:广告信息发布,查看广告信息,删除广告信息,如图3.4所示:图3.4 广告信息管理的用例3.5.5 点餐管理的用例显示了点餐管理的用例:查询餐桌状态,开台,点餐,修改开台,结算。如图3.5所示:图3.5 点餐管理的用例3.5.6 餐厅状态管理的用例显示了餐厅状态管理的用例:餐桌状态,员工状态,后厨状态,如图3.6所示:图3.6 餐厅状态管理的用例3.5.7 餐桌信息管理的用例显示了短消息管理的用例:开台员工信息,所点菜品信息,已上菜品信息,账单信息,员工服务评价。如图3.7所示:图3.7餐桌信息管理用例3.7 系统结构设计综合上述分析,本设计是为了综合运用嵌入式数据库、网络通信及嵌入式图形界面。系统采用C/S结构,实现简单的基于无线的点菜系统。将嵌入式开发板ARM2410S作为服务器置于厨房,存储菜品并显示点菜情况;以android模拟手机作为客户端,显示菜品信息和房间占用信息,服务员根据顾客的需求在客户端上选择房间并为顾客点菜,顾客用完餐后服务员在客户端更新房间占用情况。系统结构如图3-1所示:图形界面QT库数据库SQLite服务器客户端菜品占用信息点菜信息图形界面QT库数据库SQLite图3-1 电子点菜系统结构4 系统实现4.1登陆电子点餐系统当客户想在android智能电子点餐系统上点餐时,只需在进入android智能电子点餐系统的界面点击欢迎进入android智能电子点餐系统界面设计有一个Button按钮名为:点击此处进入和一个textView名为:欢迎进入android智能电子点餐系统。界面设计如图4-1所示:图4-1 进入ANDRIOD点餐系统图4.2点餐功能4.2.1点餐功能说明及实现(1)单独建立一个Activity用来控制用户进入系统,利用Intent语句跳转到下一个主菜单的分类界面。实现进入点餐系统的主要代码: public class dl extends Activity Button press1; public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.dl); press1 = (Button) findViewById(R.id.button1); press1.setOnClickListener(newButton.OnClickListener() public void onClick(View v) Intent intent = new Intent(); intent.setClass(dl.this, CaidanActivity.class); startActivity(intent);); (2)建立一个Activity用来控制整个点餐系统的主菜单界面,利用Intent1、Intent2、Intent3、Intent4、Intent5、Intent6语句分别跳转到特色菜类、热菜类、凉菜类、汤类、酒类、套餐类等的界面。实现点餐系统主菜单界面中各按钮的主要代码: public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); press1 = (Button) findViewById(R.id.button2); press1.setOnClickListener(new Button.OnClickListener() public void onClick(View v) Intent intent = new Intent();intent.setClass(CaidanActivity.this, tsc.class);startActivity(intent); . .press7 = (Button) findViewById(R.id.button13);press7.setOnClickListener(new Button.OnClickListener() public void onClick(View v) Intent intent6 = new Intent();intent6.setClass(CaidanActivity.this, dl.class);startActivity(intent6);); (2) 特色菜类的功能实现:建立一个Activity用来控制特色菜的界面,利用一个Intent语句分别跳转到特色菜类的界面。其他类的界面和此类的代码相类似。实现特色菜类界面的主要代码:public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.dgdu); press2 = (Button) findViewById(R.id.button3); press2.setOnClickListener(new Button.OnClickListener() public void onClick(View v) Intent intent = new Intent();intent.setClass(tsc.this, CaidanActivity.class);startActivity(intent); p1=(EditText) findViewById(R.id.editText1); . p5=(EditText) findViewById(R.id.editText5); p=(EditText) findViewById(R.id.editText); press1=(Button)findViewById(R.id.button2); checkbox1 = (CheckBox)findViewById(R.id.checkBox1); . checkbox5 = (CheckBox)findViewById(R.id.checkBox5); checkbox1.setOnCheckedChangeListener(new OnCheckedChangeListener() private boolean select; public void onCheckedChanged(CompoundButton arg0, boolean arg1) Toast.makeText(tsc.this,arg1?菜已点:取消了点菜 , Toast.LENGTH_LONG).show(); select = arg1; ); . . checkbox5.setOnCheckedChangeListener(new OnCheckedChangeListener() private boolean select4; public void onCheckedChanged(CompoundButton arg0, boolean arg1) Toast.makeText(tsc.this,arg1?菜已点:取消了点菜 , Toast.LENGTH_LONG).show(); select4 = arg1; ); 及实现电子点餐系统的结账处理即快又方便,不需要人工计算及会计处理,系统会自动化地处理好。实现点餐数量及价格统计的主要代码: press1.setOnClickListener(new Button.OnClickListener() public void onClick(View v) if(checkbox1.isChecked() a=Integer.parseInt(p1.getText().toString()*45; p.setText(a+); if(checkbox2.isChecked() b=Integer.parseInt(p2.getText().toString()*26; w=a+b; p.setText(w+); if(checkbox3.isChecked() c=Integer.parseInt(p3.getText().toString()*15; w=a+b+c; p.setText(w+); if(checkbox4.isChecked() d=Integer.parseInt(p4.getText().toString()*20; w=a+b+c+d; p.setText(w+); if(checkbox5.isChecked() e=Integer.parseInt(p5.getText().toString()*30; w=a+b+c+d+e; p.setText(w+); ); 5 系统测试和发布电子点餐系统测试5.1测试目的 将已经集成好的电子点餐系统,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起, 在实际运行(使用)环境下,对电子点餐系统进行一系列的组装测试和确认测试。评估一个完整电子点餐系统是否满足该电子点餐系统需求规格说明书的要求;电子点餐系统测试不仅关注其的功能,也包括性能、安全等非功能的测试。目的是验证电子点餐系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。电子点餐系统测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于电子点餐系统整体需求说明书的测试,应覆盖系统所有联合的部件。对象不仅仅包括需测试的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。 来确保电子点餐系统测试的活动是按计划进行的; 验证该产品是否与电子点餐系统需求用例不相符合或与之矛盾;建立完善的电子点餐系统测试缺陷记录跟踪库;确保电子点餐系统测试活动及其结果及时通知相关小组和个人; 电子点餐系统测试就是针对非功能特性展开的,就是验证软件产品符合质量特性的要求,从而满足用户和软件企业自身的非功能需求。所以电子点餐系统测试分为负载测试、性能测试、容量测试、安全测试、兼容性测试、可靠性测试。性能是用来衡量电子点餐系统占用计算机系统资源和计算机系统响应、表现的状态。如果电子点餐系统用完了所有可用的计算机系统资源,那么电子点餐系统性能就会明显地出现下降,甚至死机。容量是电子点餐系统接受、容纳或吸收的能力,也可以指某项功能的做大承受能力。可靠性是在规定的时间和条件下,电子点餐系统所能维持其正常的功能的操作、性能水平的程度。安全性是电子点餐系统和数据的安全程度,包括功能适用范围、数据存取权限等受保护和受控制的能力。兼容性是电子点餐系统从一个计算机系统或环境移植到另一个系统环境的难易度,或者是一个系统和外部条件共同工作的难易度。电子点餐系统与质量需求的关系示意图如图5-1所示: 图5-1 电子点餐系统与质量需求的关系示意图 5.3测试过程电子点餐系统测试过程包括:电子点餐系统测试计划、设计电子点餐系统测试用例、实现测试用例、电子点餐系统预测试设计和执行、搭建电子点餐系统测试环境、执行测试、结束报告、测试效率和电子点餐系统评估。(1) 电子点餐系统测试计划包括:测试方法、测试范围、测试交付件、测试过程准则、工作任务分布、测试进度、测试资源、测试用例结构及其用例、测试结论约定。(2) 设计电子点餐系统测试用例:系统测试是不需要了解系统内部机理,站在用户角度对系统进行的测试。设计电子点餐系统测试用例应考虑因素:验证功能正确的测试用例、想办法让功能失效的测试用例、与非功能属性相关的测试用例、系统测试使用的测试数据最好是从实际的客户应用环境中提取出的。(3) 系统测试环境的主要元素:执行系统测试的软硬件环境、待测系统、系统测试用例。(4) 执行系统测试:如图5-2所示:图5-2 执行系统测试图结束语从毕业设计的下达时间到完成毕业设计的这段时间,我整整用了三个多月的时间来完成本次的毕业设计。本次我的毕业设计论文课题是:安卓电子菜单点菜系统。是基于用Eclipse的java语言的编辑器和andriod模拟器结合开发出来的一种点菜系统软件。目前的传统点餐方式菜单是一张菜单纸张,久而久之菜单纸张就变成一张又旧又脏的菜单纸张,而新型的电子点餐系统恰恰就弥补传统点餐方式的弊端,不仅弥补了传统点餐方式的弊端,页提供了方便又快捷的点餐方式。本毕业设计在eclipse SDK 的编程环境下设计九个按钮分别命名为:android电子点餐系统、特色菜、热菜、凉菜、汤类、酒类、套餐、呼叫服务、结账等。虽然在设计当中编写程序量有点大,但是我从网上查了很多资料,因此、编写程序的问题就解决了。最大的问题还是在设计界面的切换,界面的切换既麻烦又繁琐,如果逻辑思维转换不过来,界面的切换就完成不了的,因此、我在界面切换上花费了很大的精力在上面菜完成的。不过在这件事情上还是蛮自豪的。电子点餐系统的开发思想就是要提供高效点菜、菜单管理方便、超强展示菜单、提高效率、准确无误结账、海量信息更丰富、菜品分类轻松点、点菜更有乐趣。经过这次的毕业设计过程中,让我对知识有了一定的认识,尤其是andriod的开发知识,让我懂得了更多,并且提升了更多。虽然在开发过程中仍有一些欠缺和考虑不周全的地方,且在取消点菜的过程中存在一点问题,但大致上电子点餐系统还是可行的,而且在我今后的学习和工作将产生重大的意义。致谢在金松河老师悉心指导下,我的毕业设计圆满完成了。大学四年学习时光已经接近尾声,在此我想对我的母校,我的父母、亲人们,我的老师和同学们表达我由衷的谢意。感谢我的家人对我大学四年学习的默默支持;感谢我的母校郑州轻工业学院深造的机会,让我能继续学习和提高;感谢郑州轻工业的老师和同学们四年来的关心和鼓励。老师们课堂上的激情洋溢,课堂下的谆谆教诲;同学们在学习中的认真热情,生活上的热心主动,所有这些都让我的四年充满了感动在电子点餐系统的开发过程中,我得到了指导老师金老师的细心指导。老师与我们一起研讨开发项目,为我们提供开发实例,帮助我们进行调研和分析,耐心地指导我们进行开发和解决问题。他严密的逻辑思维以及严谨的治学态度都给予了我极大的鼓励与帮助,在他的帮助下我不断进步自我提高。在此过程中,对于我遇到的所有问题和困难,老师都给予了细心的解答和真诚的帮助,在此我表示衷心的感谢。此外,我们的毕业设计课题得以很好的完成,这和郑州轻工业学院为我们提供的良好的学习和工作环境,以及设计过程给予我支持和帮助的计算机系各位老师是分不开的,特此向他们表示衷心的感谢!在此,我向所有帮助过我的老师、同学和朋友们表示真挚的感谢以及美好的祝福。祝愿大家在今后的日子里,百尺竿头,更进一步!参考文献1 谭浩强.Java语言程序设计(第三版)M.北京:清华大学出版社,2008.2 张孝祥.Java就业培训教程M.北京:清华大学出版社,20033 史斌星,史佳.Java基础编程贯通教程M.北京:清华大学出版社,2003.4 马海军,杨继萍.Java 2 实用教程M.北京:清华大学出版社,2004.5 余志龙,陈小凤,郑名杰.Android SDK开发范例大全M.北京:人民邮电出版社,2009.6 高焕堂.Android 应用框架原理与程式设计36(第三版)M.北京:清华大学出版社,2007. 7 Smego.Android应用程序设计基础,2009.8 E2ECloud.深入浅出Android程序设计OL.北京:人民邮电出版社,2009.9 Smego.Android A Programmers GuideOL,2008.10 盖索林.Android开发入门指南M.北京:人民邮电出版社,2009.11 杨丰盛.Android 应用开发揭秘M.西安:机械工业出版社,2010.12 张利国,龚海平,王植萌.Android移动开发入门与进阶M.北京:人民邮电出版社,2009.
展开阅读全文