基于Spring Boot的工程教育认证实践内容管理平台设计与实现
2024-12-12朱文静顾梓杰
关键词:工程教育认证实践;内容管理;前后端分离;Spring Boot;OBE理念
0 引言
自2016年我国加入《华盛顿协议》,工程教育认证教育理念在全国众多高校得到广泛认可,越来越多的高校积极开展工程教育认证工作[1-2]。2020年,金陵科技学院软件工程专业通过工程教育认证,截至2022年底,我国一共有24个工科专业类、321所高校的2 385 个专业通过了工程教育专业认证。
目前,金陵科技学院软件专业已通过工程教育认证,信息安全专业工程教育认证工作正在展开,并积极将OBE理念应用于日常教学过程之中。尽管目前研究者不断探索对已有的信息系统进行升级,以便更好地支持工程教育认证实践工作开展。例如,张丽莉等人将OBE理念用于教务管理平台,已实现持续改进闭环综合管理[3];钟久申开发面向OBE理念的培养方案信息制定系统,旨在方便培养方案制定[4];张迪等人将OBE理念用于学业预警[5]。然而,现有系统不能很好地支持教育认证实践工作开展。
1 工程教育认证实践过程中面临的问题
工程教育认证实践过程中面临的问题主要表现在以下几个方面:
首先,教师资料准备难。工程教育认证教学实践中需要每门课程教师准备本轮课程教学持续改进计划、教学资料、课程目标中期达成度报告、各项考核原始材料、各项成绩记录及总评、课程目标达成度计算表及评价报告、课程目标达成学生自评表、本轮课程授课总结或评价报告等多项不同的文件材料。一方面,许多材料需要按班级为单位组织,存在大量机械性劳动,占用老师大量的时间和精力;另一方面,人工操作极易在不经意间改变材料格式或数据,使得不同材料之间的数据、格式出现不一致情况,大大增加了督导检查的工作量。
其次,学院材料收集难。以金陵科技学院网络安全学院为例,主要采用网盘的形式进行材料收集,虽然在一定程度提升了材料收集效率,但这种收集方式需要相关负责人定时检测、核对,以确认相关课程负责人、教师是否已按要求上传相关材料。若无,则需通过线下进行提醒。待相关课程负责人、教师上传完相关材料之后,相关负责人需要再次进行人工确认。
然后,督导检查难。教学督导需要将自己负责督导的课程相关材料下载到本地,然后依次打开不同材料进行检查。一方面,督导负责的课程较多、任务较重,检查材料中普遍存在的日期、格式、学期、班级等明显错误已然费时费力,更不用说发现材料中存在的数据不一致等更严重的错误;另一方面,由于缺乏相应系统,督导需要人工记录相应的问题,然后反馈给相关课程负责人、授课教师,导致效率不高。
最后,材料整改难。第一,由于缺乏有效工具,课程负责人容易混淆不同版本的材料,导致上传过期的材料;第二,督导需要多次下载、打开、查看,才能确认相关课程负责人是否对材料整改到位。实践表明,很难将所有检查出来的错误一次进行全部修订;第三,当需要使用新的模板,需要各个课程负责人、授课教师对相关资料格式进行调整。
因此,设计实现一个工程教育认证实践内容管理平台,对于解决工程教育实践过程中面临的上述问题具有重要的实用意义。
2 系统设计目的
本项目从工程教育工作实践现实需求出发,致力于设计实现一个基于Spring Boot的工程教育认证实践内容管理平台,将工程教育认证涉及的核心文档和教学过程数据纳入系统管理范围,将大量复杂的材料整理分析工作自动化。一方面,可以大大提高教师的工作效率,有利于教师将更多精力集中在教学内容的持续改进中去;另一方面,使得教务管理工作流程更加标准化,保证输出材料的正确性和格式统一性,提高教学管理效率。学生也能从更高质量的教学内容和更高效的教育管理中受益。
3 系统设计
3.1 系统架构设计
本文设计实现的工程教育认证实践内容管理平台系统采用前后端完全分离的B/S架构,如图1所示。学校可以将该平台部署在自己局域网内进行私有化部署,也可通过获取服务的方式使用平台。
在技术方面,本系统采用Vue.js作为前端开发框架,结合Element UI标准组件库来创建交互性强且具有良好用户体验的界面。后端则基于Spring Boot框架,利用其轻量级和模块化的特点,简化了应用的部署和开发过程。数据持久化交采用MySQL数据库,保证数据的安全性和稳定性。系统数据操作采用MyBa⁃ tis,大大简化了数据库操作的复杂性。为了提高性能,引入了Redis作为缓存机制,减少数据库的访问压力。安全性方面,Shiro框架被用于执行身份验证、授权、密码处理和会话管理。API接口设计遵循REST 风格,明确区分了GET用于数据检索、POST用于数据创建、PUT用于数据更新和DELETE用于数据删除的操作。服务器端使用Nginx作为反向代理服务器,并实现负载均衡,确保了系统的高可用性和稳定性。
3.2 系统功能设计
本论文设计实现的工程教育认证实践内容管理平台的功能结构如图2 所示,包含以下11 个功能模块:
1) 首页模块,主要用于工程教育认证标准、要求、新闻等信息展示与平台宣传。
2) 登录模块,主要用于为用户提供获取平台服务入口,包括账号密码登录、手机验证码登录、密码找回。系统账号不能通过注册获得,只能通过所属上级管理员或系统管理员分配的方式获得。例如,学校管理员账号由系统管理员创建分配,学院账号由学校管理员创建分配,教师账号由学院管理员进行创建分配。
3) 学校管理模块,主要用于系统管理员对学校相关信息进行管理,以便以服务方式向不同学校提供服务。包含:学校管理功能,用于系统管理员对全部学校或者学校管理员对本校基本信息进行管理;校区管理功能用于学校管理员对本校不同校区信息进行管理;学校领导人管理用于学校管理员管理本校领导信息。
4) 学院管理模块,主要用于学校管理员与学院管理员对本校学院相关信息进行管理,包含学院管理、学院领导人管理、楼宇管理、房间管理和专业管理。
5) 系部管理模块,主要用于学院管理员与系部管理员对系部相关信息进行管理,包括系部信息管理、系部领导管理、教研室信息管理、教师管理。
6) 学生管理模块,主要用于教师对学生进行管理,包括班级管理、班级课表管理、生涯管理和学生管理。其中,班级课表与学生管理支持Excel导入,方便与本校的教务系统进行对接。
7) 课程管理模块,主要用于课程负责人对自己所负责的课程相关信息进行管理,包括课程基本管理、课程大纲管理。其中,课程大纲管理模块主要用于课程负责人在培养方案制定或修订时,完成相关课程大纲制定以更好契合培养方案。
8) 教务管理模块,主要用于授课老师按学期、按课程管理自己教学过程数据,包括教师课表管理、授课列表、成绩管理和教学资源管理。教师课表管理运行教师上传自己的教师课表,系统自动将授课信息按照教学班级、学期添加到教师授课列表之中。成绩管理为教师提供可视化分析,并支持达成度计算与导出。
9) 培养管理模块,主要用于方便专业负责人制定和维护培养方案,包括培养方案管理、培养目标管理、毕业要求管理。其中,培养方案管理主要用于辅助专业负责人制定或修正培养方案,支持培养目标、毕业要求、课程列表等相关信息一键导入,并及时通知到相关课程负责人、授课老师。
10) 格式要求管理模块,主要用于对不同材料设置不同格式、模板等具体要求,保证系统输出文档的格式规范性和一致性,包括格式要求管理、模板管理和文件生成。其中,格式要求管理用于设置文档主体、各级标题的字体、缩进、行间距等格式要求;模板管理用于管理不同文件所使用的模板;文件生成功能用于根据指定格式要求或使用特定模板生产所需文档,进而保证系统输出的文档格式的一致性。
11) 系统管理模块,主要用于系统管理员对本平台进行全局管理,包括用户管理、角色管理、菜单管理、字典管理等功能。本系统包含系统管理员、学校管理员、学院管理员、教学督导、教师、学生,共5种角色,不同角色具有不同权限。字典管理主要用于管理员对系统中使用f8a7ddc2d075d1b55a132b89bb1f878b4d40f13dbfe3fdee6ae6847b8044fef5的某些数据元素范围进行定义。
4 关键功能设计与实现
4.1 培养方案管理功能
本论文设计实现的工程教育认证实践内容管理平台提供友好界面,帮助专业负责人与相关课程负责人进行高效合作,完成培养方案制定。培养方案制定功能流程图和操作页面分别如图3所示,具体操作流程如下:
步骤 1:专业负责人可以通过培养目标管理和毕业要求管理,按多级层次结构制定新的培养目标与毕业要求;专业负责人维护可以方便地对已有培养目标和毕业要求进行编辑、添加、删除以及排序。
步骤 2:填写大纲的基本信息,包括适用专业、基本学制与学位、毕业学分要求等基本信息。
步骤 3:导入培养目标与毕业要求,设置培养目标与毕业要求对应关系矩阵。
步骤 4:导入课程信息,设置毕业要求与课程对应关系矩阵;系统会自动向相关课程负责人发送任务通知,提醒课程负责人及时制定、提交适合本方案的课程大纲。
步骤 5:专业负责人负责审核课程负责人提交的课程大纲,提高协作效率。此外,平台通过课程大纲审核通过率定义培养方案完成程度,方便掌握进度。
步骤 6:制定完成后,专业负责人可以导出培养方案。培养方案导出主要采用POI-TL与POI将培养方案各个部分内容按顺序输出到docx文件,并根据格式管理模块中定义的格式要求(以JSON数据格式存储)进行设置,字体相关格式设置关键代码如下:
平台为专业负责人提供友好界面,图4所示,以逐步引导专业负责人完成培养方案制定,提高专业负责人与课程负责人之间的协作效率。
4.2 课程大纲导出功能
与培养方案制定相似,本平台通过提供直观的可视化界面,极大地简化且规范化课程负责人制定和维护课程大纲的过程。首先,平台能够自动从相关培养方案导入课程所支持的毕业要求,从而避免手动操作可能导致的错误、遗漏、冗余等不一致情况,同时显著提高了工作效率。此外,本平台集成轻量级、所见即所得富文本编辑器TinyMCE,为课程负责人提供一个类Word的编辑环境。课程负责人可以通过TinyMCE 菜单直接在线编辑,或将编辑好的Word直接复制粘贴到TinyMCE中。课程大纲的相关信息会被整理成JSON数据格式存储在MySQL数据库中,确保了数据的持久化和可访问性。
课程大纲导出主要采用基于模板的方法。首先,专业负责人通过模板管理功能上传课程大纲模板。如图5所示,课程大纲模板使用双大括号表示数据标签,旨在指定相应数据内容在课程大纲中的位置与格式。例如,数据标签“{{courseName_cn}}”表示课程中文名称;“{{courseCode}}”表示课程编码。然后,平台文档生成模块利用POI 与POI-TL 中XWPFTemplate 类,将模板中的数据标签替换成课程大纲相应的数据内容,关键代码如下:
5 总结
随着OBE(Outcome-Based Education),即基于成果的教育理念在高等教育领域的日益普及,高校对于能够辅助工程教学实践内容管理的工具需求日益增长。本研究针对工程教育的现实需求,设计并实现了一个基于Spring Boot的工程教育认证实践内容管理平台。本文详细阐述了该平台的架构设计、功能模块划分以及核心功能的实现方法。该平台将工程教育认证涉及的核心文档和教学过程数据纳入平台,自动化复杂的材料整理分析工作,有效地解决工程教学实践过程中存在的材料准备难、材料收集难、督导检查难、材料整改难等现实问题,对提升教学管理的标准化和规范化具有重要的实际应用价值。