基于android卡卢琳电影购票系统设计和实现计算机专业_第1页
基于android卡卢琳电影购票系统设计和实现计算机专业_第2页
基于android卡卢琳电影购票系统设计和实现计算机专业_第3页
基于android卡卢琳电影购票系统设计和实现计算机专业_第4页
基于android卡卢琳电影购票系统设计和实现计算机专业_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、中文摘要 在互联网技术迅速发展的形式下,人们的生活节奏逐步信息化。移动终端的Android系统正在悄无声息的改变人们的生活方式,更多的人选择足不出户地在手机上自助购买电影票。本文基于Android平台,结合移动终端和影院,对在线电影购票系统进行了研究。本文首先介绍了在线电影购票的研究背景及现状,论述了本课题的研究意义,进行了系统需求分析,总体设计,详细功能设计与系统测试等。该系统在订票客户端实现了用户注册、用户登录、用户个人中心、电影详情浏览、影院场次选择、座位选择、支付购票、电影评价等功能。在实现功能的过程中,通过自定义View优化了选座界面,利用JAVADB数据库设计服务器端。本次开发的系

2、统界面简单大方,操作便捷,高可用性。关键词 电影购票系统,移动终端,Android,自助外文摘要Title Caroline Movie Ticketing System Based on Android AbstractIn the form of the rapid development of Internet technology, the frequency of modern people is constantly informatization. The mobile terminal's Android system is quietly changing peopl

3、e's lifestyles, and more people choose to self-order movie tickets on the phone without leaving the home. This article is based on the Android platform, combined with mobile terminals and theaters, on the online movie ticketing system.This article first introduces the research background and sta

4、tus of online movie ticket purchase, discusses the research significance of the project, and analyzes the system requirements, overall design, specific functional requirements design and system testing. The system already has some features such as user registration, user login, user personal center,

5、 movie details browsing, cinema screening selection, seat selection, payment ticket purchase, and movie evaluation in the ticketing client. In the process of implementing the function, the selection interface is optimized through the custom view, and the server side is designed using the JAVADB data

6、base. The design of system interface style is very simple and beautiful, with convenient operation and high availability.Keywords Movie ticketing system, mobile terminal, Android, self-service目录1 引言11.1 课题的研究背景11.2 课题的研究目的及意义11.3 课题的研究现状22 系统分析32.1 可行性分析32.2 功能需求分析42.3 性能需求分析93 系统总体设计113.1 系统环境113.2

7、 系统整体框架113.3 系统功能概述123.4 系统静态建模133.5 数据库概念设计154 详细设计164.1 动态建模164.2 数据库设计195 系统部分实现及测试215.1 测试目的215.2 测试内容21结 论27致 谢28参考文献291 引言1.1 课题的研究背景国内外经济的飞速发展,在不断拉动科技领域的全面发展,人们的生活品质在不断提升,移动互联网技术与人们的生活紧密联系在了一起。人们不再简单地局限于物质需求的满足,更多的人开始追求精神上的需求。可以说,电影是文化与艺术相结合而生的高品质产物,正在不断地融入进人们的日常生活之中,越来越多的影迷倾向于去影院看电影。因此,人们已经不

8、再满足于抽时间去现场排队购买电影票了。过去人们只能早早的到影院现场买票,这意味着人们即使提前去影院踩点排队,也并不能保证可以购到。如果碰到热门影片上映,电影院里更是场场爆满、一票难求。观众们可能提前了好多天去排队也买不到自己心仪的影票,这对于当下快节奏的生活来说,会造成大量且不必要的时间浪费,所以面向大众公布电影的排片情况和观影时的座位选择等就成了重中之重的问题。但是关于用户账号的问题,现在有一种方案,是以移动终端特有的标识信息等等实现组合,这包括设备型号、IMSI码、IMEI码等,继而通过生成的终端身份信息来认证客户端用户的身份。这里的自定义生成身份信息的算法,可以提供给用户更好的体验方式,

9、对安卓系统本身的安全性能来说也是提高了保障1。当电影购票与当代的移动互联网技术相碰撞的时候,移动端在线订购电影票的安卓系统就顺势出现了。1.2 课题的研究目的及意义观影人群和数量都在不断地增大,现场直接购票的方式已经无法满足用户的需求。此次开发这个基于Android的卡卢琳电影购票系统,就是为了方便人们足不出户也能及时地了解各城市影院的电影排片状况,大家可以随时随地的选购自己心仪的观影场次和座位。本系统致力于解决用户平日里到电影院现场排队购买电影票的不便,以及热门电影抢票难、抢座难的弊端。用户只需要在自己的手机软件上点一点,就能方便的了解当前热映的影片信息、各影院的电影场次、剩余观影位置,电影

10、评价等信息,充分结合了移动互联网的高效便捷性,用户们可以随时随地用手机购买到自己需要的电影票,节省了不必要的人力和物力,将繁琐的电影购票简单化、便捷化。不久的将来,传统的现场电影售票方式或将成为历史。本系统设计的缩略图选座功能,为大家手机端在线购票、自由选择合适的观影位置提供了便利,美观而又简约的图形选座界面更是方便用户选择合适的观影位置,用户进入影厅时可以更快的找到自己订购的座位。用户在购票时需要输入有别于登录系统的支付密码,在用户的个人订票中心,客户端所有的交易记录都可以一一查看,让用户在使用本系统的过程中更加的安全与放心。该系统不仅让电影与人们的生活联系地倍加紧密,更给人们的生活带来了无

11、限地便捷和愉悦的享受。1.3 课题的研究现状1.3.1 电影行业的国内外现状2016年全球总票房340亿美元,中国内地电影的总票房就占了66亿美元,当年上映影片的总场次为7510万次,观影总人次达13.72亿,人均年观影一次。到了2017年,电影票房持续走高,国内票房更是高达79亿美元,同比2016年增长了20%,全球票房同比增长10%,刷新了多项票房纪录。从下表1-1中不难看出,越来越多的人选择去电影院观影。随之而来的就是各影院的售票问题,各大影院平台纷纷推出了各自的电影购票系统,以此来满足用户日益增长的需求。开发一个广大用户都适用的安卓在线电影购票系统,便成了各影院平台迫切需要解决的问题。

12、 单位(亿美元)20162017年度同比增长率中国内地667920%海外2742957%全球票房34037410%表1-1 2016-2017年度国内外电影票房数据分析表(数据来源中国产业信息网)1.3.2 电影票自助系统的研究现状在移动端智能系统的发展如此迅猛的今天,手机早已不再是一个简单的通讯设备了,它已经慢慢地融入了我们的生活,成为一个多媒体的智能移动终端。在这种大背景之下,基于Android的自助电影订票系统就应运而生了。目前,应用市场上比较受欢迎的电影购票系统是由美团公司开发的猫眼电影,一般情况下只需要30-60秒就可完成选座购票流程,使用方便,而且价格更为便宜,深受用户们的喜爱。猫

13、眼电影是一个集电影资讯、影票评分、电影衍生品销售、用户观影互动为一体的一个软件系统,同时,它可以给电影制片的发行方以及有相关合作的影院提供适合于各个消费人群的营销方案,助于各影片的票房热卖。另外,阿里旗下开发的淘票票也是广受人们的青睐,它是集影片评分和各种时下热门影片相关的资讯为一体的电影平台,这包括海量的影片预告片,主演们的高清海报与剧照、电影解读、电影评论评分等。还有其他较受用户喜爱的手机端购票软件有微信电影、拉手团购、时光网等,但是这些软件的用户圈还没有猫眼和淘票票广泛,因为这些软件都没有足够大的用户交互平台。用户在系统上在线购票后,无法在购票平台与其他用户们互相交流自己的观影体验和感受

14、,用户关于电影和购票平台的建议也没有方式上传服务端。因此,开发一个便于用户间交流的Android电影购票系统具有十分重要的意义。2 系统分析2.1 可行性分析对系统开发而言,进行多方面的可行性分析是必不可少的环节,我们分析系统的可行性通常是从综合系统技术、经济和操作三方面的调查与研究,来判定本系统是否可以顺利进行到下一步,以及评估系统的发展方向是否符合实际。可行性分析通常是根据前期的市场调研、项目资金链、现阶段的技术水平等方面做出测评报告,通过评价系统的可实施性以及所具备的价值来拟定评估报告,会更有公信度。基于Android的卡卢琳电影购票系统课题将从如下的技术、操作、经济三个角度切入,做出深

15、层次地分析。2.1.1 技术可行性本系统采用的架构模式是Android系统的分层模式:应用层、应用框架层、系统运行库层和Linux核心层,每一层都只专注于当层所需提供的服务即可,且各层服务器所需的服务皆自下而上2。从最底层的Linux内核层分析来看,可以说整个Android的操作系统都是基于Linux内核来建立的,它为操作系统的内存管理、内核驱动程序、进程管理、硬件交互、以及中断管理等提供了最基础且最核心的功能。系统运行库层就在Linux内核之上,它是用C或C+语言编写封装好的程序包,系统运行库层可支持多格式下的媒体库、Web支撑的浏览器引擎,以及通过在移动终端内置特殊的引擎来实现高质量的2D

16、图片等,这将有利于开发者直接使用Android系统提供的库来访问硬件工作3。为系统的应用框架层提供支撑的就是Android的系统运行库层,应用框架层需要调用系统的组件,它所提供的API可以直接调用,以及访问应用程序的核心,我们大多是基于Application Framework进行开发和研究应用程序的。一般都是在应用层来完成Android的应用开发,我们所开发的这个应用程序,即在线电影购票系统就是在最高层应用层来运行,系统里的编程语言都运用了Java来实现。当然,应用层也有Android系统自带的部分核心应用程序,但是可以说所有的应用程序,都是通过Android系统的应用程序编程的接口函数来实

17、现的。综合技术层面的分析而言,本购票系统是以Android Studio的开发环境来完成客户端的设计,并借用了Android系统的分层架构,用JavaDB来开发订票系统的后台数据库,使用Java作为此次研发编程的系统语言。纵观整个系统的开发来说,从技术到语言都非常的贴近当前的高端开发水平,在手机终端成功实现用户界面与服务器之间的无缝交互,与良好的开发环境以及十分合适的开发结构是分不开的。所以不得不说,技术开发的可行性层面,也是实际可行的。2.1.2 操作可行性本次系统基于了Android的多层架构模式,是以不需要用户们再配备别的一些软件,亦或是配置别的计算机,用户就可以使用起来4,5。除此以外

18、,本次开发的系统界面十分友好,色彩的搭配选择以及框框线条都非常的柔和,比较符合用户们的使用习惯,操作起来也非常的简单,方便理解。用户只需要像一般的手机软件一样去安装这个电影购票软件,就可以进行其他各种操作了,这样可以节省大量的系统层面的培训时间以及不必要的费用开销。因此,在系统操作的可行性层面,本系统绝对是可操作性的。2.1.3 经济可行性本次系统的开发是以毕业设计的形式展现的,所以我们在开发研究的过程中都没有花费多余的财力,单单只是动用了身边现有的简单资源完成了整个设计过程。因为我们开发的这个订票系统对各种软硬件的要求不是特别高,所以我们通过普通的校园局域网,以及学生的个人电脑即可完成服务器

19、的搭建。整个开发流程都没有需要购买其他多余的设备、软硬件资源等等,周边可用的资源就已经能够满足系统的需求了,从我们的研发经济角度而言,节省了大量不必要的开发开支。所以,从研发的经济层面上考虑,本系统也是可实施的。2.2 功能需求分析在此次开发的基于Android的卡卢琳电影购票系统中,依据功能需求的分析,划分了两大模块,即用户模块与电影模块两部分。用户如果有订票的需求时,就必须先登录到个人的系统账号,因此用户只要想对系统进行更多的操作时,都必须先注册属于用户个人的购票账号。用户成功注册购票账号后,系统都会自动为用户提示成功信息;相应的,一旦注册失败,系统同样也会给出相应的提示,例如该用户名已被

20、注册,或两次密码不同等,以此来方便用户们注册使用。当用户注册成功以后,就可以登录自己的账号来操作本系统了,包括电影场次的选择,地区影院的选择,浏览影片的详情,查看电影评分,收藏自己喜爱的电影,以及通过图形界面可视化的选择自己心仪的座位等6。用户选定座位以后可以选择不同的支付方式,包括支付宝、微信、或银行卡,验证支付密码后即可订票成功,这也是出于用户的支付方便以及账户安全的角度来考虑。此外,如果用户在没有订票的情况下进行评论,该条评论记录上会被标注为未订票。不可避免的是电影的上映场次和时间都有期限,一旦过期,影片就会自动从系统中下架删除。在用户角度来说,卡卢琳电影购票系统不仅可以方便的查看正在热

21、映的影片信息,还可以查看未来上档的影片讯息,包括影片的超清海报,有助于用户知晓相关影片的内容详情,如电影的导演,参演人员等。同时,本系统还会提供订购过这部电影的人的观影评价,可供用户们在购票选择时做出简单的参考。符合上述描述的电影购票系统的功能模块详图可见图2.1。基于Android卡卢琳电影购票系统用户信息模块电影评价模块支付购票模块电影分类模块电影详情模块影片排片模块选座模块登录模块注册模块用户模块电影模块图2.1 系统主要模块图根据上文描述的系统功能需求,画出了基于Android的卡卢琳电影购票系统的用例图,图2.2是用户的用例图。图2.2 用户用例图依据详细的功能需求,我们围绕了与用户

22、相关的多个模块的用例图进行详尽的说明,可以参考如下表2-1,2-2,2-3,2-4,2-5,2-6,2-7,2-8,其分别为注册账号、修改城市(省市)、修改头像、修改登录密码、电影详情、收藏电影、用户选座、以及影片评价功能的详细说明。用例类型注册账号功能简述 如果用户不注册账号,则只能简单查看电影的相关资讯,不可进行其他的系统类操作。相关方用户,计算机(服务器端),手机(客户端)前提计算机服务器端正常,卡卢琳电影购票系统正常运行,用户了解该系统的注册流程。主要流程进入系统后,不管登录与否,用户都可以查看各种影讯资料。当用户有其他更多的使用需求时,就必须先注册独一无二的账号。这需要用户填写系统唯

23、一没被占用的用户名,密码,手机号码等个人基本信息,即算注册完成。其他可能从未注册过本系统;不按要求键入账号、登录密码、手机号码等重要信息;系统闪退等自身错误,添加用户操作无法成功;注册数据提交失败,数据库的添加出现错乱。结果成功注册,数据更新到系统数据库,新添加用户资料被数据库录入。表2-1 注册账号的用例图叙述用例类型修改城市(省市)功能简述 登录账号后可以自由修改城市,以及选择对应城市的影院。相关方用户,计算机(服务器端),手机(客户端)前提用户已经成功注册、登录,计算机服务器端正常,卡卢琳电影购票系统客户端正常,用户知晓修改省市的流程。主要流程注册并登录成功,用户可以行使更多权限操作购票

24、系统,如修改所在城市,即用户随时自主的选择自己的目标城市。其他可能并未注册过个人账号;系统出现闪退等错误,客户端无法即时修改城市;提交的修改城市数据失败,更新出错。结果修改城市(省市)成功,数据库同步成功,系统显示修改后城市。表2-2 修改城市的用例图叙述用例类型修改头像功能简述 用户可以随时更换客户端头像。相关方用户,计算机(服务器端),手机(客户端)前提用户已经成功注册、登录,服务器端运行正常,客户端一切正常,用户了解更换系统头像的流程。主要流程登录后,可以通过选择手机内部图片作为客户端头像。其他可能未注册过系统账号;系统出现闪退等问题,更换头像失败;修改后数据无法提交,数据库添加时出错。

25、结果用户头像更换成功,并更新至数据库。表2-3 修改头像的用例图叙述用例类型修改登录密码功能简述 用户可以自由修改软件的登录密码。相关方用户,计算机(服务器端),手机(客户端)前提用户已注册、登录系统,服务器端正常,客户端正常,用户熟悉更改登录密码的流程。主要流程用户可以通过忘记密码来修改密码,只需填写自己的注册手机号和邮箱,系统自动与数据库匹配是否一致即可。其他可能从没有注册过账号;系统出现卡顿等错误,不能正常进行修改密码;修改数据无法提交,数据库更新总出错。结果用户登录密码修改提交成功,并更新至数据库中。表2-4 修改登录密码的用例图叙述用例类型电影详情功能简述 用户对影片有较少的了解时,

26、就可以通过影片资讯来找出喜欢的影片。相关方用户,计算机(服务器端),手机(客户端)前提登录正常,服务器正常,客户端正常,用户知道查看资讯的方法。主要流程用户可能对影片无太多了解,可能需要查看影片的详细信息,包括电影的导演,参演人员,影片简介等相关资讯。更重要的是,系统支持查看其它用户的观影评分和观影感受发布,帮助用户参考。其他可能非用户登录;数据库发生读取错误,无法对应影片的资讯;影片海报读取错误,导致系统端图片无法显示;无法看到其他用户的评分和评价;用户不注册也可查看影片的具体资讯。结果查看影片详细的资讯成功。表2-5 电影详情的用例图叙述用例类型收藏电影功能简述 用户只有登录后才可以把自己

27、喜欢的影片收藏至收藏夹,便于快速找到那个收藏的影片。相关方用户,计算机(服务器端),手机(客户端)前提注册登录,服务器端网络正常,客户端正常,用户知道如何收藏影片。主要流程用户登录之后,进入电影详情页面,可以收藏电影,方便下次找到电影选座购票,节省时间。其他可能并非系统用户;没有注册账号;系统卡顿或闪退,无法将影片收藏至收藏夹内;提交收藏数据一直失败,数据库添加失败。结果用户收藏电影成功,并更新到数据库中。表2-6 收藏电影的用例图叙述用例类型用户选座功能简述 用户可以通过图形化界面选择观影座位。相关方用户,计算机(服务器端),手机(客户端)前提注册登录,服务器提供的网络正常,客户端正常运行,

28、用户了解选座流程。主要流程用户只有登录之后,才可以进行影院和场次的挑选,继而可查看已选场次的剩余座位情况,并为自己选择观影座位,一次最多可选三个座位。其他可能非用户登录;未注册账号;系统出现闪退或卡顿,无法放大缩小选座界面;座位数据提交失败,数据库更新频繁出错。结果选座成功,并将座位信息更新至数据库。表2-7 用户选座的用例图叙述用例类型影片评价功能简述 当用户观影结束后,可对电影内容进行星级评分和评价,将自己的观影感受与其他用户进行分享。相关方用户,计算机(服务器端),手机(客户端)前提注册登录完成,服务器网络正常,客户端运行正常,用户熟悉评价流程。主要流程登录进入系统,可对电影做出评价和评

29、分,直观的为其他用户选择影片时提供参考。其他可能非用户登录;未注册账号;系统出现卡顿现象,无法发布评价和影片评分;影评的数据提交失败,更新数据出错。结果影片评价记录添加成功,并将新数据更新至数据库中。表2-8 影片评价的用例图叙述2.3 性能需求分析从高级恶意程序的典型性行为特征角度来看,无论恶意程序是否root了终端设备,可以信任以中间网络为获取渠道的网络连接数据,这其中包括了数据的采集,以及审计策略的管理。通过在协作检测的设计基础之上,文伟平等人提出了以手机客户端与服务器端相互协作的恶意代码检测方案7,8。方案中主要是采用了Permission检测技术,来实现手机端轻量级的检测,而服务器端

30、则是对手机端提交上来的样本进行检测分析,最终与手机端同步完成行为分析,以及特征库的更新9,10。Android应用程序是使用Java语言编写,并通过虚拟机(VM)来执行的,它的两种JPF扩展都不支持本地方法的验证11。另外,Android系统的开源特性使得基于AOSP的OS操作系统定制版本的数量众多,可能会造成更多软件上的威胁12,13。因此,有人提出了通过构造分类器来使用机器学习算法、学习类特征,以及训练相关系统的有效性恶意软件来检测14。现如今,Android恶意软件分析与检测框架已十分广泛,引发了关于安卓恶意软件的组织分析和规避自检测能力的热论15。权限控制已经作为防止恶意软件的主要安全

31、机制之一,系统允许用户自行提高Android权限的使用效率,以及系统的权限16,并着重讨论了特定应用程序独有的安全排名算法17,18。安卓应用系统本身是基于事件驱动和交互式行为开发的,通俗的来说就是键入不同的事件,都可以通过驱动完成系统各种不同的逻辑功能19。此外,系统良好的可维护性、可拓展性,以及优化了用户请求的优先级队列调度,都将极大地改善了用户的体验感20。2.3.1 标准性整个系统的开发和使用都必须在国家法律的可执行以内进行。2.3.2 稳定性系统开发需从多方面多角度的综合考虑系统本身的机能,包括研究的技术手段、软硬件平台、系统的保护能力、系统的结构布局等,以此来保障系统本身的高可用性

32、。2.3.3 安全性对安卓操作系统来说,完整的安全体系和系统结构功能非常重要,例如用户注册时往往会对输入的密码进行加密处理,甚至进行二次加密,更有甚通过用户唯一的身份认证、不同用户权限管理等功能来增强系统安全的巩固。以此来禁止非用户、无权限的非法访问,以及因系统设计缺陷而产生的系统漏洞、非法访问。Android操作系统为应用开发提供了广泛的平台,它基本上可以独立于实时数据源,通过安全隔离系统来保障数据传输的安全与高效21。根据Android信息安全技术体系中的设计原则,我们划分出不同的终端安全层次,并依照不同安全层次的威胁去准备相对应的安全防护措施之类22。从Android系统的安全性角度考虑

33、,这样的数据传输和安全体系层次很是必要。2.3.4 可维护性对于大型的系统开发来说,程序出现问题时很难排错,这是因为程序模块间零零碎碎,模块与模块之间的衔接能力较差。所以我们把程序不断地规范化、刻制化,只为了结构与层次条理清晰,便于找出系统编程的错误。系统需要确保无论出现了什么问题,或闪退,或卡顿,使用者看到的界面都是统一的。Java是目前最为普遍的系统开发语言,Android操作系统就是以Java为主的应用层研发语言,好处就是使得订票系统的开发时间被极大的缩短。运行应用程序的顶层操作时,Application Framework会被系统自动由下调用过来,Java编写了系统的顶层程序。同时在A

34、ndroid的运行时环境下,调用了Libraries,最终交付至安卓底层的Linux Kernel,以达到硬件之间交互的目的23,24。2.3.5 可使用性系统的可操作性要求必须高,开发出的界面应该十分简洁明了,便于各个年龄层群体的用户使用,系统整体的风格设计必须美观大气,迎合大众喜好。系统的可用性另外一方面表现在可以自检错误,比如说密码修改失败的提示,确认密码与初次输入的密码不一致,以及账户已被注册等,这都是为了帮助用户熟悉系统的使用。2.3.6 先进性先进性就是要求保证系统在开发出来以后,短时间内不能太过落后,这就需要在开发过程中使用较为先进的新技术。此外,开发者还需对本次开发的系统的设计

35、质量做出最正确的评估和预测。3 系统总体设计3.1 系统环境1)硬件要求:1G内存或更高2)操作系统:Android 4.3以上3)脚本解释器:Netbeans与Android studio脚步解释器4)数据引擎:JAVADB 5)编程语言:JAVA6)数据库:Netbeans内置数据库7)开发工具:Netbeans、Android studio等 3.2 系统整体框架如图3.1所示,本次开发的系统层次主要包括数据库层、应用层以及客户层。其中,数据库层主要是为了存储原始的数据和系统处理过的数据,并且为系统提供最基础、核心的数据访问方法。系统应用层则主要是通过基础的服务方式,来加快系统数据的访问

36、速度,减少控制层与业务逻辑层需要的数据自动检索时间,这包括中间件和消息队列等方式。当对用户进行数据的传输与展示时,系统会使用JSON格式去传递相关的数据信息,并通过POST方式把用户的一些隐私数据传送至系统的服务器端。基础服务层数据访问层数据存储层实现方式XMLJAVAServlet/MVC框架系统架构客户层应用层数据层控制层业务逻辑层Java ClassJava ClassHttp的JSON请求Http请求POST/GETHttp请求Servlet参数解析用户管理分类管理文件服务数据服务电影管理评价管理数据库访问DAO文件访问接口DB(JAVADB)DB(Movie)DBJDBCMybati

37、ts客户端执行架构APP、操作系统应用层执行架构J2EE服务器、操作系统数据层执行架构数据服务器、文件服务器Java对象Java对象图3.1 整体架构图3.3 系统功能概述本系统的需求功能主要分为了以下几个方面,即原始数据处理、注册账户、登录系统、用户个人中心、城市影院选择、电影场次选择、影片详细信息浏览、座位选择、影片评分、支付方式选择等。原始数据处理,就是把原始数据先进行预处理,需要保证预处理后的数据的完整性与兼容性,且需要适用于不同平台的编码环境。如果从未在本系统注册过账户,需得完整填写个人信息,用户想要更多操作权限包括选座购票、电影评分之类都需先登录到系统。用户可以在个人中心查看、修改

38、个人信息,包括用户名、电话、邮箱、修改登录密码、支付方式等,还可以查看自己购票的座位详情,影票实行过时作废。另外,本系统支持影片的相关资讯的展示,全方位帮助用户了解电影详情。此外,系统会根据城市、影院、日期以及厅号等将电影分类,便于用户快速查找到目标影片。同时,获取已选择的电影场次的座位情况也可以通过UI可视化显示,图形座位界面便于用户直观的选择想要坐的位置,观影时也可更加快速的找到自己预定的座位,并且系统会对已售已选的座位进行标记。订票时可以选择付款方式,且需验证付款密码,安全放心,手机支付购票符合现代人的生活习惯。用户订过票以后可以为电影打分,发表自己的观影感受,查看自己或别人的评价信息,

39、执行删除评论的操作等。系统获取的影评讯息,允许用户的电影评分和评价内容一并录入到数据库。系统整体的流程,首先将当前城市影院的全部影片信息从数据库中导出,并通过用户依据时间、影院、场次信息来筛选电影。最后,在系统的选座模块中会向用户展示出已选场次的影片当前座位剩余情况,继而选择是否订这个场次的票。3.4 系统静态建模所谓建模最主要的是先确定系统类,我们会有很多种方式来确定系统类,这包括通过用例中识别名词法,或通过用例描述来识别出系统类。因为用例图是一种很好的描述系统的方式,所以本系统中我们将以用例图的形式来确定系统类。我们根据功能板块深刻分析了系统需求,并通过这些分析用例来具体分析用例图,作出说

40、明,包括用户个人信息(users),电影信息(movies),订单信息(orders),影片排片(times),影厅排片(rooms),电影评价(message)等。其中在电影信息的用例中,会出现并需要存储影片的编号(movieid),电影名称(moviename),影片价格(price),主演(movieactors)和电影评价(moviescore)等信息,详细可见图3.2电影详情类。图3.2 电影详情类在注册账户例和登录系统的用例中,需要把用户编号(userid),姓名(username),密码(password)等信息,并根据这些来确定用户个人信息(users)类,详情可见图3.3用户

41、个人信息类。图3.3 用户个人信息类在订单详情的用例中,根据订票编号(orderid),排片编号(timeid),用户编号(userid),以及座位(seats)等信息,由此来确定订单详情(orderid)类,详情可见图3.4订单信息类。图3.4 订单详情类在影院排片用例中,按照电影排片序号(timeid),座位号(selectedseats),影厅(roomid)等信息,确定影院排片(times)类,详细可见图3.5电影排片类。图3.5影院排片类在排片的用例中,需要存储影厅的序号(roomid),影厅名(roomname),坐位数量(rseats)等信息,根据此来确定电影排片(rooms)类

42、,详细可见图3.6电影厅的排片类。图3.6影厅排片类通过对总体功能的分析,类之间彼此依存的状态,相互之间的紧密关联,可见图3.7系统整体类图。图3.7系统整体类图3.5 数据库概念设计由用户详情、影片详情,影厅详情,订单详情,影评详情和排片详情组成的系统数据库,其层次清晰,各实体的E-R图分别见下图3.8,3.9,3.10,3.11,3.12,3.13。图3.8 用户详情图3.9 影片详情图3.10 影厅详情图3.11 订单详情图3.12 影评详情图3.13 排片详情4 详细设计4.1 动态建模4.1.1 用户登录模块用户可以使用游客的身份去浏览影片信息和影院的排片信息,但当订购电影票的时候,

43、登录账号,系统将会账号密码信息与数据库中的数据是否匹配。如果身份信息通过验证,用户就可以进入系统并可执行购票退票等一系列操作;相反,数据库比对失败,系统会给出登录不成功的原因,以此来帮助用户成功登录到系统内部25。如图4.1所示。图4.1用户登录活动图用户登录系统需要经过如下:1)登录首页,填入账户密码;2)自动检测账户的身份信息是否与数据库匹配;3)如若身份信被息验证成功,则会进入用户各自的页面;如若身份信息的验证不成功,则会弹出提示框,告知用户验证失败的原因,来帮助登录。系统登录的序列图,如图4.2所示。图4.2系统登录序列图可能存在如下情况:1)游客状态,即只是点开系统首页,未操作;2)

44、登录进系统,即根据账户和密码,通过数据库比对来验证身份是否正确;3)无法登录,即用户输入了正确的账户和密码,由于一系列原因没有通过系统的身份验证。用户登录状态图,如图4.3所示。图4.3用户登录状态图4.1.2 用户模块动图建模本系统的用户在登录成功时,进入到系统主页面,这时候可以对订购的影票信息做出选择了,点击确认购票,最多可订购3张电影票等,如果操作符合系统规范,则完成购票;相反,如果不符合系统流程,也会附上相应的提示,帮助你顺利订票成功。用户购票活动图,如图4.4所示。图4.4用户购票活动图在用户购票模块中,主要包括如下步骤:1)已登录,进入电影选择界面;2)选择喜欢的电影名、时间、座位

45、等信息;3)如果系统验证身份信息成功,数据库中将会自动插入本次的购票信息,并跳出弹框提示订票成功。用户购票序列图,如图4.5所示。图4.5用户购票序列图在系统的用户模块中,用户需先订购当前场次的电影的票,才可发表评论,用户评论电影主要包括如下几种情况:1) 添加评论,选择星级,输入评价内容,即可;2) 完成评论,即评分与评论皆按照要求来,数据也正确,系统会给成功提示;3)无法评论,即给分评论频繁出错,包括操作和数据,从而导致系统添加用户评论到数据库时失败。用户评价状态图,如图4.6所示。图4.6用户评价状态图4.2 数据库设计该系统的后台数据库设计是以JAVADB为基础的,其中相关的数据库表格

46、包括用户基本信息表、电影资讯表、影院表、影院排片表、影座表、收藏表、影评表、订单表、城市(省市)表等。根据数据库结构,以及系统功能需求等,设计了本系统的数据库,分别如下表4-1,4-2,4-3,4-4,4-5,4-6,4-7,4-8,4-9所示:列名数据类型允许NULL值说明useridIntNO序号为系统账号,主键usernamestringNO用户注册名imagestringNO用户头像paypasswordstringNO用户注册时,自己键入的支付密码loginpasswordstringNO用户注册时,自己键入的登录密码EmailstringNO用户注册时,自己输入的邮箱Phonest

47、ringNO用户注册时,自己键入的手机号表4-1用户信息表列名数据类型允许NULL值说明idIntNO为电影的编号,为主键MovienamestringNO电影的名称imagestringNO电影的相关海报图starttimetimestampNO电影的放映时间ratefloatNO电影评分ratenumIntNO电影评价的人数directorstringNO导演actorsstringNO主演collectednumIntNO影片收藏的数量表4-2电影信息表列名数据类型允许NULL值说明idIntNO为影院的编号,为主键CinemanamestringNO影院的名称CitystringNO影

48、院所在的城市LocationstringNO影院的具体位置信息表4-3影院信息表列名数据类型允许NULL值说明idIntNO为排片的编号,为主键MovieidIntNO电影的ID编号CinemaidIntNO影院的ID编号HallstringNO影院的厅名timetimestampNO影片的放映时间costFloatNO影片的单价表4-4影院排片信息表列名数据类型允许NULL值说明idIntNO为座位信息的编号,为主键CinemaidIntNO影院的ID编号HallstringNO影院的厅名timetimestampNO影片的放映时间SeatrowIntNO座位行号SeatcolIntNO座位

49、列号orderedboolNO座位是否已售表4-5影院座位信息表列名数据类型允许NULL值说明idIntNO为收藏信息的编号,为主键MovieidIntNO电影的ID编号UseridIntNO用户的ID编号表4-6电影收藏信息表列名数据类型允许NULL值说明idIntNO为评价信息的编号,为主键MovieidIntNO电影的ID编号UseridIntNO用户的ID编号EvaluationStringNO影片的评价内容RateFloatNO影片的评分TimetimestampNO评价时间表4-7电影评价信息表列名数据类型允许NULL值说明idIntNO为订单信息的编号,为主键UseridIntN

50、O用户ID编号MovieidIntNO电影ID编号CinemaidIntNO影院的ID编号HallstringNO影院的厅名showtimetimestampNO影片的放映时间timetimestampNO购票的时间SeatrowIntNO座位行号SeatcolIntNO座位列号CostfloatNO影片的单价表4-8订单信息表列名数据类型允许NULL值说明idIntNO为省市对应的编号,为主键ProvincestringNO省名CitystringNO市名表4-9城市信息表(省市)5 系统部分实现及测试 5.1 测试目的基于Android卡卢琳电影购票系统的测试是本次课题研究的最后一部分,系

51、统的测试是从多方面来对开发完成的电影购票系统进行测试,包括该软件的安装测试、详细的功能性测试、软件性能测试,以及数据测试等等。我们进行程序上的测试就是为了找出进程中的错误,测试时需要有针对性的按照系统软件的各个模块来进行测试检验,我们通常也会用错误的数据去测试系统性能的高低,以及测试系统是否能够满足得了用户的需求。其实,我们此次测试是为了通过使用最少的人力资源、财务以及时间,找到该订票系统中设计过程并未发现的各种问题和弊端。而且我们测试时必须站在用户使用的角度来进行,尽最大的可能去测试未知的可能,来完成高可靠性测试。5.2 测试内容5.2.1 注册测试当用户注册时可能会遇到如下几种情况,分别一

52、一做了测试。用户注册的用户名唯一,当已被其他用户使用时,系统会自动为用户弹出提示框“用户名已被使用!”,如下图5.1所示。注册时需要输入两次密码,一旦两次密码不一致,就会告诉我们“确认密码和输入密码不一样!”,且两次密码输入皆不可见,确保了密码输入时不会泄露,测试结果如下图5.2所示。 图5.1 用户名测试 图5.2 确认密码测试当注册的手机号码数据库中已存在,即该号码已被其他用户注册使用,弹跳框会提示用户“手机号已被使用!”,测试结果可见下图5.3。当用户键入的个人基本信息均符合注册规范后,会提示注册成功,并自动跳转至登录界面,可见图5.4。 图5.3 手机号测试 图5.4 完成注册测试结果:所有测试目标达成,完成用户注册的测试,且自动跳转登录界面。5.2.2 用户登录测试当用户输入的是未注册的账号时,系统并不会跳出用户头像,如图5.5所示。当用户登录系统输入的密码与注册密码不一致,即密码有误时,系统会自动提示“密码错误!”,如图5.6所示。用户登录完成后会自动进入系统,并提示“登录成功!”,测试结果如图5.7所示。 图5.5 未注册账户测试 图5.6 登录密码错误测试 图5.7 登录成功测试结果:所有关于登录可能会出现的问题都测试达成,成功后自动跳转页面。5.2.3 电影收藏测试当电影从未被该用户收藏过时,星标识系统显示为暗灰色,如图5.8所示。当用

温馨提示

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

评论

0/150

提交评论