基于Android平台的“去哪儿旅行记录与分享”毕业设计论文.docx_第1页
基于Android平台的“去哪儿旅行记录与分享”毕业设计论文.docx_第2页
基于Android平台的“去哪儿旅行记录与分享”毕业设计论文.docx_第3页
基于Android平台的“去哪儿旅行记录与分享”毕业设计论文.docx_第4页
基于Android平台的“去哪儿旅行记录与分享”毕业设计论文.docx_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

天津市大学软件学院毕业设计基于android系统的“去哪儿”旅行记录与分享app姓 名常栓红专 业 软件工程学 号1350410909学 籍 校天津理工大学学校指导教师王占刚 (副教授)企业指导教师朱凤山 (高级工程师)摘要在如今社会中,旅游作为一个新的服务业态成型,随后各种在线旅游网站相继出现,如去哪儿、驴妈妈、途牛旅行网等,在线旅游业迅猛发展起来。在如今这个智能手机系统群雄纷争的时候,2008年google推出了一款名为android的开源智能手机操作系统,它采用linux内核,开放手机联盟(oha)成员可以任意使用和修改sdk包,系统的开源性使其具有良好的拓展性。这款软件包括了操作系统、用户界面和应用程序,即智能手机工作所需要的全部软件。android的最大特点是其开放性体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验,包括丰富的图形组件、多媒体支持功能以及强大的浏览器。因此,对于软件从业人员来说,android平台具有无限的吸引力。 本文就在分析讨论android手机软件开发技术原理的基础上,开发出能为用户提供更好的基于android平台的“去哪儿”旅行记录与分享软件。关键词:旅行记录;记录分享;安卓平台;旅游abstractin todays society, tourism as a new service formats molding, followed by a variety of online travel sites have emerged, such as where to go, donkey mother, the way cattle travel network, the rapid development of online travel industry.in the system of intelligent mobile phone warlords dispute when in 2008, google launched a product called the android open source smart mobile phone operating system, which uses linux kernel, open mobile phone alliance (oha) members can be free to use and modify the sdk package, open source system which has good expansion. the software includes the operating system, user interface and applications that need intelligent mobile phone, all the software. its open architecture is the biggest characteristic of android, not only has a very good development, debugging environment, but also supports a variety of scalable user experience, including rich graphical components, multimedia support and powerful browser. therefore, for software professionals, android platform has unlimited attraction.in this paper, based on analyzing and discussing the android mobile phone software development technology on android platform, developed the where to go to travel records and sharing based on the software to provide users with better.key words: travel record, share, android platform, tourism目 录第一章引言11.1课题背景11.2国内外发展现状1第二章相关技术概述32.1主要开发内容32.2主要开发思路和方法32.3软件开发技术42.4体系结构42.4.1操作系统层(os)52.4.2各种库(libraries)和android 运行环境52.4.3应用程序框架(application framework)6第三章项目可行性及需求分析73.1可行性分析73.1.1经济可行性73.1.2技术可行性73.1.3操作可行性73.2软件需求分析73.2.1对软件的需求73.2.2基本功能83.3本软件的预期成果8第四章系统实现94.1软件的主要设计框图94.2软件数据模型设计94.3代码介绍104.3.1背景图片选择实现104.3.2开机动画114.3.3写记录核心代码124.3.4记录加密核心代码14第五章软件测试185.1测试的重要性及目的185.2测试流程18结束语21参考文献22附录文献翻译23i 英文原文23ii 中文译文24致谢25天津市大学软件学院软件工程专业2013届本科生毕业设计24第一章 引言1.1 课题背景美丽的旅游胜地吸引了无数的游客前往观赏,但是有好多游客不能对旅游具体情况做准备。为了让游客能更清晰的认识到“去哪儿”旅行记录与分享app,游玩舒畅,开发“去哪儿”旅行记录与分享app的旅游网站很有必要。“去哪儿”旅行记录与分享app旅游(mis)是一个具有交互功能的旅游记录软件,本软件的开发主要包括后台数据库的建立和维护以及前台程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于app设计则要求应用程序功能完备,易使用等特点。该软件符合安卓app开发的要求,本人也对界面设计、安卓本体数据库设计等进行了较深入的学习和应用,主要完成了旅程的记录、记录的查看、记录的搜索以及记录分享功能。1.2 国内外发展现状电子商务可以将信息流、商流、资金流进行有效的管理,提高产业链的工作效率并降低成本。旅游业是最适合开展电子商务的行业之一,通过先进的网络技术手段提高企业内部、企业之间、企业与消费者之间的信息交流与沟通,改进旅游业的业务工作流程,所以电子商务对旅游业的发展具有深远的意义。发达国家和地区在这方面已经取得了巨大的成效。欧美发达国家,旅游电子商务已经成为整个电子商务领域最大、最突出的部分。资料显示,全球旅游电子商务连续5年以35%以上的速度增长,一度占到全球电子商务总额20%以上。与国外相比,我国旅游电子商务起步稍晚,在1996年才开始出现专业的旅游网站其后旅游电子商务快速发展,到2000年进入第一个高潮期,但在2001年由于受世界旅游业整体负增长形势的影响,中国的旅游业在这一年经历了一定的困境,增长速度有所下降;2002年中国旅游业又开始整体回升,在2005年年底又掀起了新的一轮旅游电子商务热,自此又进入了一个新的“加速发展期”。目前,我国具有一定旅游资讯能力的网站已有五千多家。其中专业旅游网站300余家,主要包括地区性网站、专业网站和门户网站的旅游频道3大类。但是,旅游电子商务还处在初级阶段,与发达国家相比还存在较大差距。(1)国内登录过旅游网站的网民占网民总数的比例较小,而进行过网上旅游预订的网民比例更小。(2)我国旅游业应用电子商务软件的总体发展水平很低,信息服务能力有限,网络营销仅仅是一种时尚,消费者的培育,旅游电子商务软、硬件环境的成熟和政府政策法规的建设等等都是急待解决的问题。作为一个拥有丰富旅游资源的大国,我国有望借助先进的信息化手段帮助旅游业实现迅猛增长,迎来更大的飞跃。第二章相关技术概述2.1主要开发内容“去哪儿”旅行记录与分享app是一种具有集记录和分享功能一体的实用软件,是在安卓实体机上通过安卓自带数据库储存信息。因此这必将是广泛应用的网络应用软件,本文会让开发人员更好的开发以及管理本项目,让使用本app的用户大致了解软件的功能和流程。(1) 深入了解企业、社会在“去哪儿”旅行记录与分享app旅游的业务流程以及一些基本的需求和功能,在此基础上绘制用例图,完成基于android软件的“去哪儿”旅行记录与分享app的设计与开发的需求说明书;(2) 借鉴一些书籍,学习和研究开发该软件的相关技术,如jsp项目开发、mysql数据库、web编程等等;(3) 具体实现基于android软件的“去哪儿”旅行记录与分享app的设计与开发,包括分析和使用数据库,软件的详细设计。经过以上分析,本人决定将该软件分为以下几个模块:主要功能:主要包括旅行记录、查看记录、搜索记录、记录加密以及记录分享。其他设计:背景切换、用户反馈、提醒设置、帮助。2.2主要开发思路和方法一个功能完整的基于android软件的“去哪儿”旅行记录与分享app的设计与开发,本app未设置用户注册和登陆,进入软件后,可以对软件进行加密上锁,安全性相对提高。软件内日期自动更新,当日天气可进行选择,每日可无限制增加旅游记录,提供查找功能,根据关键字搜索可快速查找到相关记录,对此记录可以通过第三方分享到qq、新浪微博等社交网站。硬件环境:本软件运行的硬件环境如下:android:1g以上;内存:512m以上;软件开发方法:根据用户的实际情况和需要,最终决定采用在android 下使用jsp+sql开发,利用spring框架,采用b/s结构。2.3软件开发技术以android为开发平台,android以java为编程语言,使接口到功能,都有层出不穷的变化,其中activity等同于j2me的midlet,一个 activity 类(class)负责创建视窗(window),一个活动中的activity就是在 foreground(前景)模式,背景运行的程序叫做service。两者之间通过由serviceconnection和aidl连结,达到复数程序同时运行的效果。如果运行中的 activity 全部画面被其他 activity 取代时,该 activity 便被停止(stopped),甚至被系统清除(kill)。view等同于j2me的displayable,程序人员可以通过 view 类与“xml layout”档将ui放置在视窗上,android 1.5的版本可以利用 view 打造出所谓的 widgets,其实widget只是view的一种,所以可以使用xml来设计layout,htc的android hero手机即含有大量的widget。至于viewgroup 是各种layout 的基础抽象类(abstract class),viewgroup之内还可以有viewgroup。view的构造函数不需要再activity中调用,但是displayable的是必须的,在activity 中,要通过findviewbyid()来从xml 中取得view,android的view类的显示很大程度上是从xml中读取的。view 与事件(event)息息相关,两者之间通过listener 结合在一起,每一个view都可以注册一个event listener,例如:当view要处理用户触碰(touch)的事件时,就要向android框架注册view.onclicklistener。另外还有image等同于j2me的bitmap。(1)一次编写,到处运行。在这一点上java比php更出色,在不同的软件平台上运行,代码不用做任何更改。(2)软件的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行软件不是和运行。相比asp/php的局限性是显而易见的。 (3)强大的可伸缩性。从只有一个小的jar文件就可以运行servlet/jsp,到由多台服务器进行集群和负载均衡,到多台application进行事务处理,消息处理,一台服务器到无数台服务器,java显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。这一点与asp很像,java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。2.4体系结构2.4.1操作系统层(os)android使用linux2.6作为操作系统,linux2.6是一种标准的技术,linux也是一个开放的操作系统。android对操作系统的使用包括核心和驱动程序两部分,android的linux核心为标准的linux2.6内核,android更多的是需要一些与移动设备相关的驱动程序。主要的驱动如下所示: 显示驱动(display driver):常用基于linux的帧缓冲(frame buffer)驱动。flash内存驱动(flash memory driver)。照相机驱动(camera driver):常用基于linux的v4l(video for )驱动。音频驱动(audio driver):常用基于alsa(advanced linux sound architecture,高级linux声音体系)驱动。wifi驱动(camera driver):基于ieee 802.11标准的驱动程序。键盘驱动(keyboard driver)。蓝牙驱动(bluetooth driver)。binder ipc驱动: android一个特殊的驱动程序,具有单独的设备节点,提供进程间通讯的功能。power management(能源管理)2.2.2 c/s模式与b/s模式的分析比较2.4.2各种库(libraries)和android 运行环境(runtime)本层次对应一般嵌入式系统,相当于中间件层次。android的本层次分成两个部分一个是各种库,另一个是android 运行环境。本层的内容大多是使用c+实现的。在其中,各种库包括:c库:c语言的标准库,这也是系统中一个最为底层的库,c库是通过linux的系统调用来实现。 多媒体框架(mediaframeword):这部分内容是android多媒体的核心部分,基于packetvideo(即pv)的opencore,从功能上本库一共分为两大部分,一个部分是音频、视频的回放(playback),另一部分是则是音视频的纪录(recorder)。sgl:2d图像引擎。ssl:即secure socket layer位于tcp/ip协议与各种应用层协议之间,为数据通讯提供安全支持。opengl es 1.0 :本部分提供了对3d的支持。界面管理工具(surface management):本部分提供了对管理显示子系统等功能。sqlite:一个通用的嵌入式数据库webkit:网络浏览器的核心freetype:位图和矢量字体的功能。android 的各种库一般是以系统中间件的形式提供的,它们均有的一个显著特点就是与移动设备的平台的应用密切相关。android 运行环境主要指的虚拟机技术dalvik。dalvik虚拟机和一般java虚拟机(java vm)不同,它执行的不是java标准的字节码(bytecode )而是dalvik可执行格式(.dex)中执行文件。在执行的过程中,每一个应用程序即一个进程(linux的一个process)。 二者最大的区别在于java vm是以基于栈的虚拟机(stack-based),而dalvik是基于寄存器的虚拟机(register-based)。显然,后者最大的好处在于可以根据硬件实现更大的优化,这更适合移动设备的特点。3.3软件可行性分析为了给软件开发者提供是否进行项目实施的参考依据,现分析项目的风险、项目需要的投资以及效益。2.4.3应用程序框架(application framework)android的应用程序框架为应用程序层的开发者提供apis,它实际上是一个应用程序的框架。由于上层的应用程序是以java构建的,因此本层次提供的首先包含了ui程序中所需要的各种控件:例如: views (视图组件)包括 lists(列表), grids(栅格), text boxes(文本框), buttons(按钮)等。甚至一个嵌入式的web浏览器。 一个andoid的应用程序可以利用应用程序框架中的以下几个部分: activity (活动) broadcast intent receiver (广播意图接收者) service (服务) content provider (内容提供者)第三章项目可行性及需求分析3.1可行性分析3.1.1经济可行性基于android软件的“去哪儿”旅行记录与分享app的设计与开发是一个小型的实用型软件, 在开发时需要软件开发人员花费一定的时间和精力,因此需要一定的资金。开发、运行和维护费用主要包括:购买和安装设备的费用:计算机硬件、软件、 机房、电源等; 但它给企业带来的利润是不可估量的,节省了许多人力,物力上的开支,使资产管理工作变繁为简,使其更加合理化、规范化。工作效率的提高就意为着整体水平的提高,是非常值得投资的。3.1.2技术可行性技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。本app管理软件用的是java开发语言,调试相对简单,当前的手机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前单机模式相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足软件的需求。3.1.3操作可行性软件是在jdk 环境下开发的,易于操作。而且软件还采用了可视化面向对象的工具开发,其窗口、界面简洁易懂,所以软件在操作上是可行的。3.2软件需求分析3.2.1对软件的需求 本类型的软件的种类很多,而每一个分类下又有很多子类。还应该提供用户管理,并对其设置权限管理。软件还应该做到对数据的快速查询。经实际调查,要求本软件具有以下功能:(1)界面设计美观大方,方便、快捷、操作灵活。(2)如果软件的使用对象较多,有备份功能防止数据丢失。(3)对记录要有一个类别管理。(4)提供对记录的天气、心情、记录操作。(5)方便信息的查询。(6)在相应的权限下,可方便的删除、添加、修改数据。3.2.2基本功能1. 写记录:可以新增旅游记录,输入地点,选择天气2. 记录查询:可以通过记录内容的关键字或者地点查询曾经写过的记录。3. 记录加密:可以通过图形或者数字加密,保证记录的安全性。4. 记录分享:通过分享功能,将自己旅行所见所想分享给朋友,一同分享旅行中的快乐。3.3本软件的预期成果设计和实现基于android软件的“去哪儿”旅行记录与分享app的设计与开发,使旅行记录简单化、快速化。从而达到提高记录效率、降低成本的目的,本软件应达到如下目标: (1) 灵活的人机交互界面,操作简单方便,界面简洁美观 ;(2) 可以通过菜单、工具栏等灵活操作;(3) 对客户和操作员的信息互通提供相应的管理功能:(4) 查询方便,无论是按地点、内容其中任一项都可以进行有效查询 ;(5) 软件可以加密(6) 软件运行稳定,安全可靠。第四章系统实现4.1软件的主要设计框图本软件的主要设计框图,如图3-1所示,主要描述了此软件应该具有的功能模块以及实现的功能模块。加密操作备份操作直接操作软件相关按钮图4-1软件框图4.2软件数据模型设计计算机信息软件以数据库为核心,在数据库管理软件的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。对于数据库应用开发人员来说,为使现实世界的信息流计算机化,并对计算机化的信息进行各种操作,就是如何利用数据库管理软件、软件软件和相关硬件软件,将用户的要求转化成有效的数据结构,并使数据库结构易于实现用户新的要求的过程。 确切的说,数据库设计是指对于一个给定的应用环境,提供一个确定最优数据模型与处理模式的逻辑设计,以及一个确定数据库存储结构与存取方法的物理设计,建立起既能反映现实世界信息和信息联系,满足用户数据要求和加工要求,又能被某个数据库管理软件所接受,同时能实现软件目标,并有效存取数据的数据库。4.3代码介绍4.3.1背景图片选择实现软件内置四种图片,可供选择成为背景图片。如图4-2图4-2 背景图片具体代码实现如下:/软件背景图片选择privatevoidsetbackground() / 得到当前布局linearlayout layout = (linearlayout) this.findviewbyid(r.id.about_layout);/ 得到id,此处id是在设置背景里面产生的,此处暂不解释int id = preferences.getint(id, 0);if (id = 0) / id=0说明是初始化时的背景/ 设置背景方法layout.setbackgroundresource(r.drawable.diary_view_bg); elseif (id = 1) / id=1说明用户选择了第一幅图片layout.setbackgroundresource(r.drawable.diary_view_bg); elseif (id = 2) / id=2说明用户选择了第二幅图片layout.setbackgroundresource(r.drawable.spring); elseif (id = 3) / id=3说明用户选择了第三幅图片layout.setbackgroundresource(r.drawable.summer); elseif (id = 4) / id=4说明用户选择了第四幅图片layout.setbackgroundresource(r.drawable.autumn); elseif (id = 5) / id=4说明用户选择了第四幅图片layout.setbackgroundresource(r.drawable.winter);4.3.2开机动画为了增强用户体验感,本软件新添开机欢迎界面,如图4-3图4-3 开机动画图片/软件加载animation leftoutanimation = animationutils.loadanimation(getapplicationcontext(), r.anim.translate_left);animation rightoutanimation = animationutils.loadanimation(getapplicationcontext(), r.anim.translate_right);/ 左布局向左移动leftlayout.setanimation(leftoutanimation);/ 右布局向右移动rightlayout.setanimation(rightoutanimation);/ 设置动画监听器leftoutanimation.setanimationlistener(newanimationlistener() overridepublicvoidonanimationstart(animation animation) / todo auto-generated method stuboverridepublicvoidonanimationrepeat(animation animation) / todo auto-generated method stub4.3.3写记录核心代码本软件使用单纯文本记录旅程,占用内存少,字数不限。图4-4 写记录publicclassaccessactivityextends activity private button access;privatesharedpreferencessp=null;suppresslint(newapi)overrideprotectedvoidoncreate(bundle savedinstancestate) / todo auto-generated method stubsuper.oncreate(savedinstancestate);requestwindowfeature(window.feature_no_title);setcontentview(r.layout.access);access = (button)this.findviewbyid(r.id.access);access.setonclicklistener(newonclicklistener() overridepublicvoidonclick(view v) / todo auto-generated method stubsp=getsharedpreferences(pass, context.mode_private);string passway=sp.getstring(passway, null);intent intent = null;if (passway!=null) if (passway.equals(graphicpass) intent =new intent(accessactivity.this,checkpassactivity.class);startactivity(intent);overridependingtransition(android.r.anim.fade_in, android.r.anim.fade_out);accessactivity.this.finish();else intent = new intent(accessactivity.this, mainactivity.class); startactivity(intent);overridependingtransition(android.r.anim.fade_in,android.r.anim.fade_out);accessactivity.this.finish(); else intent = new intent(accessactivity.this, mainactivity.class); startactivity(intent);overridependingtransition(android.r.anim.fade_in,android.r.anim.fade_out);accessactivity.this.finish(););4.4.4 记录加密核心代码“去哪儿”旅行记录与分享实现了软件加密功能,共有两种加密方式,图形加密和数字加密,只有正确输入密码才可以进入系统,查看旅行记录。图4-5 记录加密图片/记录加密实现privatevoiddrawcircle(canvas canvas, intleftx, inttopy, booleanpartofpattern) bitmap outercircle; bitmap innercircle;if (!partofpattern | (minstealthmode&mpatterndisplaymode != displaymode.wrong) / unselected circleoutercircle = mbitmapcircledefault;innercircle = mbitmapbtndefault; elseif (mpatterninprogress) / user is in middle of drawing a patternoutercircle = mbitmapcirclegreen;innercircle = mbitmapbtntouched; elseif (mpatterndisplaymode = displaymode.wrong) / the pattern is wrongoutercircle = mbitmapcirclered;innercircle = mbitmapbtndefault; elseif (mpatterndisplaymode = displaymode.correct |mpatterndisplaymode = displaymode.animate) / the pattern is correctoutercircle = mbitmapcirclegreen;innercircle = mbitmapbtndefault; else thrownewillegalstateexception(unknown display mode + mpatterndisplaymode); finalint width = mbitmapwidth;finalint height = mbitmapheight;finalfloatsquarewidth = msquarewidth;finalfloatsquareheight = msquareheight;intoffsetx = (int) (squarewidth - width) / 2f);intoffsety = (int) (squareheight - height) / 2f);/ allow circles to shrink if the view is too small to hold them.floatsx = math.min(msquarewidth / mbitmapwidth, 1.0f);floatsy = math.min(msquareheight / mbitmapheight, 1.0f);mcirclematrix.settranslate(leftx + offsetx, topy + offsety);mcirclematrix.pretranslate(mbitmapwidth/2, mbitmapheight/2);mcirclematrix.prescale(sx, sy);mcirclematrix.pretranslate(-mbitmapwidth/2, -mbitmapheight/2);canvas.drawbitmap(outercircle, mcirclematrix, mpaint);canvas.drawbitmap(innercircle, mcirclematrix, mpaint);第五章软件测试5.1测试的重要性及目的(1)测试的重要性:软件测试是保证软件质量的重要活动,它贯穿于整个软件开发生命周期,是软件项目实施的不可缺少的环节。软件测试的直接目的是发现软件中存在的缺陷,进而改正软件中的错误、弥补缺陷、完善功能,从而保证开发软件的质量、性能。 测试的目的:(2)测试的目的如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。软件测试是为了发现错误而执行程序的过程; 测试是为了证明程序有错,而不是证明程序无错误; 一个好的测试用例是在于它能发现至今未发现的错误;一个成功的测试是发现了至今未发现的错误的测试。5.2测试流程(1)单元测试集中在检查软件设计的最小单位模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。 下面是以用户管理模块为例的部分功能测试用例,如下图5-1所示:序号输入预期输出是否正常备注1点击“新增”按钮显示新增对话框,对话框中无数据是2点击“修改”按钮显示修改对话框,对话框中显示原始数据是3点击“删除”对话框弹出删除确认对话框是图5-1 功能测试用例(2)集成测试 集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。 在单元测试的基础上,需要将模块按照设计要求组装成为软件。这时需要考虑的问题是:把各个模块连接起来的时,穿越模块接口的数据是否会丢失;一个模块的功能是否会对另一个模块的功能产生不利的影响;各个子功能组合起来,能否达到预期要求的父功能;全局数据结构是否有问题;单个模块的误差累积起来,是否会放大,从而达到不能接受的程度。 在单元测试的同时可进行集成测试,发现并排除在模块连接中可能出现的问题,最终构成要求的软件软件。子软件的集成测试特别称为部件测试,它所做的工作是要找出集成后的子软件与软件需求规格说明之间的不一致。下面是会员管理模块的集成测试用例,如下图5-2所示:序号输入预期输出是否正常备注1在新增对话框中点击“新增”按钮成功提交新增信息,将数据录入数据库。新增记录显示在页面上是2在修改对话框中点击“修改”按钮成功修改,将数据录入数据库,并将更新后的记录更新到页面上是3在修改对话框中点击“修改”按钮成功修改,将数据录入数据库。更新后的记录更新到页面上是图5-2功能测试用例(3)确认测试 确认测试的目的是向未来的用户表明软件能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件软件,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。 (4)软件测试 软件开发完成以后,最终还要与软件中其他部分配套运行,进行软件测试。包括恢复测试、安全测试、强度测试和性能测试等。单独对软件的测试主要从以下几方面入手:1.功能测试:测试是否满足开发要求,是否提供设计所描述的功能,是否用户的需求都得到满足。功能测试是软件测试最常用和必须的测试,通常还会以正式的软件说明书为测试标准。2.强度测试及性能测试:测试软件能力最高实际限度,即软件在一些超负荷情况下功能实现的情况。3.安全测试:验证安装在软件内的保护机构确实能够对软件进行保护,使之不受各种非常的干扰。针对本软件主要是对权限软件的测试和对无效数据、错数据、和非法数据干扰的能力的测试。经过上述的测试过程对软件进行测试后,软件基本满足开发的要求,测试宣告结束。 结论在开发软件之前,本人首先对国内旅游事业以及各地旅游景点做了一些调查,进而了解了开发该软件的一些基本需求和功能,这对本人开发提供了很大的帮助。软件的开发是严格按照软件工程的思想,从需求分析、可行性分析、总体设计、最后到详细设计。软件的开发在开发的过程中由于对jsp技术不够熟练,遇到了很多难题,但是在老师的解答和一些资料中都得到了解答。软件初步完成后老师提了很多建议,比如软件中未涉及到的数据备份,还有报表的打印等,所以在后期做了一些改进,是软件更加完善。 软件工程是一门融管理科学、信息科学、软件科学、计算机科学与现代通信技术为一体的一门综合性边缘学科。在软件开发之前,必须了解该软件的特点、适用范围以及使用者需要一个什么样的软件,以此作为基础为开发软件准确定位,然后对使用者所需实现的功能进行分析总结,根据使用者的实际要求来给软件设计一个初步方案。软件的开发不仅是要实现对数据处理的及时与正确,而且要考虑软件是否具有控制功能,及时将数据反馈给操作者,以进行监测和协调,保证软件的正常运行;也要考虑是否具有预测功能,运用一定的数学方法利用历史的数据对未来进行预测的工作。 在程序设计过程中,遇到了很多技术上的问题,才意识到好多问题都是一知半解,比如数据库的链接,以前也实践过,理论上也掌握了,但是在开发的过程中还是遇到了问题,这让我充分的体会到了“实践出真知”这一点。在设计的过程中,我掌握了很多android的编程知识,并对这种成熟并广泛应用的技术进行了深入的学习。设计的过程也是一个再学习的过程,在遇到问题的时候我尽量自己想办法解决,这在很大程度上激发了我们的自学能力。通过这次的毕业设计,真正的实践过了学过的专业基本理论、专业知识和基本技术,对自己的别业设计也有了更深入的了解和体会,真正达到了学以致用。 参考文献1 android a programmers guide . jerome (j.f.) dimarzio doi:10.1036、 00715998862 林城. android 2.3 应用开发实战j . 机械工业出版社,2011:17-321. 3 韩超. android经典应用程序开发j . 人力资源出版社,2011:5-18. 4 (美)cay s. horstmann,gary cornell. java核心技术j. 机械工业出版社, 2008:15-17. 5 刘卫国,姚昱禹. android与j2me平台间即时通信的研究与实现j. 中南大 学 信息科学与工程学院. 2008年12期:118-120.6 刘平. android手机访问服务器的一种数据交互方法j . 西安财经学院 网络 与现在教育技术中心,2010-09:96-102. 7 刘玉平. java输入输出流及在网站开发中的应用探讨j. 郴州市科技局, 2009,(18):35-49. 8 赵亮,张维. 基于android技术的界面设计与研究d . 徐州:徐州建筑职业 技术学院, 2001. 9 陈璟,陈平华,李文亮. android内核分析j . 广东工业大学计算机学院 实践 与经验,2009:112-115. 10 刘卫国,姚昱禹. android的架构与应用开发研究j . 中南大学:信息科学 与工程学院 计算机系统应用 2008-11:110-112. 11 张海藩. 软件工程导论(第4版)j. 北京:清华大学出版社,2006:34-38. 12 邝孔无,王晓敏. 信息系统分析与设计(第三版)m. 清华大学出版社, 2006:23-26. 13 亢勇,陈自力,李鹏,路平. 面向对象的软件测试j. 测试技术学报, 1999,(02):15-23. 14 何玉洁. 数据库原理与应用教程m. 机械工业出版社,2005.12 15 ken arnold,james gosling,david holmes: java programming language m,posts & telecom press,2006:231附录文献翻译i 英文原文filtering the reference documentation by api levelreference documentation pages on the android developers site offer a filter by api level control in the top-right area of each page. you can use the control to show documentation only for parts of the api that are actually accessible to your application, based on the api level that it specifies in the android:mi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论