APP下载

基于微信的考试系统设计与实现

2015-11-24覃俊杰高翔黄金春

大众科技 2015年12期
关键词:中医药大学管理员广西

覃俊杰高 翔黄金春

(1.广西中医学校信息中心,广西 南宁 530001;2.广西中医药大学信息网络中心,广西 南宁 530022;3.广西中医药大学图书馆信息技术部,广西 南宁 530022)

基于微信的考试系统设计与实现

覃俊杰1高 翔2黄金春3

(1.广西中医学校信息中心,广西 南宁 530001;2.广西中医药大学信息网络中心,广西 南宁 530022;3.广西中医药大学图书馆信息技术部,广西 南宁 530022)

文章以设计广西中医药大学中医内科学考试系统为背景,介绍了如何使用SAE云计算平台作为后台服务器并且同时运用Servlet技术对微信公众平台进行消息响应的机制来设计的微信考试系统。实践证明该系统能满足中医内科学平时测试和练习的需求。

微信考试;Servlet技术;缓存技术

1 引言

目前很多高校还在使用传统的纸质试卷对学生进行考核。纸质考核需要投入大量的人力物力进行组卷、评分,已经不符合当前社会对考试方式的需求了[1]。因此,人们把焦点转向了基于WEB的网络考试系统,相对来说比原来的考试系统更进一步。当前随着人们对移动终端设备的持有量大大增加,迫切需要一个能随时随地考试和练习的平台,因此,基于微信的网络考试系统必将成为考试的一个重要分支[2]。

2 系统实现

2.1系统功能模块设计

本系统的功能模块主要有考试模块和练习模块两大模块组成如图 1所示。考试模块提供了绑定、抽题、评分、计时四个功能。系统根据用户所绑定的身份来给用户权限,绑定了管理员身份的用户可以进行抽题、计时、结束操作,但是绑定了学生身份的用户只能进行考试。练习模块提供了绑定、抽题、评分、计时、统计五个功能。练习模块也需要用户绑定身份,但是与考试模块不同的在于练习模块会立即给出正确答案和解释,并且将用户做错的题目进行统计,用户可以在练习结束之后查看自己做错的题目。

图1 系统模块和功能

2.2数据库构成

2.2.1题目表

本系统中的试题分为三大类的试题,分别是选择题、判断题、填空题,由于目前的技术无法实现计算机自动批阅主观题,因此本系统中并无主观题的设计[3]。其题目表结构如表1所示。

表1 题目表结构

2.2.2用户表

表2 管理员表结构

表3 用户表结构

3 关键技术实现

3.1系统总体流程设计

本微信考试系统流程如图2所示:

图2 系统总体流程

其流程具体来说即为管理员绑定微信号——学生绑定微信号——管理员开始抽题——学生开始答题——评分模块统计——考生交卷——显示考生成绩。

3.2绑定功能实现

在微信公众平台中,微信号是唯一识别每个用户的依据,因此在使用考试系统之前就需要将用户的学号和微信号绑定在一起,方便对学生进行管理,所谓绑定即用户将会把自己的微信号与学号或者管理员账号绑定在一起。当用户回复“绑定学生”或“绑定管理员”关键词时,系统将会进入绑定功能。系统首先将用户回复的用户名和密码从消息中提取出来,并且分别赋予stu和pass两个变量中。之后系统实例化一个BoundUser对象,将用户名、账号、密码三个参数传递给这个对象的BoundUserNameToStuName方法。其核心代码如下:

系统通过update语句对用户(user)表进行更新,如果账号密码正确则更新user表,自此绑定成功。

3.3计时功能

考试都应该是在规定时间内完成,基于微信模式的考试也不例外,即要实现计时功能。但由于微信公众平台每次都从接入的方法开始顺序的执行代码,因此计时器实现并不容易。经研究发现系统缓存存在服务器内存中,具有一次初始化便可多次使用且不受微信结构化读取代码限制的特点,因此考虑可以使用系统缓存作为计时器。

具体实现方法是在考生回复“考试”时,系统将“考试”写入缓存并且给缓存加入有效时间限制,具体代码如下:

以上代码为初始化考试的过程,在此过程中系统构造了一个字符串”’isOver‘+fromUserName”作为缓存变量名,值为”isAlive”意味考试没有结束,在创建这个变量的时候系统加入了缓存存在的时间,此缓存与考试同在,当缓存被清零时即表示考试结束。并且考生答题的时候,每次答题系统都会检查”’isOver’+fromUserName”这个缓存变量,当这个变量清空之后,系统自动结束考试[4],代码如下:

3.4统计功能

统计功能分为分数统计和错题统计两种,分数统计用于统计用户考试和练习时所得的分数并存入数据库中;错题统计是把做错的题记录到数据库中,用户在练习完成后,回复“查看错题”关键字来查看上一次练习时做错的题目。

4 总结

基于微信的考试系统是比较新型的一种考试方式。在移动客户端高速更新换代的今天,功能将越来越强大,能完成的任务也越来越复杂,因此人们非常乐于接受这种能够随时随地练习和考试的系统。该系统相比于其他考试系统有很大不同,主要体现在:

(1)使用 SAE云服务器作为后台服务器,稳定性强,部署简单;

(2)基于微信公众平台开发,符合学生使用习惯;

(3)使用移动网络,而不是有线网络,学生可以随时随地的进行自测和练习。

[1] 刘红军.基于 B_S三层架构的标准化考试系统的设计与实现[D].青岛:中国海洋大学,2005.

[2] 洪学银.高等职业院校网络考试系统的设计与实现[D].沈阳:东北大学,2008.

[3] 顾洪博.智能化网络试题库系统的研究与实现[D].大庆:大庆石油学院,2004.

[4] 鄢涛.基于 B_S模式的通用无纸化考试系统的设计与实现[D].成都:电子科技大学,2005.

Design and implementation of online examination system based on WeChat

To probe the use of SAE cloud computing platform as a backend server in the We Chat test system for the exam of Internal Medicine of Traditional Chinese Medicine in Guangxi University of Chinese Medicine, in application of the Servlet technology with Message Control Mechanism in the WeChat public platform. The outcome showed the test system can meet the need of the daily use, including testing and practicing in the subject of Internal Medicine of Traditional Chinese Medicine.

We Chat test system; Servlet technology; caching technology

G64

A

1008-1151(2015)12-0018-03

2015-11-10

覃俊杰(1990-),男,广西柳州人,广西中医学校信息中心工程师,研究方向为现代化教育。

猜你喜欢

中医药大学管理员广西
陕西中医药大学附属医院肾病二科简介
我是小小午餐管理员
《江中中医药大学学报》简介
我是图书管理员
我是图书管理员
可疑的管理员
广西尼的呀
中医药大学本科生流行病学教学改革初探
湖北中医药大学
广西出土的商代铜卣