在线考试系统APP的设计与开发研究

2022-10-15 15:53朱华汉
现代信息科技 2022年15期
关键词:考试系统学生

朱华汉

(深圳大学,广东 深圳 518060)

0 引 言

新冠疫情的持续影响,极大地促进了传统行业的数字化转型。疫情期间,在线考试等应用服务在维持社会经济正常运转等方面发挥了巨大作用,在线教育等数字服务受疫情影响呈现出蓬勃发展的趋势。数字化时代,随着5G和智能手机的快速发展,人们越来越热衷于电子书阅读,与此同时,在线考试系统也应运而生。在线考试系统不仅对提升学生的学习能力和减轻传统纸质试卷给学生带来的沉重负担具有独特意义,还能减轻教师出卷、阅卷等繁忙工作,甚至可以解决传统纸质试卷缺乏环保和增加成本等问题。美国是最早应用计算机和软件技术开发在线考试系统的国家,其主流的考试系统Sylvan Learning System Inc覆盖各专业和行业,而国内的在线考试系统参差不齐。本研究重点是通过在线考试生成错题库并统计答题时间、错题类型及尝试在考试过程中捕抓考生的神情状态,以此给学生提供针对性复习及报告学生学习能力欠缺点,大大节省了学生搞“题海战术”的时间成本。并进而提出开发一款在线考试系统APP的可行性分析报告,同时也进行开发研究。

1 需求分析

数字化时代,所有行业都值得被重做一遍。在过去一年里,我们看到了数字化的飞速发展,从政策层面、产业层面到技术创新层面,数字化的渗透速度非常快,这种渗透带来了对传统产业的赋能,也带来了通过数字化重构产业的机会。随着数字化的加速发展,深圳大学顺势而为建设“云端大学”——UOOC联盟在线教育平台,提供教学资源和师生培训等,这是我校在探索疫情防控常态化条件下混合教学取得的新成果。此外还有“腾讯会议深大教育版”等教学直播平台上线,它主要是面向本科的线上教学平台。因此,我提出在线考试系统平台的建设。在线考试系统可以结合UOOC联盟等在线教育平台使用。一方面,学生可以课后模拟考试,趁热打铁,加深对知识的理解和运用;另一方面,也适合教师期末考核学生。因此,在线教育直播平台与在线考试平台相融合具有独特的优势。

我在国内进行了一次主题为“关于手机的市场调研”的问卷调查,问卷调查反馈的结果如表1所列。从表1中可以看出,用户每天平均使用手机的时长约为6.8小时;大部分问卷人群为学生;问卷人群使用手机的主要目的排前三位的分别是:聊天沟通、看视频和学习;最多人首选的花钱项目是教育培训;用户更倾向于便利的线上学习。此外,俗话说:“活到老,学到老”。正所谓学无止境,年龄无限制,全民学习应该是一个潮流。从调查问卷分析可知,目前的主流手机软件是语音聊天功能的微信APP和短视频娱乐的抖音APP,排第三的最大需求是关于学习方面的,而国内尚缺少一个真正符合用户需求的学习软件。另外补充说明,可能存在部分调查对象不配合或其填写态度较随意的情况,样本数据的科学性和准确性还有待进行验证。

表1 问卷调查内容与比例

2 可行性分析

应用软件的开发必须基于操作系统功能,而对于操作系统市场,我的问卷调查中显示Android系统占据60%的市场份额,华为鸿蒙系统只有30%的市场份额。看几年前Gartner的数据显示,在2015年第四季,IOS的占有率为17.7%,而Android则继续是占有率最高的系统,高达80.7%,而两个主流系统加起来,就占去所有智能手机的98.4%,因此IOS和Android已经接近完全瓜分智能手机市场。

研究机构Strategy Analytics的数据表明,截至2021年6月,全球约有40亿人使用智能手机,这意味着将占据50%的全球人口。手机作为人们使用频率最高的电子产品,手机应用软件的开发具有很大的方便性和经济效益。据中国互联网络信息中心官网消息,截至2021年12月,我国网民规模达10.32亿,互联网普及率达73.0%,现有行政村已全面实现“村村通宽带”,2020年的报告显示我国手机网民规模达9.32亿,网民使用手机上网的比例达99.2%。而从职业结构上看,学生在我国手机网民群体中占比为23.7%,比例最高。

学习能力会随着老年化而下降,一般最佳的学习时间为学生时期。而中学的纸质资料过多容易成为学生的负担,搞“题海战术”更加疲惫,不具有科学性。在知识日新月异的时代,不少大学课程内容在学生毕业后就成为过时的知识,学生缺乏对知识的真正掌握和学习能力欠缺,传统纸质试卷不利于分析学生的成绩等。我国经济教育发展不平衡的国情导致我国的主要人才资源集中在东部、南部及沿海经济带,随着“双减”政策的实施,曾经校外培训的压力也可以很好地向在线方式发展。因此,开发一款符合需求的在线考试系统,它会成为学生的学习伙伴,比如你考试答题的时间过长但答题是正确的,考试系统会提醒你:有待提升阅读速度。这个功能在教育资源和人才缺乏的地区会是一个极大的需求。

3 技术综述

3.1 技术方案

手机应用软件的开发大概分为鸿蒙应用程序的开发、IOS开发和Android应用开发。IOS是由苹果公司开发的移动智能终端的操作系统,IOS的开发主要采用Objective-C语言和Swift语言在Xcode的开发环境上进行。而鸿蒙的开发环境是DevEco Studio,其开发语言是Java和JavaScript等。而对于Android系统而言,其开发系统平台有Windows、Linux和macOS,主要采用Java语言进行开发,而Android应用程序的开发环境(IDE)是采用Android Studio、Android SDK和JDK。JDK是包含了java的运行环境、工具集合和基础类库等内容的软件开发工具包。而Android SDK是在开发Android程序时,需要引入Android SDK工具包来使用Android相关的API。由于Android系统占据大部分智能手机市场,本文的开发研究将以Android版本为例。

3.2 Java语言

Java语言在2022年2月的TIOBE编程语言最新排行榜中排名第三,是面向对象程序设计的编程语言。封装性、继承性、接口、重载和重写是面向对象程序设计的特点。因此,Java程序活跃,更容易扩展,对软件开发的效率提升很多。另外,Java语言具有以下的优势:较强的灵活性,在编程设计时,Java编程语言可以有效适应软件的更新,充分利用其灵活性的优势,运用实时更新的案例和有效的方式,进一步提高计算机软件开发的效率和质量;较强的安全性,提高阻挡非法入侵的能力;可移植性,Java语言可便捷利用文字图片等网络资源。Java语言不仅吸收了C++语言的各种优势,还摒弃了C++语言里难以理解的多继承、指针等概念。它的工作原理由Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口共四方面组成。

3.3 Android布局

关于用户界面的布局有以下常见的七种布局:线性布局(Linear Layout)、帧布局(Frame Layout)、表格布局(Table Layout)、相对布局(Relative Layout)、绝对布局(Absolate Layout)、网格布局(Grid Layout)、约束布(Constraint Layout)。线性布局的特点是将组件按照水平或垂直方向排列,控制排列方式的是“android: orientation”属性,其属性值有水平(horizontal)和垂直(vertical)两种,它能按水平和垂直方向线性布局显示几个按钮。相对布局是通过相对定位的方式让控件出现在布局任意位置,即通过指定id关联其他组件与之右对齐、上下对齐或以屏幕中央方式来排列组件。

3.4 Android体系结构

Android系统是由Google公司及开放手机联盟领导开发的移动软件系统,其特点是基于Linux、开放源代码。Android的体系结构有四层,其包括应用程序 层(Application)、应用程序框架层(Application Framework)、系统运行库层(Libraries)和Linux内核层(Linux Kernel),其结构如图1所示。在图1中,Application是使用Java语言编写的应用程序;ApplicationFramework本质上也是Java程序,其还具有大量的API供开发者方便使用;Libraries 包含一些C/C++程序库,其是通过Java的JNI方式调用的;Linux内核层是由C语言和汇编语言编写的内核。

3.5 模拟器与APK

图1 Android体系结构图

APK文件是一个Android应用程序打包文件,可以下载到硬件设备来运行Android应用。同样,Android设备模拟器提供虚拟设备(virtual device)来运行Android应用。模拟器和真实设备在测试上的比较,后者获得的结果更准确。

4 系统设计

4.1 核心功能设计

考试分为正规考试和模拟考试。正规考试如国家组织的考试,一般需要原创试题、试题难易度适中、监考和防止作弊等。在线考试系统很难全部都承担起来。而学生考试的目的绝对不能只是为了考试,考试仅是一个检测发现错误并改善的过程。再加上我国部分地区经济教育不发达,其很难受到优质教育资源指引。因此,我设计的在线考试系统的核心功能是生成错题库来给学生提供针对性复习,把在线考试过程中不会的题目自动建立错题库,把弄懂的题目改为通过排除掉。学生只需要把重心放在错题库学习即可,大大方便了学生和节省了搞“题海战术”的时间成本。此外,不同的题目类型考察学生的能力方面不同。例如有的题目考察的是学生的计算能力,有的题目考察的是学生的观察能力和阅读能力等。因此,通过设计这个核心功能来帮助学生不断完善学习能力和提供针对性复习。

4.2 总体功能结构图设计

在线考试系统分为三个子系统,分别是学生、教师和督导员子系统。为每个用户角色提供不同的权限和功能。在线考试系统的功能模块设计以学生为重点,并以学生为中心展开核心功能设计,以建立起学生的用户黏度。同时为了实现我国教育强国和为国家输送优秀人才的目标,在线考试系统也探究如何运用科技手段来提高学生的学习能力和学习效率等,例如,尝试在考试的过程中启动摄像头来捕抓考生的神情状态后通过人工智能算法分析其专注度等学习能力。对于教师用户,提供智能统计学生成绩和分析报告等,让教师更灵活地管理考试成绩,在一定程度上将教师从出卷阅卷评卷等繁忙工作中解脱出来。教师甚至还可以根据学生的学习轨迹和学习时间来评分。此外,教师用户还有批卷模块和异常处理模块,异常处理模块主要是应对断网等突发情况。对于督导员用户,是为了实现两位老师同时监考的功能,保证正规考试的真实性和公平性。同时也鉴于道德等原因,提供对教师评价和发展教学监督等功能。具体的功能模块设计如图2所示。

图2 功能模块设计图

4.2.1 防作弊功能设计

国内的在线考试系统在监考与防作弊方面存在不足之处。有些在线考试系统仅仅通过获取学生的IP地址是否相同或者判断学生在线考试过程中是否切屏来鉴定是否作弊,忽略了考生身份验证等模块,缺乏监考与防作弊的严密性。针对市场上在线考试系统存在监考和防作弊方面的不足,本文将给出作者防作弊模块的设计方案。防作弊功能主要从身份验证和考试过程中预防进行的。首先启动摄像头捕抓人脸进行身份识别验证,然后在考试的过程中限制目光离开手机屏幕的次数和时间,且不能进行切屏和退出,必要时对考生的周围环境进行录音,且考生不能佩戴耳机。其中,如果发生切屏或者退出,将执行异常处理流程。

4.2.2 异常处理功能设计

可行性分析中已介绍我国互联网普及概率。我们在考试中可以选择飞行模式并连接Wi-Fi网络。但如果没有Wi-Fi网络而只有手机运营商的网络可使用,那么此时的手机不能处于飞行模式,突然有电话打过来,该怎么办?同时,由于在线考试打破了空间地域的限制,考生可能分布在全国各地,某些地区可能由于地壳的活动而导致断网等突发情况,这时不得不考虑异常处理模块的设计。具体的功能实现流程如图3所示。

图3 异常处理流程图

5 系统实现

研究的开发环境是Android Studio,使用的编程语言是Java。应用软件的主界面是指用户登录成功后进入的界面,设计的学生端主界面如图4所示,主界面默认显示的是底部导航栏考试所对应的界面,包括自由模拟考试和正规考试等。正规考试是通过加入班级功能添加组织的考试,自由模拟考试是学生自己通过教育阶段和学科选择来练习模拟考试,界面设计可在activity_main.xml文件中编码实现。

从中小学到大学,如果我们从考试中反思或者积累,量变就会引起质变。基于答题时间、页面的切换速度和错题考察的类型等生成数据,然后传递给柱状图类,这样学生就可以很清楚地知道自己能力的优势与不足,引导学生完善自己的学习能力。设计的学习能力功能界面如图5所示,同时这也是在线考试系统APP的核心功能。

开发一款大型的软件,不是个人单打独斗就能完成的,它必须依赖团队的力量。本开发研究将从在线考试的客观题——选择题入手,进行小讨论。FourActivity类实现选择题得分功能并跳转到下一个Activity,其中的主逻辑文件也初始化按钮,并添加监听事件,具体代码如图6所示。系统有登录模块,就会有退出模块,Android退出系统的代码可参考图7。

图4 学生端主界面图

图5 学习能力功能界面图

图6 复选按钮实现的代码

图7 Android完全退出应用程序的代码

6 结 论

针对我国经济教育发展不平衡而导致局部地区经济不发达和缺乏优质教育资源的问题,本文运用科技力量在教育事业方面进行数字化创新,设计了一款以错题库和能力分析为核心功能的在线考试系统。在5G技术和新冠疫情加速数字化进程的双引擎作用下,师生沟通等在线平台的未来具有巨大的潜力和应用场景,可提高效率和解决我国教育资源分配失衡等问题。

猜你喜欢
考试系统学生
Smartflower POP 一体式光伏系统
一种无人机缓冲系统
品“助读系统”之妙
直扩系统中的窄带干扰抑制
直扩系统中的窄带干扰抑制
赶不走的学生
Japanese Artificial Intelligence Robotto Take Entrance Examinations
学生写话
你考试焦虑吗?
准备考试