本系统服务端使用java开发,版本为jdk1.8
小程序使用的是wxml、wxss、javascript
数据库采用mysql5.7
使用到的技术有springboot,mybatis,gradle,poi,微信开发者工具
摘 要
在日趋信息化的互联 时代,我们通过互联 的技术和思维,信息化的方法进行设计并实现一套考勤系统的需求显得格外重要。目前国内高校的考勤方式中,以传统的到场点名方式为主,这种方式的考勤占用了大量的课堂时间,同时存在代答到的现象,随着课堂人数的增加,这种低效率的考勤方式将不再适合高校课堂。
本系统基于微信小程序平台,前端使用了WXML、JavaScript语言编写,逻辑层使用了Java编写,借助于微信开发平台提供的微信开发者工具和 JetBrains公司提供的IntelliJ IDEA进行开发和调试,通过地理位置信息以及验证码的校验来实现课堂考勤。
本系统在课堂考勤中准确率和效率相对于传统的点名方式更高,操作简单,实用性强,适应于多平台,开发成本低,系统可靠性高,且能满足高校课堂中考勤的需求。
关键词:微信小程序;高效课堂;考勤效率;定位
Abstract
In the general developing information internet age, the demand for designing and attaining a series of checking system by Internet technology and logical mind is extremely matter. Currently, the domestic colleges and universities mainly rely on traditional name-checking-way to check on students’ attendance, which occupies plenty of class time in vain. Meanwhile, also existing the phenomenon of replacing the calls. As the class size increases, such the low efficient checking way will no longer suitable for college-teaching model any more.
The system based on platform of WeChat Mini Program, and use WXML, JavaScript to compile. With Java compile in the logic layer. Drawing support on WeChat development platform and IntelliJ IDEA provided by JetBrains company to develop and debug. Meanwhile, using geography site information and identifying code to achieve class-checking.
The accuracy rate and efficiency of system is much better than traditional way, besides, it’s feasible to develop and practice. It’s suitable for most platforms with low development costs, will be able to satisfy the checking demand.
Key Words: WeChat Mini Program; university classroom; attendance; geography site information
目录
1 绪 论
1.1 课题背景
1.2 国内外现状分析
1.3 主要研究内容及组织结构
1.3.2 论文整体框架
2 相关技术介绍
2.1 微信小程序介绍
2.1.1 微信小程序发展史
2.1.2 小程序的特点
2.2 系统开发环境
3 系统需求分析
3.1 系统可行性分析
3.1.1 技术可行性
3.1.2 经济可行性
3.1.3 操作可行性
3.2 系统需求分析
3.2.1 功能需求分析
3.2.2 非功能需求分析
4 系统设计
4.1 系统设计
4.1.1 系统功能设计
4.1.2 系统流程
4.2 数据库设计
4.2.1 概念设计
4.2.2 逻辑设计
5 系统实现
5.1 系统前端的实现
5.1.1 总体页面的实现
5.1.2 “我”页面的实现
5.1.3 “首页”页面的实现
5.1.4 “签到”页面的实现
5.2 系统逻辑层的实现
5.2.1 系统登录功能的实现
5.2.2 签到功能的实现
5.2.3 导出功能的实现
5.3 系统测试
5.3.1 系统功能测试
5.3.2 系统界面及窗体测试
6 结 论
参考文献
1 绪 论
1.1 课题背景
作为监督学生出勤、提高教学质量的重要环节,课堂考勤在高校日常教学生活中起着十分显著的作用。当前多数高校会采取的相同专业合班教学,教室内学生很多,如果依旧使用传统的纸质名单签到点名、以学生答到的传统考勤方式,难以避免学生代答到的情况,而且要浪费很多课堂时间在点名上。对于学生们来说,这样并不能起到很好的监督作用,对于学校和老师们来说,这种考勤方式需要浪费很多不必要的时间,而且还不能保证考勤结果的准确性。随着课堂中人数的增多,依赖点名的考勤方式缺点逐渐凸显出来。所以,将信息技术与互联 +的思维相结合,开发一套基于微信小程序的课堂考勤系统,用于简化大学课堂考勤变得越来越有必要。一个操作简单、效率高的考勤系统不但可以监督学生按时上课,提高学校的教学质量,还可以帮助学校了解学生的出勤情况[1]。
微信作为一个即时通讯类手机APP,它拥有非常高的使用率和装机率,微信发布的微信小程序功能,以其优秀的体验,倍受开发人员喜爱。微信小程序平台为开发人员提供了非常多的应用程序API,许多原本只能够以手机APP形式使用的功能,现在开发人员都能够通过微信开发者工具设计并开发。
随着科技的进步,人工智能和深度学习在各个领域的广泛使用,越来越多的公司和工厂使用人脸识别打卡考勤,但是在高校环境中人脸识别考勤并不能很好的发挥作用[2]。通过互联 +的思维,将小程序的提供的地理定位与小程序进行结合可以很大程度的解决高校以往考勤方式效率低下的问题,并且可以很大程度提高课堂考勤的可信度。
1.2 国内外现状分析
现在我国很多大、中、小型单位已经不再继续使用纸质签到或点名的方式考勤,随着智能办公硬件与软件的逐渐完善,很多新的员工考勤的解决方案得到了推广。但是,先在还没有一种可以在大多数高校中使用的、成本比较低的考勤方式,来达到高校课堂考勤的需求。调查发现,目前大学课堂考勤的实现方法主要有以下几种方式。
(2) 以NFC为主的考勤:一些开发者基于NFC技术开发了基于校园一卡通的考勤系统。这种考勤方式适用于不能携带手机的场合,且需要专用读卡设备进行验证。
(3) 以蓝牙设备为主的考勤:如物联 、射频识别(RFID)技术、蓝牙、iBeacon(苹果公司研发的低功耗蓝牙技术)等。有开发者提出使用iBeacon技术的课堂考勤系统,使用蓝牙的考勤方式可以通过支持iBeacon的设备进行签到[4],但是需要提前铺设iBeacon设备,维护成本比较高,而且在通信过程也存在安全隐患。有开发者在Android平台开发了一套基于蓝牙的考勤系统,但然而这个系统只支持Android平台,如果学生使用苹果设备则不能使用,不具备普适性。上述三种考勤方式都是通过移动设备或便携设备作为识别的主体[5],对学生身份的识别不准确,与传统点名方式相同,不能有效解决学生之间代替考勤的问题。
(4) 基于生物特征识别考勤:这种考勤方式主要通过识别人类本身的生物特征,比如指纹和人脸,可以唯一识别一个人。一些开发者将指纹识别技术用于高校课堂考勤[6],但这种考勤方式必须使用专门设计的指纹识别机器。除此之外,还有开发者提出使用虹膜识别技术进行课堂考勤,虽然这样准确率非常高,但是准备这样的虹膜识别设备不仅会耗费很高的成本,而且实施起来也比较困难 [7]。
1.3 主要研究内容及组织结构
(2) 对于考勤定位系统有一定的环境限制,比如如何控制定位的精度,在考虑国内的大部分高校教室大小后,得出60米考勤精度范围,在考勤成本与考勤准确性之间形成契合点。
1.3.2 论文整体框架
第二章为本系统使用的相关技术以及开发平台的介绍。本系统使用了腾讯提供的微信小程序进行开发,结合了智能手机的地理定位技术,并且使用了多种API进行开发,为了方便更好地理解全文,本章节主要阐述了本系统开发过程中涉及的相关技术。
第三章为系统分析。本章使用软件开发过程中常用的需求分析法,剖析了该系统的功能需求和非功能需求,从多个角度对系统进行了可行性分析,并且介绍了系统结构,绘制了系统运行的流程图[8]。
第四章为系统设计。本章通过图表的方式介绍了该系统数据库的概念设计和逻辑设计,对系统的相关功能进行了介绍。
第五章为系统实现。本章按照系统开发流程对系统的各个功能具体的实现方法作了简要介绍,给出了核心功能的主要实现代码,并对系统的各项功能进行了测试,本章系统测试部分给出了测试方法以及测试数据。
2 相关技术介绍
本系统是依据腾讯的小程序开发文档,前端开发使用了腾讯提供给开发者的的微信开发者工具。前端视图使用了微信特有的WXML和WXSS语言进行开发,逻辑层则是使用了JavaScript和Java语言进行开发,数据库使用了比较流行的关系型数据库MySQL。调用了微信小程序的位置获取API,用来判断签到者是否符合签到条件,本章分别介绍了微信小程序及开发环境。
2.1 微信小程序介绍
如今,微信以其优异的性能和便捷性已经变成了人们日常生活必不可少的即时通讯软件。在2018年,微信的使用超过了120亿人次[9],微信中的小程序功能提供的技术与平台,使我们的生活逐渐变得便捷。
2.1.1 微信小程序发展史
微信最初发布的JS API(JavaScript Application Programming Interface,JavaScript 应用程序编程接口),是微信小程序的前身,依赖于微信强大的 交平台,使得微信内置的浏览器成为移动互联 的一个非常重要的入口[10]。到了2015年初,微信公布了一套叫做JS-JDK的 页开发工具包,开发者可以利用微信本身的功能,使得微信应用开发者可以轻松调用更多的接口,从而给用户带来更多的惊喜。接着,为了让所有开发人员都可以在微信的开发上获得更好的体验,微信就推出了如今的微信小程序。
2.1.2 小程序的特点
(1) 微信小程序不需要下载,用户首次可以直接通过扫描小程序码或者微信顶部的搜索来进入小程序,当用户需要再次使用时,只需打开微信,在微信的主页下拉即可进入小程序。不需要像传统的手机APP那样去下载安装,更没有甚至长达几分钟的下载与安装过程,只需扫描二维码,小程序就会像 页一样被加载出来,使用结束后退出即可,完全不必担心应用的内存占用问题。如果用户不在需要小程序,在小程序列表中长按小程序即可选择删除,不会像手机APP那样产生卸载残留。
(3) 在使用体验上,小程序相比较传统的手机APP也不差。小程序比传统的 页使用体验更好,它使用了WebSocket双向通信以及本地缓存技术[11],这样一来,微信小程序的使用感受更加接近了传统的手机APP,小程序开发人员在写代码的过程中,可以直接调用各种API,不用考虑兼容的问题,这点与传统的web开发相比,优势很明显,可以让开发者更加关注于如何将内容更好地呈现给用户。
(4) 微信小程序可以满足更多的使用场景,可以实现更多的功能。相比较传统的HTML5,得益于微信的支持,小程序可以使用更多的手机系统的API[12],比如定位模块、手机传感器模块、摄像机模块和蓝牙。
2.2 系统开发环境
使用微信小程序平台开发的小程序,有不止一种可以选择的集成开发环境,本系统则是通过腾讯提供的微信开发者工具进行前端视图的开发,以及开发完成后的功能测试。逻辑层则是采用IntelliJ IDEA进行Java代码的编写和各单元代码的测试。一个良好的开发环境不但可以提高开发者的效率,在后期的功能测试过程中,也可以更好、更准确的进行功能的测试。表4-1为本系统的开发以及调试过程中使用的具体环境及其配置。
表4-1 开发环境
系统 |
品牌 |
系统版本 |
处理器 |
RAM |
工具 |
版本 |
Windows |
惠普 |
Win10 |
i5-7200u |
8G |
IDEA 微信开发者工具 |
2017.3 v2.13.1 |
Android |
小米 |
Android 10 |
骁龙855 |
8G |
微信 |
8.0.1 |
iOS |
Apple |
iOS 14 |
A12Z |
6G |
微信 |
8.0.1 |
3 系统需求分析
本章主要从技术、经济以及操作的角度上分析了该系统的可行性,以及本系统在开发过程中需要考虑的功能需求等。
3.1 系统可行性分析
本系统的开发主要使用用户为大学教师与学生,使用场景为大学课堂,面向当前大学课堂的日常考勤,结合全球定位技术、二维码技术并给予微信小程序开发,解决了课堂考勤系统的空缺。本小节将从以下三个角度详细分析本系统在高校课堂上的可行性问题。
3.1.1 技术可行性
软件部分,视图层使用了基于微信开发文档的WXML、WXSS,逻辑层使用了ES6的JavaScript、和JDK1.8版本的Java。使用微信小程序开发工具进行JavaScript和WXML代码的编写,使用IntelliJ IDEA进行Java代码的编写,这样可以更加高效的进行代码编写和编译调试。同时微信小程序还开放了功能齐全的各种API供开发者调用,其中包括位置获取的API,可以判断考勤者的考勤位置。
硬件部分,本系统只需要安装有微信APP的手机(包括但不限于Android、iOS、WP系统)即可运行,运行过程中需要 络连接,我国的通信 络信 目前在高校已经达到了全面覆盖,为本系统的实现打下了基础。
3.1.2 经济可行性
开发过程中无需使用任何收费软件,本系统只需一部普通智能手机,任何品牌、任何系统都可以,然后在手机上安装微信即可,也不需要其他任何设备辅助。小程序在使用过程中产生的流量费用,由运营商收取,除此之外不会有其他成本产生。
3.1.3 操作可行性
使用该系统只需教师和学生打开微信小程序即可,并且授予小程序运行过程中所需要的权限即可,填写相应的资料。教师端填写课程及教室 ,学生端搜索加入即可,下一次无需重复此步骤,教师端发起签到,学生端进入签到,填写由教师端告知的校验码即可签到,操作便捷,无冗余步骤。教师端可以查看出勤名单,同时也可以导出考勤名单,便于考核平时成绩。
3.2 系统需求分析
需求分析环节是系统开发中的必要环节。在该环节,通过对本系统的功能需求与非功能需求进行分析,来探讨本系统需要实现哪些。
3.2.1 功能需求分析
本系统的各项功能,主要是面向当前高校的教师和学生,目的是解决以往课堂中存在的考勤效率低、准确率低等问题。在本系统中,老师可以使用微信小程序开启或者关闭签到,在签到结束后,也可以查看签到结果。
第一次进入小程序后会获取用户信息,需要用户选择相应的角色,选择角色后由教师端添加教室信息,学生端可搜索加入教室,进入教室后即可开始发起考勤,第二次进入小程序无需重复加入。老师通过小程序查看和导出学生的考勤名单。
3.2.2 非功能需求分析
表3-1为本系统的性能需求分析。
表3-1 系统性能需求
需求名称 |
详细要求 |
可靠性 |
运行流畅,处理时间在可接受范围内 |
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
【餐厅点餐平台|一】项目描述+需求分析
上一篇
2022年7月16日
Pycharm中利用arcpy实现灯光遥感数据的建成区批量提取
下一篇
2022年7月16日
|