基于Spring Boot微服务框架的职业院校技能大赛报名系统设计

2022-10-24 08:13姚居文
电脑知识与技术 2022年26期
关键词:赛点赛项职业院校

姚居文

(新疆农业职业技术学院,新疆昌吉 831100)

职业院校技能大赛作为我国职业教育的一项重要制度设计,与职业教育发展紧密相连,每年举办的职业院校技能大赛是各个职业学校展示自己的管理水平、专业师资水平、技能训练水平的重要平台[1]。大赛对职业院校办出特色、办出水平的引领作用日益凸显[2]。

省级职业院校技能大赛是面向全区职业院校的比赛,通过网上报名可大大提高报名等相关工作的工作效率,同时通过网上报名,可实现参赛院校随时查看报名信息,查看比赛成绩等,也可为省级管理部门提供较好的数据分析和决策依据。

通过对职业技能大赛主管部门下发的文件以及赛事章程的研究,为方便各参赛院校使用系统,决定采用基于B/S架构(Browser/Server,浏览器/服务器模式)开发模式研发职业院校技能大赛赛务管理系统,该系统主要核心模块包括:职业院校报名、院校报名信息查询、赛点院校通知发布、赛点院校信息统计、赛点院校裁判信息统计、赛点院校成绩录入、赛点院校优秀工作人员录入等功能。

按照信息管理系统(MIS)开发流程,在系统开发前期,进行系统立项、可行性分析、系统分析、系统设计等工作,最终确定系统整体技术架构,前端开发框架采用Lay UI,后端开发框架采用Spring Boot编码语言为Java,数据库采用MySQL数据库,系统中间件使用Tomcat。

1 需求分析

1.1 用户分析

本系统用户主要分为以下几个角色:参赛院校用户、赛点院校用户、省级管理员用户。参赛院校用户主要权限包括用户的登录,报名信息删除修改等;赛点院校用户除报名参赛外,还可以对本校承办赛项各报名信息进行统计分析;省级管理员用户作为系统最高管理者,可以查看相关报表信息,全区报名情况等。

1.2 功能分析

1.2.1 参赛院校功能需求

参赛院校用户主要有以下功能:

1)用户注册:在院校首次使用系统,需先进行注册,其中注册内容包括:院校名称下拉选择,登录账号、登录密码、院校联系人,联系人联系方式等,为了减少数据的冗余,每所院校只能注册一个账号,在注册时系统会判断数据库是否存在数据,如存在进行重复性提示。

2)院校报名:在院校注册账号后,用户根据注册的账号可登录系统。登录系统,在“院校报名”页面进行报名。院校报名页为提高用户操作性,系统常用的内容(参赛组别,参赛级别,参赛项目),尽可能采用了下拉框的形式进行,参赛队员信息采用输入框形式,同时系统会对相关录入的内容进行校验(手机号校验,邮箱号校验,证件号校验)。

3)报名信息修改与删除:在技能大赛报名过程中,会存在录入错误的可能性,参赛人员信息也会存在变动的情况,为了降低开发与维护人员修复与更改数据的复杂性,系统提供了数据修改与删除功能。相关院校注册后,通过选中相关错误记录进行数据的修改删除操作,大大提高了系统的便利性。

4)成绩与获奖查询:在比赛结束后,参数院校可以在报名系统中查看成绩与获奖信息。

1.2.2 赛点院校功能需求

1)用户注册:赛点院校是指举办赛事的院校,通常情况下区内职业院校根据自身实际情况来申请承办赛项,由赛事主管部门进行审批。赛点院校的账号由管理员进行分配,此类账号和参赛院校相比操作系统权限不同。

2)院校报名:赛点院校同时可以参加比赛,赛点院校报名权限与参赛院校报名权限保持一致。

3)报名信息修改与删除:赛点院校在报名后也可以进行相关信息的修改与删除,赛点院校报名信息修改、删除权限与参赛院校保持一致。

4)赛点通知发布:赛点院校承办赛项,在赛事准备过程中,会持续更新赛项通知,以此来告知相关的参赛院校如何备赛,该功能只有赛点院校账号能进行访问,参赛院校账号无权访问该功能页面。

5)赛点院校统计:职业技能大赛作为一个省级赛事,参赛队伍及人数较多。为方便赛点院校的统筹管理,确定每个赛项的参赛队伍的吃、住、比赛场地的安排,赛点院校统计功能就非常重要,该统计可实时统计出不同赛项的参赛队伍,参赛人数。赛点院校可根据相关数据进行合理安排。

6)裁判与工作人员录入:在赛点院校承办的比赛中,不同的赛项会有不同的裁判与工作人员,通过系统录入相关人员的基本信息,一方面方便管理另一方面在后期评优中只能在录入系统的人员进行选择,提高了赛事信息的规范性。

7)优秀裁判与工作人员录入:为提高相关人员工作的积极性,在比赛结束后会针对不同赛项,赛点院校根据实际情况评选出优秀工作人员以及优秀裁判,并在系统中录入。主管部门通过系统获取相关优秀人员信息,公示后,颁发荣誉证书。

1.2.3 省级管理员功能需求

1)大赛报名信息汇总查询:省级管理员对于系统核心需求是要随时能够查看各个赛点的报名情况,其次是对不同赛项,参赛组别,参赛级别等形成报表数据进行决策。该信息汇总查询功能满足了省级管理员对各项数据汇总统计的需求。

2)主页通知发布:为提高政策信息的及时性,省级管理员可以通过系统后台进行政策信息的发布(PDF附件上传等形式),用户在报名系统可以预览下载最新的通知文件。

1.2.4 性能需求

院校报名需要在规定时间内完成,在实现核心功能之余还需保证系统的可靠性、稳定性、安全性等性能,在界面设计采用简洁的设计元素,方便用户理解操作,保证用户能正常完成相关赛事报名。

2 需求分析

2.1 系统架构设计

在系统结构层面采用B/S架构模式(浏览器/服务器模式),采用Lay UI为前端框架,采用Spring Boot为后端框架,采用MySQL为后端数据库。

常见的系统架构分为两种:B/S架构与C/S架构,B/S架构相比C/S架构而言业务扩展简单,维护方便,只要有浏览器就可以访问系统进行相关业务处理;前端框架种类众多,本系统选用Lay UI作为前端框架,Lay UI更多是面向后端开发者,无须涉足前端各种工具,只须面对浏览器本身;在后端框架选择上,本系统采用当下比较流行的微服务框架Spring Boot,Spring Boot是基于Spring框架开发的全新框架,其设计目的是简化开发过程,Spring Boot整合许多框架和第三方库配置,提供依赖启动器简化构建配置,极大地简化XML配置,直接嵌入Tomcat等服务器,可快速构建Spring应用[3];在数据库层面,采用MySQL作为系统数据库,其主要优势在于使用成本低,运行速度快,MySQL体积小,命令执行的速度快。

2.2 数据库设计

在数据库层面,共设计6张数据表,分别是:edu_school_user(用户资料表),edu_school_match_info(参赛信息表),edu_match_referee(裁判信息表),edu_school_detailed(院校参数表),edu_match_detailed(赛事参数表),edu_match_release(赛点参数表),在6张数据表中核心表,如图1所示。

图1 关系图

院校在首次使用系统,需先进行注册,注册信息写入edu_school_user(用户资料表),注册后登录系统,根据系统提示完成技能大赛参赛信息的填写,参赛信息写入edu_school_match_info(参赛信息表),根据school_name字段作为条件可查询出院校参赛信息。赛点院校登录后,根据edu_match_release(赛点参数表)与edu_school_match_info(参赛信息表)联合查询,可以统计出赛点各赛项报名信息。

3 系统实现与部署

3.1 开发和运行环境

系统开发工具采用IntelliJ IDEA(以下简称IDEA),IDEA是一款强大的Java代码编译工具,前端后端包括数据库都可以通过IDEA来编写,为提高系统效率加入Redis缓存机制,通过Shiro安全框架实现权限控制。

3.2 核心模块

系统核心模块包括:账号注册模块、院校报名模块、报名信息查询模块、赛点院校通知发布模块、赛点院校信息统计模块、赛点院校裁判信息统计模块、赛点院校成绩录入模块、赛点院校优秀工作人员录入模块等。

3.3 账号注册模块

院校在首次使用系统时,需进行账号注册,院校名称通过下拉框进行选择,下拉框内容由管理员事先维护在参数表中。在注册界面中录入用户名、账号、密码、联系人、联系方式后提交,相关数据将保存在用户资料表中,界面如图2所示。

图2 注册界面

3.3.1 院校报名模块

院校登录后,进入院校报名界面。在报名界面中,用户可以根据需要选择相关赛事的参赛组别(学生组,教师组)、参赛级别(中职,高职)、参赛项目(参数库获取),同时需要录入相关的参赛队员的基本信息包括姓名与身份证号。不同赛事有团队赛个人赛之分,系统会根据参数表中配置信息动态生成提醒信息,界面如图3所示。

图3 报名界面

3.3.2 报名信息查询模块

院校在完成报名后,可在报名信息页面进行查询,展示字段为用户在报名页面录入的信息,用户可通过选中单条记录进行删除或修改操作,本页面所有数据都可导出为Excel文件,界面如图4所示。

图4 信息查询界面

3.3.3 赛点院校通知发布模块

赛点院校是承办各类赛项的院校,所以会对外公布各类比赛的比赛章程,赛点通知发布页面为赛点院校提供相关功能,赛点可以将相关附件进行上传,同时如果出现上传错误的情况,也可在本界面进行删除,界面如图5所示。

图5 赛点通知发布界面

3.3.4 赛点院校信息统计模块

赛点院校是承办各类赛项的院校,赛点要根据各个赛项报名情况合理安排比赛场地、住宿场所等,所以详细的统计报表非常重要。在赛点统计界面,清楚明了地展示各个赛项报名情况,方便赛点院校进行决策,界面如图6所示。

图6 赛点院校统计界面

3.3.5 赛点院校裁判信息录入模块

在赛事举办的过程中,必不可少的是裁判信息与工作人员信息,通过对相关通知文件的研究,在比赛结束后,须评选出优秀裁判以及优秀工作人员,为保证公平公正,所有评优人员需在比赛前录入系统中,评优人员只能在录入系统的人员中进行选择。界面如图7所示。

图7 赛点裁判信息录入

3.3.6 赛点院校成绩录入模块

比赛结束后,赛点院校要根据比赛情况,将各参赛队伍比赛成绩录入系统。为提高系统可操作性,在成绩录入界面,尽可能采用下拉框与选择框的形式,方便用户操作。比赛成绩需用户自行录入,成绩输入框系统预先进行权限设定,只能数字录入。参数院校登录系统后在院校报名信息页,可查询各个赛项成绩以及获奖情况,界面如图8所示。

图8 赛点院校成绩录入

3.3.7 赛点优秀工作人员录入模块

工作人员共分两种类型(赛点,赛项)。赛点工作人员指服务赛点的人员,统筹各个赛项不服务具体赛项,职能包括统筹安排各赛项场地、人员住宿等。赛项工作人员指服务具体某一项比赛,职能包括带领参赛队伍进入比赛场地,核算成绩等。界面如图9所示。

图9 赛点院校成绩录入

3.3.8 系统部署

在系统部署方面,考虑到系统的安全、成本、性能等方面因素,采用腾讯云轻量级应用服务器,操作系统采用的Linux(CentOS 7.6 64bit)系统,硬件配置采用1核CPU,2GB内存,40G SSD硬盘,考虑到系统服务全区内职业院校,为保证系统访问效率,服务器带宽为10Mbps。在项目部署时需要在服务器安装好Java环境,MySQL数据库,Redis等,同时根据实际情况将本地项目打包为Jar包,通过FTP工具上传到腾讯云服务器。通过远程登录工具访问Linux服务器,进入Jar包同级目录下,键入nohup java-jar包名.jar&命令,即可启动项目,部署简单。

4 系统测试

系统测试,是对整个系统的测试,将硬件、软件、操作人员看作一个整体,检验它是否有不符合系统说明书的地方。系统功能性测试主要测试各功能点是否存在错误,各功能点是否满足预期需求。系统安全测试主要测试安全措施是否完善,保证系统不受非法侵入。

4.1 功能性测试

系统功能性测试,主要作用为能保证系统各个功能点正常运行,系统软件测试分为α测试与β测试,具体测试功能点如表1所示。

表1 功能性测试

4.2 安全性测试

软件安全性测试是保护管理系统安全的一道重要防线,只有系统安全,系统稳定运行才能够保证业务正常开展。职业院校技能大赛赛务管理系统数据涉及用户个人敏感信息,要尽可能保障系统的数据安全,因此,做好系统的入侵检测,攻击入侵非常必要[4]。本系统主要通过以下几个方面来展开测试,具体如表2所示。

表2 安全性测试

5 结束语

本文基于当前流行的Spring Boot微服务框架,实现职业院校技能大赛报名系统。该系统基于B/S(浏览器/服务器模式)架构模式,通过2021与2022年全国职业技能大赛自治区选拔赛的实践应用,证明了系统的安全性,稳定性,方便性。据不完全统计,2021年全国职业技能大赛自治区选拔赛共设置了93个竞赛项目,涉及24个专业大类/类,全区兵地共有160所职业院校参加了比赛,报名参赛学生人数达到2700余人,教师组参赛700余人,2022年通过该系统报名人数已达到5000余人。该系统的上线,对领导而言通过查看报名数据,能决策预判哪些赛项参与度较高,哪些赛点院校工作完成效果较好,对院校而言通过信息化的手段,大大提高了工作效率。该系统的上线,在当前职业技能大赛的报名和成绩管理工作中,具有实际的应用推广价值[5]。

猜你喜欢
赛点赛项职业院校
2022年全国职业院校技能大赛汽车技术赛项在我校成功举办
赛点制的奇袭
河南高等职业教育技能大赛建筑工程识图赛项圆满落幕
如何加强职业院校学生的德育教育
浅谈职业院校中的美术教育
全国第17届“经略资源”杯幼儿主题绘画比赛江苏省外赛点招募启事
亲历世界技能大赛汽车技术赛项
全国职业院校技能大赛农业类赛项在江苏举行
支持水利职业院校发展
职业院校不能仅培养一线普通工人