智慧校园视域下基于LAMP的在线考试系统敏捷设计与实现

2023-03-02 09:23余久久张继山吴宁胡雪解雪杨刘丽张错玲
关键词:试卷架构考试

余久久,张继山,吴宁,胡雪,解雪杨,刘丽,张错玲

(1.安徽三联学院计算机工程学院,安徽 合肥 230601;2.上海源谷实业有限公司设计财务部,上海 201611;3.合肥市南门小学语文教研组,安徽 合肥 230001;4.合肥经济学院文法学院,安徽 合肥 230031)

0 引言

智慧校园是高校“互联网+”建设的必然产物。其利用“互联网+”思维模式将各种现代信息技术融合到校园的信息处理中,将分散的教育资源进行整合处理,形成具有高度感知能力与协同处理能力的智慧化信息处理平台,为高校的教育管理提供智能化、网络化、个性化的服务支持[1]。智慧校园已成为数字校园和校园信息化建设的研究热点,“人为本、数据为核心、开放为前提、服务与应用为主旨”是其建设内涵。关于当前智慧校园主流建设体系架构,陈平等[2]提出基于物联网技术(例如以感知层、网络层和应用层为基准)构建智慧校园;吴细花[3]提出可以采用面向私有云的IaaS架构设计智慧校园信息化支撑平台;李英[4]提出了基于WebGIS构建智慧校园,建设面向校园多功能可视化学习和生活的可视化平台;王曦[5]提出构建“六横两纵”的智慧校园立体架构;惠亚兰[6]则在王曦[5]研究的基础上把“六横两纵”架构实际运用于本地智慧校园建设中。图1[7]也已成为当前主流智慧校园所应具备的功能体系。

图1 智慧校园具备的功能体系[7]

可见,构建智慧校园的最终目的是通过移动终端平台,为校园师生提供更好、更便捷的各类微应用及微服务(学习、教学、科研、管理、生活等方面)。方便用户、变革教学、协助科研、支撑管理是智慧校园提供相应微应用及微服务的4个主要目的[8]。董茜等[9]基于该视角进一步对智慧校园中的某些移动应用功能(如信息推送、校园导航、点名签到等)进行微应用研究与实现。

基于此,本文以当前智慧校园基于业务流程重构的微服务与微应用构建为基础,以智慧教与学的在线考试为典型应用案例,围绕变革教学中的考试改革,从智慧校园建设所具备的功能体系视角,提出一个基于LAMP(Linux+Apache+MySQL+PHP)的校园在线考试系统的敏捷设计过程,为学生实现在线考试功能。

1 关键技术简介

1.1 LAMP

LAMP(Linux+Apache+MySQL+PHP)是一个常用动态网站搭建的各种工具名称的缩写,该组合所用软件大部分都为开源程序,作为当下比较流行的搭配组合使得其拥有越来越高的兼容度,能够共同组成一个强大的Web应用程序平台[10]。Linux 系统为该平台最底层提供基本的操作系统支持,采用Apache网络服务器与MySQL数据库,PHP为后台服务实现相应的用户功能。LAMP当前已成为中、小Web系统的主流开发环境。

1.2 微服务与微应用技术架构

在提供微服务与微应用时,同时从本地校园共享数据中心和应用数据中心读取数据,通过建立的表单服务,用户可以自行填报数据直接进入应用数据中心,不依赖于具体的业务部门,为后期的微应用开发提供数据支撑[11]。在此基础上,文献[11]还提供了一个微服务与微应用技术架构(图2),目前已被国内很多地方应用型高校智慧校园建设所采用。本文亦采用该技术架构予以在线考试系统架构设计。

图2 智慧校园微服务与微应用技术架构[11]

1.3 敏捷开发模型Scrum

软件敏捷方法是一种轻量级的软件工程方法,强调现代软件开发过程中各种变化的必然性。以用户的需求进化为核心,采用迭代(循序渐进)的方式完成软件开发,其强调快速性及适应性[12]。在软件敏捷方法中,Scrum模型(图3)针对迭代式增量软件开发过程,已被广泛运用于各类轻量级软件开发项目中,已成为当前的主流的软件敏捷模型。

图3 敏捷开发模型Scrum[13]

Scrum模型中,产品需求列表(backlog)以若干个“用户故事”的形式予以快速提取与提炼。一个Sprint在Scrum模型中表示一个开发(迭代)周期,通常不超过4周。当每一个Sprint结束后,必须发布(产生)一个基于原软件产品基础上的、可运行的、可用的、能够实现用户价值的软件产品增量(版本)[12]。从整体来看,以迭代形式完成一个软件产品的开发全过程通常会历经多个Sprint周期。

2 在线考试系统需求提取

2.1 用户故事划分

在线考试系统一共分为管理员、教师和学生3个角色。在本系统的第一个上线版本中,学生通过登录系统进行答题,教师可以通过登录系统设置考题及批改学生的试卷,管理员则负责系统账号的管理及系统公告管理等。由于采用敏捷模型Scrum完成开发,一些附加功能将在后续版本中予以迭代实现。图4从用户需求角度给出了本系统第一个待开发版本的业务流程图。

图4 在线考试系统业务流程图

结合本系统敏捷开发实际,根据在线考试系统流程图与用户实际需求,采用Scrum开发模型,在A高校本地智慧校园架构的微服务与微应用层,提炼出第一个Sprint中所需要快速实现的功能需求及其所对应开发任务,并以用户故事列表形式呈现出来,如表1所示。同样,在本次Sprint中开发所涉及的数据库表还有考生信息表,课程表、试卷表等,这里不予列出。整个Sprint持续时间为2周。

表1 用户故事列表

2.2 Sprint迭代发布

本次Sprint迭代开发中,要求Scrum开发团队搭建Apache服务器,能在本地客户端(如电脑端、移动手机端等)实现表1所示的各项开发任务,快速发布一个简单的在线考试系统。此外,要求在本次Sprint中同时定义了系统的各个数据表结构,形成一个快速的、可运行的系统(版本),及时上线发布[12]。

2.3 数据库设计

作为本地智慧校园教务系统微服务的一个典型应用,在线考试系统的后台数据库系统共享校园应用数据中心,以认证服务与目录服务为基础,在智慧校园平台下通过MySQL数据库统一用户身份管理、授权管理等,将用户身份信息进行分级授权以及集中认证,较好地规范应用系统的用户认证方式,如本考试系统中的试卷表(表1)与监考教师表(表2)。

表2 试卷表

3 在线考试系统快速实现

本在线考试系统的客户端页面采用PHP工具完成开发。在第一个快速上线版本中,一共分为管理员、教师和学生3个角色。学生通过登录系统进行答题,教师可以通过登录系统设置考题及批改学生的试卷,管理员则负责系统账号的管理、系统公告管理等。教师成功登录后,系统主页(图5)主要显示试卷总数、题目总数及答题总数,侧边栏分别显示用户管理、卷题管理(试卷列表和题目列表)、教育管理(学科列表)、消息中心、日志中心等。

图5 在线考试系统主页面

3.1 学生用户考试

学生通过输入用户名和密码来登录系统(图6)。登录成功后,学生则可以选择自己所在的年级及考试科目的试卷,点进去则可以进行答题;学生按照考卷题目顺序进行答题,同时要注意考卷右上角的时间提示,应按时完成考卷。学生答完考卷后提交试卷,或者考试时间结束系统自动提交。提交后则可以看见有些题目系统已经做出了批改,有些部分题目需要老师进行批改,过几天可再登录查看自己考卷得分情况。

图6 学生用户登录页面

3.2 教师出(组)卷管理

教师用户登录系统,在考试系统主页面上通过点击“卷题管理”菜单,则通过系统后台进行试卷的增添、单选题及解答题的增删改查等操作,如图7所示。

图7 教师出(组)卷页面

其开发页面部分核心代码如下:

4 应用评价及后续工作

为配合A高校(试点高校)智慧校园建设,作为本地智慧校园智慧应用系统的一个子系统,该在线考试系统(V1.0 版)采用敏捷Scrum开发模型,在2个月内快速开发完毕。在充分而有效共享校园各职能部门、教学院(部)数据中心的基础上,通过敏捷设计客户端为师生提供在线考试服务与应用的功能,学生可以通过个人电脑及安卓手机客户端运行系统,系统性能稳定、操作便捷、在线考试效果良好,受到师生一致好评。目前正针对A高校试点课程及班级开展应用,试点课程超过8门,学生用户达到500人以上。

通过用户信息反馈,在后续的工作中,本在线考试系统在以下方面需要改进。

4.1 建立统一的微信公众号增强用户体验

智慧校园基础支撑平台是通过服务总线和流程引擎解决校园各种(微)应用与(微)服务,将各个业务应用程序及相关子模块的用户角色(权限)抽取出来,形成不同的业务办理流程,而不是每个用户独立地安装并使用相应的系统。从增强用户体验感层面,基础支撑平台将为每一个校园应用服务程序申请统一的微信公众号,为公众号设置自定义菜单。校园用户通过“微信认证”获得自定义菜单接口,为公众号设置个性化的自定义菜单,通过移动终端平台直接使用该考试系统,从而提高用户体验[14]。

4.2 构建基于云计算的移动互联“办事大厅”提升消息响应速度

由于目前A高校尚未完全实现智慧校园,部分校园应用及服务程序后台还是按照传统数字校园信息化建设形式部署在有线宽带的本地服务器上,因用户访问量增加会偶尔出现响应用户超时现象。未来工作中,例如可以通过构建一个基于校园云计算WFaaS(介于公有云与私有云之间的专业流程服务云平台)开放架构,形成一个开放、可扩展、可持续发展的移动互联“办事大厅”,可以实现各个办公流程移动化高速应用[15]。在本地智慧校园架构的微服务与微应用层把在线考试系统及其他各业务系统的流程有效整合,提升各类应用与服务的消息响应速度。

5 结束语

智慧校园是高校校园信息化建设发展趋势。校园日常的信息交互方式发生了改变,为在校师生提供了更加高效便捷、丰富多彩和人性化的应用与服务,师生互动的质量与效率都较之以往有了很大提升[16]。在智慧校园视域下,作为一种便捷的本地化学习工具,本文通过敏捷Scrum开发模型所设计出的基于LAMP的在线考试系统,对于指导学生开展“线上与线下”混合学习过程也具有重要的意义。

猜你喜欢
试卷架构考试
基于FPGA的RNN硬件加速架构
功能架构在电子电气架构开发中的应用和实践
LSN DCI EVPN VxLAN组网架构研究及实现
Module5 A Trip Along the Three Gorges
Module5 Great People and Great Inventions of Ancient China
Module 4 Sandstorms in Asia
Module 1 Europe
Japanese Artificial Intelligence Robotto Take Entrance Examinations
你考试焦虑吗?
一种基于FPGA+ARM架构的μPMU实现