基于Android的在线考试练习系统设计与实现
2015-04-29张思吴开诚廖恩阳
张思 吴开诚 廖恩阳
摘 要: 在校大学生需要参加各类考试,如:课程考试、计算机等级考试、英语4/6级考试、教师资格考试以及考研等。目前针对在校学生的移动考试练习服务还不多见,为此设计并开发了一款基于Android平台的移动在线考试练习系统。将移动终端作为一种功能强大的教学工具,为大学生提供了一种自主学习的在线服务,使他们可以充分利用零碎时间,随时随地进行考前测试练习。
关键词: Android; 在线考试练习; 移动学习; 自主学习
中图分类号:TP311 文献标志码:A 文章编号:1006-8228(2015)03-27-03
Abstract: At present, the university students have to participate in various examinations, such as courses' examination, computer rank examination, CET 4/6 examination, teacher qualification examination and postgraduate qualification examinations. Mobile education services are still rare in the markets for students' practice. The online exam practice system is designed and implemented, which is based on Android platform. It changes the mobile terminal into a powerful teaching tool. It also provides online services for self-learning, so that students can take advantage of fragmented time and conduct exam practice tests at anytime, anywhere.
Key words: Android; online exam practice; mobile education; self-learning
0 引言
移动学习[1]最早是由美国加州大学伯克利分校的人机交互研究实验室提出,其特点是借助任何移动设备,利用互联网通信技术,在任何时间,任何地点为学习者提供学习机会。
近几年来,随着智能手机的发展和普及,在校大学生现在基本实现人手一部手机,但是现在学生拿起手机一般都在玩游戏、看视频、刷微博等,手机上有益于学生长远发展的服务还比较欠缺。虽然移动学习的硬件条件已经具备,但是软件应用还是不足以满足学生的需求。
1 设计方案
在线考试练习系统是为了给学生提供一个良好的课下自主学习、练习的环境。学生可以在该系统中进行综合测试或选择学习内容进行单元测试,了解自己的学习情况。教师可以在该系统中设置题库、添加试题,查看学生测试成绩和答题记录,掌握学生的学习情况。
系统是以Android移动平台为载体,借助于江汉大学计算中心的自主学习平台教育资源的支持而实现的。系统的平台总体架构支持C/S+B/S模式部署应用[2]。系统主要由四个基本功能模块组成:题库管理;抽题组卷;成绩管理;在线答题。系统模块如图1所示。
题库管理主要功能如下:
⑴ 题库基本信息定义:添加、修改、删除及查询题库。
⑵ 题库设置:设置题库中试题类型,分值和题量。
抽题组卷主要功能如下:
⑴ 试题管理:添加、删除、修改、查询及批量导入试题。
⑵ 预抽题:综合测试预抽题。
成绩管理主要功能如下:
⑴ 查看学生测试成绩。
⑵ 删除学生测试成绩。
⑶ 查看学生答题记录。
在线答题主要功能如下:
⑴ 单元测试:自选章节内容进行测试。
⑵ 综合测试:随机抽取综合测试题进行测试。
⑶ 查看成绩:查看测试成绩和答题记录。
通过使用本系统,希望能将传统的“课堂+多媒体”教学模式,过渡到“移动互联+学生自主学习+开放式自学方式”的模式,强化实践教学,提高教学效率和教学质量。把上课实验合并在多媒体实验室进行,增加基于移动互联网络的自主教学,建立课程教学网站,借助教学大纲、电子教案等素材,学生可以随时随地在网上完整地学习到一门课程;借助移动技术手段,达到与老师交流的目的;通过在线考试,检查学习情况;通过信息分享,满足学生的个性化需求。在学生使用平台过程中收集用户习惯,并对相关数据进行分析调研,总结学生的习惯和学习方法。建立计算机自主学习中心,利用自主学习中心实现自主学习模式各项内容。检验自主学习中心的使用效果,总结自主学习模式[3]的优点及缺陷。
2 实现方法
2.1 服务器端实现
服务器端主要负责移动学习平台的学习知识点、考试题库和成绩记录的管理工作。服务器端的实现采用Tomcat服务器+MySQL数据库+Spring技术框架。数据处理方式是通过反射机制,生成相应页面的数据,供客户端调用。客户端不直接与数据交互,必须通过控制中间层建立连接,再由中间层与数据进行交互。以下是具体被调用的相关内容及步骤。
⑴ 章节信息管理:在课程管理页面中,选中一条课程信息,然后点击【章节设置】按钮,进入章节管理页面,功能按钮包括添加、修改、删除、查询,输入框用于查询条件过滤,列表中显示章节信息。
⑵ 题库信息管理:功能按钮包括单元组卷、综合组卷、查询,输入框用于查询条件过滤,列表中显示题库信息。
⑶ 学生试题组卷:点击【测试系统】一级导航菜单,弹出测试系统页面,功能按钮包括单元组卷、综合组卷、查询,输入框用于查询条件过滤,列表中显示题库信息。
客户机端应用在Android ADT-Bundle集成环境下开发,支持Android手机和平板设备。客户机端与服务器端的通信是通过异步HTTP+JSON实现。此应用通过 HTTP请求实时与Web平台交互数据,包括登录验证、获取试卷列表、单元列表、题目列表等相关考试信息,以及向服务器提交答案并获取成绩。为了流畅的体验,程序采用异步HTTP请求方式,数据传输格式采用 JSON。采用JSON传输数据可以节省带宽,利于手机在带宽限制较高的环境(比如3G环境)下获得流畅的使用体验。异步HTTP基于Async-http开源项目[4]实现,此类库可以在Java应用程序中执行HTTP请求并异步处理HTTP响应。这个网络请求库是基于Apache Http Client库之上的一个异步网络请求处理库,网络处理均基于Android的非UI线程,通过回调方法处理请求结果。
本应用有别于其他同类型应用的主要特点是:异步处理HTTP请求,并通过匿名内部类处理回调结果;HTTP请求均位于非UI线程,不会阻塞UI操作;通过线程池处理并发请求,处理文件上传、下载,响应结果自动打包JSON格式,自动处理连接断开时请求重连。整个客户端有三个重要组件。
⑴ 应用页面
在Android应用程序中,页面基本单位是Activity,它是页面控件的呈现层,用于显示可视化的用户界面,以及响应界面事件,类似于网页或者桌面编辑中的Form(窗体),通常为一个单独的屏幕。本系统客户端应用主要由以下三个Activity构成:
① LoginActivity是负责登录和设置服务器地址页面;
② MainActivity是登录成功后,进入的考试列表页面,学员可以选择试卷及章节,开始考试;
③ ExamActivity是考试页面。
⑵ HTTP通信
在Android应用程序中,Service一般用于后台长期运行的应用,这种应用是没有界面的。在本系统中,RemoteService 是和服务器通信的类库,上面的三个应用页面Activity都通过此类库获得服务器端相关数据。
⑶ 显示控件
在本系统中,Activity获得JSON数据并解析后,先通过TextView,EditText等控件显示出来,然后在MainActivity 考试列表中以 ListView 的形式显示。其中单元选择是以对话框AlertDialog的形式显示。对于ExamActivity考试页面,一般主要处理三种题型,包括选择、判断、填空。对于整个试卷的布局是采用界面布局管理器中的相对布局方式处理,这样可以应对不同移动终端的不同显示分辨率。显示控件还能控制不同的题型显示不同的控件,如填空文本框EditView,选择题单元框RadioButton。
3 结束语
本系统的推出是为了进入移动教育领域,为学生的手机等移动终端应用提供一个更好的选择。在计算机公修课程教学中通过使用本系统,可以把授课和上机结合起来。学生可以充分利用零碎时间,随时随地进行考前测试练习。本系统体现了以学生为教学中心的指导思想,把“学与做”结合起来,通过“精讲多练”带动学生的学习积极性,优化教学效率。下一步研究的重心会放到数据分析和数据挖掘上,这样教师就可以很方便的看到学生学习的兴趣,以及学生学习过程中碰到的问题。有了强有力的数据分析,教师就可以进一步跟踪学生的学习情况。
参考文献:
[1] 卢江.基于智能手机的大学生移动学习调查研究[D].山西师范大学硕
士学位论文,2014.
[2] 武玉坤.基于Android移动学习平台的设计[J].计算机光盘软件与应
用,2013.1:20-21
[3] 刘砚秋,何灵敏,周杭霞,陆慧娟.基于自主学习的大学计算机基础教
学方法[J].计算机教育,2012.3:80-83
[4] 网络请求库.An Asynchronous HTTP Library for Android. http://
loopj.com/android-async-http/