一、选题的目的和意义
本次开发的校车购票微信小程序相对于传统的APP脱离了平台的限制,只要完成开发即可在Android端和IOS端都可以访问,将传统的校车购票模式改进成了基于微信的小程序的移动模式,使校车购票脱离空间的限制,让用户通过微信平台可随时随地的进行查看自己乘坐的车辆信息,管理人员可管理车辆、安排车辆,可以提高校车购票效率,也加快了移动互联网时代发展的进程,可实现校园的信息化发展。
本次《校车购票微信小程序的设计与实现》设计主要体现于提高同学们对校车购票的需求分析、业务模型的建立、完成程序设计以及运行结果达到设计要求的能力。与此同时,我们在设计过程中进一步加强和巩固了所学到的知识,为今后工作和学习打下坚实了的基础。
二、国内外研究现状和发展趋势
移动互联网的不断发展,手机的使用频率越来越频繁,移动互联网时代已经融入我们的生活,工信部数据显示我国移动电话用户将近13亿,移动互联网用户数量将近达到9亿,4G用户继续保持高速增长态势。5G时代的开启以及移动终端设备的普及为移动互联网注入了巨大的能量,PC端互联网已经处于日渐饱和的状态,而移动互联网却正在蓬勃发展,传统的互联网巨头们也都将目光聚集到移动互联网。
随着现代信息技术的快速崛起和发展,智能手机几乎已覆盖全国,微信公众平台在微信中的应用频率日益增加,首当其冲的就是Internet与智能手机的融合了,为微信的发展提供了丰富有力的条件。目前校车购票微信小程序还不成熟,大多数的校车购票系统都出现在传统的WEB应用上,在这个环境下,校车购票微信小程序属于一个崭新的应用。目前,绝大部分的网络应用都还是传统的WEB应用,但面对微信如此普及的今天,传统WEB的应用不能满足人们随时随地体验网络应用的想法,所以,出现在手机微信客户端的小程序将会越来越多,同时其发展的速度也会越来越快。校车购票系统作为传统WEB应用,也必将在手机微信平台上得到应用。
三、研究(设计)目标和内容
1.研究目标
(1)完成基于校车购票微信小程序开发,实现用户注册登录、车辆管理以及安排车辆的重要功能。
(2)完成系统代码的设计和使用文档的编写。
(3)完成毕业设计文档的编写。
2.研究内容
本校车购票微信小程序主要实现微信端学生功能模块和服务端管理员功能模块两大部分,具体如下:
服务端管理员功能模块
(1)管理学生的注册信息
(2)管理车辆信息
(3)安排车辆接送学生 乘坐车辆车牌号,到达时间等
微信端学生功能模块
(1)注册个人信息
(2)查看自己乘坐的车辆信息
四、研究(设计)技术路线、研究方法、研究提纲
1.研究的方法
文献研究法:查阅软件工程、数据库开发、微信开发者工具等的相关资料。查阅软件工程各类文档的编写方法。通过网上查阅并参考相关系统的业务及功能。
小组讨论:与同学进行讨论、请教指导老师,解决在程序设计中遇到的问题
调查法:调查当前市场上所用的类似系统的设计理念
功能分析法:通过说明现象怎样满足一个系统的需要来解释现实现象。
2.研究措施
a.完成系统调查,分析整个系统的业务流程,根据每个模块的功能实现需求分析。
b.进行系统总体设计。
c.数据库设计
建立概念模型,并用E-R图描述;
将概念模型转换成关系模式,进行实体与联系的描述
数据库结构的详细设计
d.系统实现
本系统采用微信开发者工具、Java语言进行开发设计;
数据库选择MYSQL数据库。
运用图形界面、核心代码及相应的说明文字解析系统重要模块的实现过程和结果。
e.系统测试
结合软件工程中的测试方法,设计相应的测试用例,对系统进行简单测试。
3.论文提纲
1绪论
1.1研究背景
1.2研究现状
1.3论文组织结构
2系统关键技术
2.1微信小程序
2.2微信Web开发者工具
2.3 WXML 、WXS、JS小程序编写语言
2.4微信小程序API接口
2.5 MYSQL数据库
3系统分析
3.1可行性分析
3.2系统性能分析
3.3系统功能分析
3.4系统用例建模分析
3.5系统流程分析
4系统设计
4.1系统开发流程设计
4.2系统结构设计
4.3系统数据库设计
5系统的实现
5.1用户功能模块的实现
5.2管理员功能模块的实现
6系统测试
6.1测试概述
6.2测试原则
6.3测试方法
6.4测试结果分析
7总结
参考文献
致谢
第1章 绪论 1
1.1 课题背景 1
1.2 课题意义 1
1.3 研究内容 1
第2章 开发环境与技术 3
2.1 MYSQL数据库 3
2.2 JSP技术 3
2.3 SSM框架 4
2.4 微信开发者工具 4
第3章 系统分析 6
3.1 可行性分析 6
3.1.1 技术可行性 6
3.1.2 经济可行性 6
3.1.3 操作可行性 6
3.2 系统流程 7
3.2.1 操作流程 7
3.2.2 登录流程 7
3.2.3 删除信息流程 8
3.2.4 添加信息流程 9
3.3 性能需求 9
3.4 功能需求 10
第4章 系统设计 12
4.1 设计原则 12
4.2 功能结构设计 12
4.3 数据库设计 14
4.3.1 数据库概念设计 14
4.3.2 数据库物理设计 17
第5章 系统实现 21
5.1 管理员功能实现 21
5.1.1 学生管理 21
5.1.2 乘车信息管理 21
5.1.3 车辆信息管理 22
5.1.4 座位管理 22
5.2 学生功能实现 23
5.2.1 车辆信息 23
5.2.2 我的乘车信息 24
5.2.3 我的收藏管理 25
5.2.4 修改个人信息 26
第6章 系统测试 28
6.1?功能测试 28
6.1.1 发布评论功能测试 28
6.1.2 收藏车辆功能测试 30
6.2 测试结果 32
结 论 33
致 谢 34
参考文献 35
第1章 绪论
1.1 课题背景
随着移动互联形式的不断发展,各行各业都在摸索移动互联对本行业的改变,不断的尝试开发出适合于本行业或者本公司的APP。但是这样一来用户的手机上就需要安装各种软件,但是APP作为一个只为某个公司服务的一个软件,是一种闭环的生态,从用户获取和保持用户的粘性都变成了一个难题,并且在维护上面也需要考虑成本,慢慢的变成了不开发APP跟不上潮流,开发APP则运营上面步履维艰。如何获取一个新的客户来源通道以及转换通道,变成了管理者都需要面对的一个问题。如何让一个用户从已经习惯的应用里跳转到希望用户访问的应用里,这是一个问题,而微信小程序就解决了这样的难题。微信拥有庞大的用户基础,可以不用更换APP直接在微信上就可以访问用户想要访问的资源。因此微信小程序相对于APP来讲更受欢迎,本次课题就运用了微信小程序技术开发一个校车购票微信小程序。
1.2 课题意义
背靠微信庞大用户群体的微信小程序,变成了当前解决用户访问应用程序入口方案的一种选择,用户的手机里面只要有微信,不需要安装新的软件,就可以直接访问指定目标,获取指定内容,解决了管理者的痛点,并且微信作为一个聊天工具,在微信里有支持的各种各样的生活服务,也为微信的用户提供了粘性,微信小程序不管是针对用户或者管理者都是一个双赢的存在。目前,传统电商及零售行业因为小程序的出现而获得了新生。本次课题针对校车购票,借助于微信小程序这样的平台,可以更加方便学生查看车辆以及车辆乘坐信息,也方便了管理员在后台对车辆,车辆座位以及学生乘车信息进行统一管理。
1.3 研究内容
对校车购票微信小程序设计制作,不仅需要技术支撑,也需要大量的理论研究。本文在对校车购票微信小程序进行介绍时,将按照如下内容进行。
第一部分:介绍校车购票微信小程序研究的背景意义,便于用户了解系统;
第二部分:介绍开发校车购票微信小程序需要搭建的环境,包括技术和工具;
第三部分:介绍用户对校车购票微信小程序的功能要求,以及对校车购票微信小程序的性能要求等;
第四部分:介绍数据库的设计方案,以及根据功能要求设计的功能结构;
第五部分:介绍通过编码最终实现的系统功能运行效果;
第六部分:介绍系统的功能测试,对系统进行综合检测,并及时解决系统出现的问题,直至系统运行正常。
2.1 MYSQL数据库
本课题所开发的应用程序在数据操作方面是不可预知的,是经常变动的,没有办法直接把数据写在文档里,这样不仅仅不安全,也不能实现应用程序的功能。如果要能实现应用程序所需要的数据存储功能,就避免不了要进行专业数据库存储软件的选择。基本上应用程序实现的功能不算太复杂,市面上任何一个关系型数据库软件都可以实现。参考自己的学习进度和操作习惯来讲,Oracle数据库是适合的,但是所需要的的安装软件很大,并且有好多不需要的功能都是开启的状态,十分消耗电脑资源,所以没有选择Oracle数据库,而SQL Server数据库虽然学过,但是安装的时候因为电脑上可能有其他的软件存在,经常性的出问题,而安装问题不好解决就需要重新安装操作系统,这样对已经存在的软件来讲又是一种时间上的浪费。只有MySQL数据库,安装包小,安装速度快,操作简单,哪怕安装出问题也好解决,不用重装操作系统,也不影响电脑上运行的其他软件,消耗资源也少,最重要的是在功能方面完全的符合设计需要,所以最后选择了MySQL数据库作为应用软件开发需要的数据库。
2.2 JSP技术
在动态网站的兴起之初,作为高级编程语言的Java自然不会放弃这个领域的蛋糕。Sun公司推出了Servlet作为输出动态网站的一种技术标准,虽然不怎么受当时程序员的喜爱,但是当初也没有太多的选择,随后几个月PHP语言问世,不考虑性能和效率如何,起码在书写网页所需要的动态代码块和静态代码块方面进行了区分,让书写效率和可读效率大大的提升,所以很多Java程序员以及刚入行的初级程序员都选择了PHP语言作为自己职业的发展方向,Sun公司为了维护Java语言在高级编程语言上的江湖地位,防止PHP继续抢走市场份额占有率,Sun公司联合Apache基金会研发了一个关于Java动态网页的一个新型的技术标准,这就是JSP技术。JSP吸取了PHP语言在页面书写上面的所有优点,但是又背靠Java EE的庞大后台,又能实现很多通过Java组件就能实现的功能,在JSP页面上可以直接引用那些组件,让JSP更加的强壮丰富。保证了Java技术纵向的可持续发展,并且在动态网站开发领域终于站稳了脚跟,其他PHP开发人员可以很快的转移到JSP进行开发,不考虑一些特殊组件或者功能的开发,只从动态页面的开发上来讲,完全实现了PHP程序和JSP程序的几乎无成本的转换,JSP技术就这样的发展了起来。
2.3 SSM框架
SSM框架不是一个框架的名称,而是三个框架的首字母缩写,分别是Spring框架、SpringMVC框架、MyBatis框架。是目前Java开发者中学习的首选框架。
Spring框架继承了JavaEE和EJB框架的优点,在依赖注入方面去掉了臃肿的配置,在面向切面方面也简化了代码数量,提高了代码品质。依赖注解进行配置,让所有的依赖都可以通过程序的自动配置和寻找,减少了代码写作数量,提高了代码阅读性。
SpringMVC框架与Spring只是一个公司的,在底层代码结构上可以复用,但是最主要的功能是对数据提交请求进行过滤,并且对数据的返回进行过滤,不限于页面是JSP技术,也可以是其他的技术,更容易大型开发的集合技术。
MyBatis框架摒弃了Hibernate框架的配置臃肿方面,有时候Hibernate框架业务比较复杂的时候,代码量反而增加,性能下降,无法对底层的数据库语句优化,而MyBatis框架则有效的解决了这个方面,可以通过Java语句,对数据库操作语句进行优化,代码更简洁,执行效率更高,并且可以生产一些模块化代码,解决了开发过程中容易出现的实体映射方面的操作。
2.4 微信开发者工具
微信web开发者工具是国内腾讯公司开发的专门用来开发微信小程序的一个工具。开发过程中如果是项目团队开发,可以设置多个开发和测试成员,管理员可以在小程序管理后台添加成员并且设置所需的权限。微信web开发者工具可以开发小程序项目以及微信公众号网页项目,小程序项目如果不部署到服务器上只做开发测试的话,AppID可以点击测试生成,否则需要在微信公众平台上申请微信公共号和微信小程序。用微信web开发者工具可以对程序与页面,组件和API进行调用,发布之前可以生成好几个小程序版本,并可以在后台查看运营相关数据。微信开发者工具是微信小程序开发的必备利器!