2 系统开发环境
2.1微信开发者工具
微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。
机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。
预览界面:写好视图布局后点击编译,用来刷新视图界面。
控制台:方便调试打印输出信息。
上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息。
资源文件:一般可以在资源文件进行对应项目的文件目录的断点调试。
显示远程调试:手机端和PC端开发工具联调对学生而言是非常实用的。
本地数据存储:显示的是本地存储的数据。
视图调试:标组件以子父层级结构呈现,方便调试。
微信限制在2M 以内的代码体积;开发中一般不校验合法域名信息;小程序后台要做配置服务器域名。
以上就是在开发过程中微信开发者工具常用到的功能,微信开发者工具也在不断的完善。
2.2小程序框架以及目录结构介绍
整个小程序框架系统分为两部分:逻辑层和视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生小程序体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。框架提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的小程序 。
2.3 JAVA简介
Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,JSP(java server pages),和XML技术。多进步。例如,当我在微软Word中写这篇文章时,我还打开了一个MP3播放器来播放音乐。偶尔,我也会编辑Word,让学生缴费管理机器执行打印作业,我也喜欢通过IE。对我来说,这些操作是同时执行的,我不需要等待一首歌来完成学生缴费管理论文编辑。似乎他们都在学生缴费管理机器上同时为我工作。事实是,对于一个CPU,它只能在某个时间点执行一个程序。CPU在这些程序之间不断地“跳跃”。那么为什么我们看不到任何破坏呢?这是因为,与我们的感情相比,它的速度太快了。因此,尽管我们看到一些同步操作,实际上对于计算机来说,它只能在某个时间点执行一个程序,除非您的计算机是多CPU的。
Java是一种计算机编程语言,具有封装、继承和多态性三个主要特性,广泛应用于企业Web应用程序开发和移动应用程序开发。
Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了明显改进。
2.4 MySQL数据库
Mysql的语言是非结构化的,学生可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。
Mysql数据库在编程过程中的作用是很广泛的,为学生进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。
数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。
2.5 SSM框架
当今流行的“SSM组合框架”是Spring + SpringMVC + MyBatis的缩写,受到很多的追捧,“组合SSM框架”是强强联手、各司其职、协调互补的团队精神。web项目的框架,通常更简单的数据源。Spring属于一个轻量级的反转控制框架(IoC),但它也是一个面向表面的容器(AOP)。SpringMVC常常用于控制器的分类工作模式,与模型对象分开,程序对象的作用与自动取款机进行处理。这种解耦治疗使整个系统的个性化变得更加容易。MyBatis是一个良好的可持续性框架,支持普通SQL查询,同时允许对存储过程的高级映射进行数据的优化处理。大型Java Web应用程序的由于开发成本太高,开发后难以维护和开发过程中一些难以解决的问题,而采用“SSM组合框架”,它允许建立业务层次结构,并为这个问题提供良好的解决方案。
3 需求分析
3.1 系统设计目标
当今社会的生活节奏越来越快,人们对手机微信的需求也越来越高,不仅对操作简单、功能齐全方面,而且对于学生的体验度也有了更高的要求,最快捷高效的方式莫过于利用互联网,将校园水电费管理小程序和互联网结合起来,为学生提供方便快捷的服务。
需求分析的任务是通过详细调查现实要处理的对象,充分了解系统的工作概况,明确学生的各种需求,然后在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变。
3.2需求分析概述
校园水电费管理小程序主要是为了提高学生的工作效率和更方便快捷的满足学生,更好存储所有数据信息及快速方便的检索功能,对校园水电费管理小程序的各个模块是通过许多今天的发达校园水电费管理小程序做出合理的分析来确定考虑学生的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。
校园水电费管理小程序所要实现的功能分析,对于现在网络方便,校园水电费管理小程序要实现管理员、学生、教师可以直接在平台上进行查看自己所需数据信息,这样既能节省管理的时间,不用再像传统的方式,如果学生想要进行交流信息,必须双方见面进行沟通交流所需的信息,由于很多学生时间的原因,没有办法进行见面沟通交流,真的很难满足学生的各种需求。所以校园水电费管理小程序的开发不仅仅是能满足学生的需求,还能提高学生的使用率。所以校园水电费管理小程序必须要更快捷、有效、长期地为学生或潜在学生传递信息。建立一个校园水电费管理小程序更好的交流平台,提高系统对学生交流后的信息服务的效率。此系统可以满足大多数学生所提出的问题,学生可以根据自身的需求获取相应的服务,为校园水电费管理小程序提供了快捷的途径。
校园水电费管理小程序在系统的安卓上可以运行,主要实现了管理员;首页、个人中心、学生管理、教师管理、宿舍信息管理、学生缴费管理、教师缴费管理、系统管理,学生前端;首页、我的,教师前端;首页、我的等主要功能模块的操作和管理。
总体分布如图3.1所示:
3.1 总体功能需求图
系统实现给学生展示的界面与该对象是面对面的,包括是否允许学生简单,方便使用,该请求的响应时间,对整体质量的主图像,整体的布局的质量。
3.3 系统可行性分析
技术可行性:
(1)硬件可行性分析
系统的硬件要求方面不存在特殊的要求,只需要在普通的硬件配置就能够轻松的实现,只是需要确保系统的正常工作即可,以及拥有较高的效率。如果有特别低的硬件,它可以导致系统的低性能以及效率低,从而导致整个网站的运行不顺畅。以目前普遍的个人计算机的配置而言,这是十分容易实现的 。因此,本系统的开发在硬件方面是可行的。
提供完整的技术支持和保护,确保网站的稳定,安全运行,提供24×7和24小时技术支持项目完成提供主要的服务器系统安全及时的通知和更新服务。
(2)软件可行性分析
提供一个共同的机制类似的借口动态模型,设计更集中。此外,代码复用,也可以很好的体现。因此,考虑到系统的实际情况,选择小程序作为本系统开发技术。通过上述分析,该系统的设计实现在软件方面是可行的。
因此,我们进行了两个方面的可行性研究,可以看出,该系统的开发是没有问题的。
3.4经济可行性
系统是基于小程序语言开发的软件,所以系统在开发人力、财力要求不高,具有经济可行性。
3.5操作可行性:
本校园水电费管理小程序采用java语言,利用网络就能够进行访问和操作,且界面简单易操作,学生只要平时有在用智能手机并连接到网络,都能进行访问和操作。
本校园水电费管理小程序具有易操作、易管理、交互性好的特点,在操作上是非常简单的。因此本系统可以进行开发。
3.6系统流程和逻辑
系统业务流程图如图所示:
图3-1登录流程图
图3-2添加信息流程图
图3-3注册信息流程图
4系统概要设计
4.1 概述
本系统基于Web服务模式,是一个适用于Internet环境下的模型结构。只要学生能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:
图4-1 系统工作原理图
4.2 系统结构
本系统架构网站,本系统的具体功能如下:
图4-2系统功能结构图
系统结构图,如图4-4所示:
图4-4:系统结构图
4.3. 数据库设计
4.3.1 数据库实体
管理员信息属性图如图4-5所示。
图4-5 管理员信息实体属性图
学生缴费信息实体属性图如图4-6所示。
图4-6学生缴费信息实体属性图
教师缴费信息实体属性图如图4-7所示。
图4-7教师缴费信息实体属性图
学生信息实体属性图如图4-8所示。
图4-8学生信息实体属性图
4.3.2 数据库设计表
此系统需要后台数据库,下面介绍数据库中的各个表的详细信息。
表1:jiaoshi表
列名 | 数据类型 | 长度 | 约束 |
---|---|---|---|
id | bigint | 19 | NOT NULL |
addtime | varchar | 2000 | NULL DEFAULT |
gonghao | tinyint | 2 | NULL DEFAULT |
mima | decimal | 2 | NOT NULL |
xingming | int | 9 | NOT NULL |
xingbie | int | 9 | NOT NULL |
qinshi | datetime | 0 | NULL DEFAULT |
dianhua | datetime | 0 | NULL DEFAULT |
youxiang | datetime | 0 | NULL DEFAULT |
zhaopian | datetime | 0 | NULL DEFAULT |
表2:jiaoshijiaofei表
列名 | 数据类型 | 长度 | 约束 |
---|---|---|---|
id | int | 11 | NOT NULL |
addtime | varchar | 255 | NOT NULL |
nianfen | varchar | 255 | NOT NULL |
yuefen | varchar | 2 | NOT NULL |
gonghao | varchar | 2 | NOT NULL |
xingming | varchar | 2 | NOT NULL |
zhaopian | varchar | 2 | NOT NULL |
qinshi | varchar | 2 | NOT NULL |
leixing | varchar | 2 | NOT NULL |
yongliang | varchar | 2 | NOT NULL |
jine | varchar | 2 | NOT NULL |
riqi | varchar | 2 | NOT NULL |
表3:sushexinxi表
列名 | 数据类型 | 长度 | 约束 |
---|---|---|---|
id | int | 9 | NOT NULL |
addtime | char | 5 | NOT NULL |
sushelouhao | char | 5 | NOT NULL |
susheleixing | char | 5 | NOT NULL |
susheleibie | char | 5 | NOT NULL |
sushemingcheng | char | 5 | NOT NULL |
sushezhuangtai | char | 5 | NOT NULL |
表4:xuesheng表
列名 | 数据类型 | 长度 | 约束 |
---|---|---|---|
id | int | 9 | NOT NULL |
addtime | char | 5 | NOT NULL |
xuehao | char | 5 | NOT NULL |
mima | char | 5 | NOT NULL |
xingming | char | 5 | NOT NULL |
xingbie | char | 5 | NOT NULL |
qinshi | char | 5 | NOT NULL |
dianhua | char | 5 | NOT NULL |
youxiang | char | 5 | NOT NULL |
zhaopian | char | 5 | NOT NULL |
5系统详细设计
本系统使用了java和mysql结合的结构开发了校园水电费管理小程序应用,系统中所有和数据库有关系的操作都通过一个通用类来实现,大大提高了代码的耦合性,当数据库类型等信息变化后直接修改类文件就可以了,不再需要每个页面都修改。另外本系统解决了中文的问题,也是在配置文件中添加了编码方式的形式解决的,本系统另外一个大的特点是系统对数据库的操作都单独的写在了一个类里,这样对系统的所有数据库操作都只访问这个类就可以了,不要每个页面都去写数据库的操作,提高了系统的集成性。
5.1学生前端功能模块
学生注册,在学生注册页面可以填写学号、密码、姓名、性别、寝室、电话、邮箱、照片等信息,进行注册如图5-1所示。
图5-1学生注册界面图
学生登录,在学生登录页面填写账号、密码进行登录如图5-2所示。
图5-2学生登录界面图
学生登录到校园水电费管理小程序可以查看首页、我的等内容进行相对应操作,如图5-3所示。
图5-3首页功能界面图
公告信息,在公告信息页面可以填写标题、简介、内容等信息进行提交,如图5-4所示。
图5-4公告信息界面图
在我的页面可以填写学生缴费等信息,并可根据需要进行提交,如图5-5所示。
图5-5我的界面图
在用户信息页面可以填写学号、密码、姓名、性别、寝室、电话、邮箱、照片等信息,并可根据需要对用户信息进行保存、退出登录,如图5-6所示。
图5-6用户信息界面图
在学生缴费页面可以填写年份、月份、学号、姓名、照片、寝室、类型、用量、金额、日期、是否支付等信息,并可根据需要对学生缴费进行支付,如图5-7所示。
图5-7学生缴费界面图
5.2教师前端功能模块
教师登录,在教师登录页面填写账号、密码进行登录如图5-8所示。
图5-8教师登录界面图
教师登录到校园水电费管理小程序可以查看首页、我的等内容,如图5-9所示。
图5-9首页功能界面图
我的,在我的页面可以填写教师缴费等信息进行提交,如图5-10所示。
图5-10我的界面图
在用户信息页面可以填写工号、密码、姓名、性别、寝室、电话、邮箱、照片等信息,并可根据需要进行保存、退出登录,如图5-11所示。
图5-11用户信息界面图
在教师缴费页面可以填写年份、月份、工号、姓名、照片、寝室、类型、用量、金额、日期、是否支付等信息,并可根据需要对教师缴费进行支付,如图5-12所示。
图5-12教师缴费界面图
5.3管理员后端功能界面
管理员通过填写用户名、密码、角色进行登录如图5-13所示。
图5.13管理员登录界面图
学生管理,通过填写学号、密码、姓名、性别、寝室、电话、邮箱、照片等信息进行详情、修改操作,如图5-14所示。
图5.14学生管理界面图
宿舍信息管理,通过填写宿舍楼号、宿舍类型、宿舍类别、宿舍名称、宿舍状态等信息进行详情、修改、删除操作,如图5-15所示。
图5-15宿舍信息管理界面图
教师管理,通过填写工号、密码、姓名、性别、寝室、电话、邮箱、照片等信息进行详情、修改、删除操作,如图5-16所示。
图5-16教师管理界面图
学生缴费管理,通过填写年份、月份、学号、姓名、照片、寝室、类型、用量、金额、日期、是否支付等信息进行详情、修改、删除操作,如图5-17所示。
图5-17学生缴费管理如图所示。
教师缴费管理,通过填写年份、月份、工号、姓名、照片、寝室、类型、用量、金额、日期、是否支付等信息进行详情、修改、删除操作,如图5-18示。
图5-18教师缴费管理界面图
校园公告,通过填写标题、简介、图片等信息进行详情、修改、删除操作,如图5-19所示。
图5-19校园公告界面图
轮播图;该页面为轮播图管理界面。管理员可以在此页面进行首页轮播图的管理,通过新建操作可在轮播图中加入新的图片,还可以对以上传的图片进行修改操作,以及图片的删除操作,如图5-20所示。
图5-20轮播图管理界面图
6 系统测试
6.1 测试理论
软件系统测试的目的是通过测试找出在程序中的存在的错误信息和阻碍程序正常运转的安全隐患。这同时也是每一个系统软件测试的主要的规定,软件系统的应用过程中,发现一个重要的错误也是极具有很大的影响力的,一个好的测试的方案就为发展程序中存在的重大问题的;同样,一个成功的测试方案也就发现了迄今为止尚未发现的一个重要错误的测试。
软件测试的主要的好处就是为了让软件的运行情况更好,让学生的使用的过程中更加的满意。在软件工程中,软件测试是一个十分重要环节,在交付学生使用最终的软件之前,软件测试就是一个检验的过程,主要针对的是软件的软件设计开发、需求分析、系统编码各阶段结果的一个检验过程。
软件测试应遵循的原则如下:
(1) 软件测试要尽快的进行并且整个测试部分要是在整个软件开发的各个过程和细节。在发现了错误的情况下,立刻处理,这样会大大的减少软件的开发成,提高软件的质量。
(2) 在关于软件的各种测试中,例如测试的过程中使用的计划、报告等等要做到妥善的处理和保管,主要目的就是为了方便将来的对系统的维护。
(3) 群集现象是应该得到高度重视的,在软件的整个测试的过程中。就是在整个测试的过程中发现了错误的主要地方很有可能是就很多的错误的聚集的地方,所以要对这样的部分给予特殊的照顾。
(4) 对于软件的测试要尽量不要软件的设计开发人员或是机构,而是要另一方来进行测试程序,这样也是为了保证软件的测试结果的客观性以及公平公正性。
(5) 对于整个测试计划要严格的按照一定的规则来进行软件测试。
(6) 关于软件测试的过程中的用例应该是预期结果以及之前输入的数据信息构成,输入条件中的要考虑的有合理和不合理的因素都要考虑到,这样也是为了更好的帮助开发的人员更多的发现软件中存在的错误。
(7) 对于整个的测试结果进行全面的检查,尽量避免出现重复的错误。
6.2 测试方法及用例
1、功能测试
从学生的角度来看,测试时不了解新开发软件的内部结构,因此可以将系统与黑匣子进行比较,盲目输入后可以查看系统给出的反馈。这种测试属于黑盒测试,在测试中如果输入错误信息系统会报错。
2、性能测试
测试软件程序的整体状态(称为性能测试)通常使用自动化测试工具来检测系统的整体功能,在负载和压力测试之间进行划分,在某些情况下,将两者结合起来。虽然压力测试可以检测到系统可以提供的最高级别的服务,但是负载测试可以测试系统如何响应增加的负载。
在对系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个系统开发所牵扯的该问题都必须一一解决,提高系统的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽了解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
测试用例:
表6.1 学生注册测试用例
用例编号 | UC-TEST-001 | 测试名称 | 学生注册 |
---|---|---|---|
前提条件 | 学生注册 | ||
步骤 | 操作描述 | 数据 | 期望结果 |
1 | 点击学生注册查看详情按钮 | 无 | 跳转到学生注册详情 |
2 | 点击添加按钮 | 无 | 跳转到添加页面 |
3 | 选中添加后按钮 | 无 | 跳转到学生注册页面 |
测试说明 | 学生未登录时到步骤3跳转到登录页面 | ||
测试结果 | 成功 | 测试人 |
表6.2 登录测试用例
情况 | 用户名输入 | 密码输入 | 期望结果 |
---|---|---|---|
15546219225 | 1244566 | 提示“用户名或者密码错误,或账号未经审核” | |
(2) | aaaaa | 123456 | 提示“用户名或密码错误,或者账号未经审核” |
(3) | 15546219225 | hangguowei | 登陆成功 |
6.3测试结果
测试后得到的性能和用例,系统具有足够的正确性、可靠性、稳定性,并且可以对输入数据进行准确的点击操作处理和响应测试学生的体验也得到了很好的反馈和响应时间。合理的范围,可以兼容所有主流浏览器,设计所需的效果。
结论
校园水电费管理小程序的设计,通过互联网来解决实现信息化的网站系统,通过我四年所学的所有专业知识整合一起,进行对校园水电费管理小程序进行开发设计,当然在真正着手来做的时候遇到了很多问题,一个是网站的技术问题,一个是自己之前没有单独开发过程序,动手实践比较少,面对问题的同时,自己的自信心也受到了一些打击,不过我也是快速的调整自己的状态,老师与同学讨论的方法解决了所有的困难。
毕业设计是我们所学知识应用的最佳体现,也是在考核我们四年中所学的所有的专业知识及技术应用情况,通过这样毕业设计可以更好的得到锻炼及对所学知识的复习及运用,也是一种训练和实践。校园水电费管理小程序的实现,不仅巩固了我以前的知识,还对学到的知识通过结合技术进行详细了解,还结合了对跨学科效果的深入理解。
在以后我的工作中,我仍然会继续努力我的计算机方面的技术,让我在后期的平台开发中可以更好更快的实现需求功能。我相信自己可以胜任更多的好工作并在工作领域做出更大的贡献。
回顾毕业设计的整个过程,既付出了努力与汗水也收获了很多难以忘怀的美好经历。虽然在系统开发过程中经历了各种各样的困难,自己也在不断研究与探索,可是系统的实现仍有许多不足之处。但是经过系统编程工作让我有了更多的信心,我相信在未来的路上,我会走的更好。