
科学研究与应用
Journal of Scientific Research and Applications
- 主办单位:未來中國國際出版集團有限公司
- ISSN:3079-7071(P)
- ISSN:3080-0757(O)
- 期刊分类:科学技术
- 出版周期:月刊
- 投稿量:5
- 浏览量:777
相关文章
暂无数据
同文在线考试系统的开发、应用与实践研究
Research on the Development, Application and Practice of Tongwen Online Examination System
引言
同文在线考试系统的研发将有助于优化考试资源配置,降低考试成本。通过在线平台,可以实现试卷的快速生成、分发和自动批改,大幅减少了纸张、印刷和人力等资源的消耗,同时也缩短了考试周期,提高了整体工作效率。此外,系统还能利用优质且高级的技术的方式和手段。
1 同文在线考试系统概述
1.1 系统基本功能
同文在线考试系统作为一款全面的在线考试解决方案,旨在通过其强大的功能集合满足不同考试场景的需求。系统核心功能主要包括自动生成试卷、实时监控、在线答题、自动评分以及成绩统计分析等,这些功能共同为教育工作者提供了一套高效、便捷的考试管理工具。同时除了基本功能以外,系统稳定性和安全性以及用户体验也是软件设计需要注意的。为更清晰展现系统功能在不同用户角色的具体承载,以下通过系统功能架构图(图1),直观呈现学生端、管理端(含后台操作人员、教师端)的功能分布与关联,帮助理解各角色如何协同支撑考试流程。
1.2 系统特点和优势
相比传统考试模式,同文在线考试系统展现出诸多特点和优势。其高度自动化和智能化的特性能够显著降低考试组织和批改的成本,同时提高工作效率。系统通过预设的题库和智能组卷规则,自动生成符合要求的试卷,这一功能极大地节省了教师出题和组卷的时间与精力。此外,系统还能实时监控分布式系统中各个服务的运行状态,通过可视化界面,展示调用链的详细信息和性能指标。同时还可以详细记录每个服务、每个接口的调用关系和处理时间,帮助技术人员快速定位问题。
1.3 系统未来发展趋势
从未来发展的角度来说,未来的在线考试系统注重智能化的体系以及管理的技术,例如基于数据的分析和机器的智能学习评估体系和系统能够有一个较大的提升。根据学生的情况以及个性化的学习方式,去进行设定学习路径和设定评估方式。随着互联网络的普及和发展,未来在线考试系统会更加注重移动端以及其他端的开发及应用,使得学生可以随时随地进行学习提升和参加考试。在线考试系统还可以增加媒体间的互动和融合,提供更丰富的互动功能及社交化学习网络环境,从而更好地促进学生学习。在未来的在线学习系统当中,可以加强技术保障,确保考试的公平性和安全性。同时,采用数据分析预测等方式,将分析出每名学生的学习状态数据。
2 同文在线考试系统开发
2.1 需求分析
从需求分析视角出发,明确系统的功能性与实用性要求,是在线考试系统设计与实现的核心基础,其本质是通过精准拆解需求维度,为后续开发提供清晰的目标导向与逻辑支撑。在线考试系统的需求可清晰划分为功能性需求与非功能性需求两大核心维度。其中,功能性需求聚焦系统“需实现的具体功能”,围绕考试全流程的实际业务场景展开。非功能性需求则聚焦系统“需达到的运行标准”,是保障系统稳定、可靠服务的关键支撑。两类需求相互补充、缺一不可,共同构成在线考试系统需求分析的完整框架,为系统设计的合理性与实现的有效性奠定坚实基础。
2.2 技术架构
从本体系的架构设计上考虑可维护性和安全性,以满足不同场景下考试的需要和需求,见图2。
在前端方面,选择了Vue框架进行开发。Vue以其组件化的开发方式,使得该系统可以将用户界面拆分为多个独立的、可复用的组件,此外,引入ElementUI组件库,提供了丰富的UI组件,进一步提升了前端界面的美观性和交互性。这不仅提高了开发效率,也使得界面更加清晰、易于维护、页面响应速度更快。
后端采用了Spring Boot框架。Spring Boot简化了Spring应用的初始搭建以及开发过程,使得作为使用者可以更好的或者是更专注的与业务的逻辑的使用。它提供了丰富的API接口供前端调用,实现了前后端数据的无缝对接。SpringBoot是一个Java框架,用于简化Spring应用开发。它提供了IOC容器,支持声明方式事务的管理系统,集成了多个WEB框架,以及多种数据持久化访问接口。此外,Spring Boot还具备强大的安全性和错误处理能力,能够有效保障系统的稳定性和安全性。
在数据存储方面,该系统选用了MySQL数据库。MySQL以其稳定、可靠的性能,保证了数据的安全存储和高效查询。同时,还引入了Redis等缓存技术,通过缓存热点数据和计算结果,有效减少了数据库的访问压力,提高了系统的响应速度。此外,系统采用Redis来存储用户信息、试卷等数据,使用redis Template进行封装,以方便后端对Redis的数据操作,提升了系统的响应速度。
系统运行和维护管理是一个系统能否保持可用性和稳定性的关键,系统采用SkyWalking框架实现性能监视以及日志管理,实现了对于系统的快速分析:如拓扑图、服务视图和告警阈值配置以及日志快速定位。
该系统采用了HTTPS协议进行数据传输,有效防止了数据泄露和篡改。同时还采用了JWT(JSON Web Token)进行用户身份验证。JWT能够在服务器和客户端之间安全地传输用户信息,且不易被伪造或篡改,从而确保了用户身份的合法性和系统的安全性。
2.3 模块设计
2.3.1 用户身份校验以及权限管理
系统存在着教师、学生、管理员三种不同的角色,每种角色都有不同的操作权限。RBAC(基于角色的访问控制)是一种广泛使用的访问控制模型,RBAC模型中权限与角色相关联,用户通过成为某个角色的成员来获得该角色所具备的权限。角色用于完整描述某一类职能所需的操作能力,从而支持系统内工作的有效组织和产出。用户根据其职责或被指派的任务被分配相应角色,以此实现权限的合理划分与分工协作。本系统采用Spring Security框架完成用户角色和权限的规定。使用@PreAuthorize 注解用来做权限检查,在运行方法前先验证权限,权限够就放行,不够就拦截。
2.3.2 学生端功能
学生使用系统的第一步为身份验证,需通过专属登录界面完成。以山西同文职业技术学院2025年单独招生考试系统为例(图3),考生需录入机位号、准考证号、证件号码等信息,保障身份唯一识别,以下为登录界面示意。
学生用户通过自己的学号和身份证号码登录,以此来实现认证的唯一性。注册登录之后可以在本系统进行在线考试,考试试题由教师端按照条件从题库中随机抽取生成,题型涵盖多选、判断、单选以及简答题,并支持题目的附带的配图。在学生用户点击交卷以后,系统会自动批阅选择以及判断题,简答题则需要教师批阅。
答题过程中,通过监控考试环境是否保持焦点状态来监测切屏行为,切屏三次以上则视为作弊。在实际操作过程中,为了防止学生重复提交的操作,学生端将对提交按钮进行交互控制,按钮被点击一次后立即置灰。学生端实际答题界面(图4)设计清晰直观,界面中明确呈现题型分类、题目内容展示及作答交互入口等核心功能模块,便于学生快速定位题目类型、读取题干信息并完成作答操作。系统通过布局实现答题流程引导,同时依托技术手段保障考试公平,以下为某理论测试场景的答题界面示例。
2.3.3 教师端功能
创建考试界面(图5):教师可导入自己所带班级的学生信息,并自定义创建考试。同时,系统支持自定义组卷以及智能组卷两种方式。自定义组卷可根据教师的条件创建考试,如创建指定分数指定题量的考试;智能组卷只需要教师选择指定题库,输入总分以及不同种类的题的数量,系统会校验输入的分值与总分是否一致,不一致则报错提醒,提醒用户确认分值。
导出成绩界面(图6):可以根据考场、班级等规则批量导出成绩,前端会从JSON对象中校验学生的分数,对不及格的学生成绩高亮显示,确保教师及时发现异常成绩。
2.3.4 管理员端功能
角色管理界面(图7):点击之后能够显示出当前系统轮廓之下的所有角色,包括其编号以及角色的名称,能够在系统安全性考虑的基础之上,这种超级管理员才能进行修改或者新增一系列操作。
3 结论与展望
3.1 研究结论
系统测试主要从超时是否能自动交卷、网络异常情况等边界异常情况以及正常交卷这几个方面进行系统测试,测试结果正常。然而在实际使用过程中,也出现了部分异常情况。初期因未设置重复提交校验,导致部分学生连续两次提交异常,后续通过增加防重校验以及按钮置灰防止重复提交。同时,针对部分学生使用电脑作弊的情况,增加了切屏检测,有效提升了考试的公平性。除此之外,由于同时提交考试的人数太多,在后期考虑引入Kafka这一面向高吞吐流处理的分布式平台消息处理中间件,以此提升系统处理高并发的能力。Kafka采用发布/订阅模式传输数据,生产者可异步生成消息并通过消息队列进行有序传输,消费者则负责从队列中读取消息,从而保障高并发场景下的系统稳定性与数据处理能力。
智能化考试系统的出现,极大地降低了传统考试的成本,并提高了教师批阅试卷的效率。而同文体系之下的在线考试系统,是一个灵活且高效的解决方案,能够为学校以及机构在考试评估与在线组织方面提供全面功能支持。本系统通过使用稳定的框架技术,实现了低成本高稳定的系统开发。SpringBoot配合MyBatis框架为核心功能提供了稳定的支持,同时Vue框架为系统提供了更快的页面响应以及更美观更流畅的用户交互,SkyWalking框架的使用为系统的性能和日志管理提供了完美的解决方案,极大增强了系统的可维护性以及可用性。这些稳定可靠的框架配合起来,实现了性能稳定的考试系统。经过测试以及实际使用发现,该系统性能可靠、功能全面,满足当前教学实际要求。
3.2 未来展望
在实际使用的过程中,随着同时考试的学生数量的增加,对于系统处理高并发请求的能力提出了更高的要求。因此在后续的维护中,要引入Kafka中间件处理大量的并发请求。同时,考虑引入视线转移检测等功能进一步提升考试的公平性,防止学生作弊。引入基于行为分析的防作弊方案,后端使用SpringBoot集成OpenCV实现考生姿态检测(转头、离座等异常行为识别),前端通过Vue.js调用WebRTC实现三路视频监控(屏幕共享、摄像头、环境镜头)。另一方面,随着人工智能技术的发展,智能化考试系统也面临新的需求与动力。在后续功能开发中,可考虑引入AI技术对每位学生的成绩进行预测与分析,从而提供更个性化的学习数据支持。
参考文献:
- [1] 汪永明.基于B/S模式的在线考试系统[J].微机发展,2004(01):59-60+85.
- [2] 姜一波.基于SpringBoot+Vue的在线考试系统设计与实现[J].无线互联科技,2023,20(23):68-71.
- [3] 任焕海.基于B/S架构的在线考试系统设计与实现[J].现代信息科技,2021,5(22):13-16.
- [4] 施鹭.基于SpringSecurity的高校通用报名系统的设计与实现[J].成都工业学院学报,2023,26(01):48-51.
- [5] Heller M. What is Apache Kafka? Scalable EventStreaming[EB/OL].(2023-02-25)[2025-09-24].https://www.infoworld.com/article/365135/what-is-a-pache-kafka-scalable-event-streaming.html.
- [6] 陈明,张华.基于SpringBoot和Vue.js的在线考试系统防作弊机制研究[J].计算机应用研究,2022,39(05):1421-1425.
