一种具有语音播报功能的单独招生平台的设计

2020-12-07 06:03李俊成李健徐运标杨幸成亚玲刘曼春
软件工程 2020年11期

李俊成 李健 徐运标 杨幸 成亚玲 刘曼春

摘  要:单独招生由各高职院校自主组织、实施的分类招生选拔考试。本文针对单独招生的综合素质测试的组织、管理和实施工作,利用数据库技术、web技术、语音自动播报技术及SSM框架技术(Spring + SpringMVC + MyBatis)等信息技术,设计并实现了一种具有语音播报功能的单独招生综合素质测试系统,并应用于本单位单独招生综合素质测试工作。应用显示,本系统较好地解决了综合素质测试工作中的考生、考官、考场、候考、导考、测试、结果统计与分析等管理工作,提高了测试工作的效率和信息化水平。

关键词:单独招生;综合素质测试;SSM框架技术;语音播报

中图分类号:TP31     文献标识码:A

Abstract: Independent enrollment is organized and implemented by each higher vocational college. This paper proposes and implements a students' comprehensive quality test system with voice broadcast function for college's independent enrollment. The system uses database technology, web, voice automatic broadcast and SSM (Spring + SpringMVC + MyBatis) framework. The designed system is used to test students' comprehensive quality in the independent enrollment task in the author's college. Application results show that the proposed system can effectively carry out management tasks, including those of students' comprehensive quality test, examinees, examiners, examination rooms, waiting for examination, guide, test, and analysis of performance statistics. The system improves the efficiency of the tests and informatization level.

Keywords: independent enrollment; comprehensive quality test; SSM framework technology; voice broadcast

1   引言(Introduction)

教育部從2007年开始在全国高职院校开展单独招生工作试点,10多年来,其招生形式得到了社会、家长和考生广泛认可,招生规模、参考人数不断增加,考务工作难度越来越大,为了提高效率,各高职院校都逐步采用信息技术手段助力单独招生工作。例如,将UML应用于单独招生考务系统设计,开发了基于web的考试系统、利用SSM框架、HTML5、Jquery、CSS3等技术来提高开发效率和增加用户体验[1-4],这些系统更多侧重于实现了无纸化考试系统的功能,而将单招测试工作整体流程考虑不多。本文从单独测试工作的流程规范出发,根据测试工作的参与角色职责,分为七类用户,综合利用数据库技术、web技术、语音自动播报技术及SSM框架技术等信息技术手段解决单独招生测试工作中的考生、考官、考场、候考、导考、测试、结果统计与分析等管理工作,重点实现了智能导考、候考提醒,创造性地解决了考官、导考、考生之间的衔接与沟通,提高了测试工作的效率和信息化水平。

2   系统分析(System analysis)

2.1   系统需求分析

本系统主要针对职业院校单独招生综合素质测试工作,实现二级学院信息管理、专业管理、用户管理、素质测试题库、在线测试、在线成绩评定、成绩审核、考核指标体系管理、考场管理(测试考场和候考室)、考官管理、考生数据管理、考生导考管理、考务管理等工作,实现单独招生综合素质测试的信息化和智能化[3]。

2.2   系统功能分析

本系统用户分为系统管理员(超级管理员)、二级学院管理员、候考管理员、主考、考官、统分员、考生七类人员。各类用户的系统功能如下:

(1)系统管理员:登录管理、密码找回管理、二级学院信息管理、二级学院专业信息管理、二级学院管理员信息管理、安全管理等功能。

(2)二级学院管理员:登录管理、密码找回管理、安全管理、考生信息管理、考官管理、候考室管理、测试考场管理、考试试题管理、测试权重管理、考生查询管理、考场门贴管理、考生签名表管理。

(3)主考官:登录管理、密码找回管理、考生呼叫、考试过程管理(开始考试、结束考试、缺考、评分结束)、考试结果导出管理、考生评分、安全管理。

(4)考官:登录管理、密码找回管理、安全管理、考生评分。

(5)候考室管理员:登录管理、密码找回管理、安全管理、播报管理(暂停、重新播放)。

(6)统分员:登录管理、密码找回管理、安全管理、审核、生成考生成绩表。

(7)考生:登录管理、在线测试、安全管理。

3   系统设计(System design)

3.1   总体设计

根据系统预定的目标,基于用户角色功能划分,整体上分学生和教师(除学生外的所有用户)两个入口[4]。从系统运行、使用、管理与维护的角度出发,本系统采用B/S模式;为了保证系统设计技术的先进性和可扩展性,采用SSM(Spring+

SpringMVC+MyBatis)+MySQL+Tomcat相结合的技术,分为用户层、Web容器层、SSM整合层、数据存储四个层次,如图1所示。

用户层为各类用户提供不同的功能界面,实现用户数据呈现和系统功能交互,通过http协议与Web容器层进行通信。

Web容器层即Web服务器,主要负责Web项目的管理,开启监听端口监听用户层发出的请求,解析用户发来的http请求,然后将请求转发到SSM整合层,并将SSM整合层返回的视图呈现给用户层。

SSM層是整个系统的技术核心,采用分层模型,实现层间松耦合。根据功能又可分为DAO层、Service层和Web表现层。DAO层由MyBatis框架负责,主要负责创建DAO接口、映射文件,执行数据库操作(CRUD)、事务管理等方面的工作;Service层称为业务逻辑层,通过调用DAO层的对象进行相关业务处理,包括业务接口功能定义及业务接口功能的实现。Web表现层主要实现包括系统业务流程的控制及页面视图,由Spring MVC模块实现,是整个系统控制中心,页面视图主要负责用户数据的呈现,一般包括JSP页面、JQuery、CSS等。Spring是整个SSM的核心,相当于“管家”角色,主要为SSM体系内各层注入对象,实现对象的生命周期管理,并负责Spring与MyBatis、Spring MVC与MyBatis的整合[5-7]。

数据存储层,主要实现数据的物理存储与管理,由MySQL关系数据库实现。

整个系统执行流程:用户通过浏览器发送请求,Web服务器获得请求后转发给Spring MVC的控制器,控制器调用业务层处理业务逻辑,逻辑层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器通过视图解析、视图填充,最终给提交给Web服务器,Web服务器将HTML内容发送给浏览器[8-10]。

3.2   数据存储设计

为保证系统的运行,需要存储系部信息、专业信息、用户角色信息、用户信息、考生信息、测试题库信息、考场信息、测试指标权重、测试等级权重等信息,这些信息分别存储在相应的表中,表之间建立了相应的约束,以维护数据的一致性与完整性,同时,为了保证系统功能的灵活性,专门针对系统功能建立了表,实现系统功能的动态配置。下面以测试指标权重表和测试考场安排表的设计进行介绍。

测试指标权重表d_testright结构如表1所示。通过设计父级指标(rightparentid)字段,指示该指标对应的上一级指标,从而保证了测试指标体系的动态可扩展,能有效满足指标体 系的个性化设置需求。

4   系统关键技术(The key technologies)

4.1   SSM框架技术

为了降低系统的耦合度,提高系统的可扩展性、代码的复用性,降低系统后期的可维护性,尽可能减少系统硬编码,采取变编程为配置的思想,采用主流的SSM框架技术,将系统功能实现分层实现,提高了系统开发的效率。图2是基于SSM框架执行增加一个系部信息的执行流程。

4.2   文本转换成语音技术

Windows系统的文本转换成语音的引擎MSTTS(Microsoft Text To Speech),能够实现将文本转换成音频流。JACOB(Java-COM Bridge)是Java与Microsoft的COM接口之间的桥梁,它通过自带的DLL动态链接库,并通过JNI的方式实现了在Java平台上对COM程序的调用,提供了自动化访问MS系统下COM组件和Win32 libraries的功能,可支持32位和64位JVMs。通过jacob包中的ActiveXComponent类创建用于封装COM组件Java对象,通过对象的getObject()方法创建文件流对象和音频流格式对象;通过Dispatch类对象的put()、call()、putRef()等方法设置音频流格式、播放音量、播放速率、设置音频输出对象、创建wav文件,生成对应文本的wav文件[11-14]。

4.3   jQuery技术

为了提高程序的交互性和响应效率,本系统中采用功能强大、代码简洁的JavaScript框架jQuery(jquery-3.2.1.min.js),

它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。具有独特的链式语法和短小清晰的多功能接口、高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件等特性。通过jQuery使得页面视图的数据展示与页面和后台服务器之间的数据交互分离,简化了页面代码,提高了程序代码的执行效率和可维护性。通过使用$.ajax()实现前端页面和后端web容器之间的异步交互和页面局部更新,提升应用程序的效率和改善用户体验[15-18]。

4.4   系统其他相关技术

采用Maven进行项目管理,它通过POM模型(Project Object Model)来描述项目,遵循应用横切的逻辑,对项目进行自动构建和依赖管理,简化项目的管理和维护。

通过Spring AOP技术,自动为切面方法中匹配的方法所在的类生成代理对象,通过访问权限切面实现用户的安全访问;通过事务切面,实现对数据操作的事务管理。通过外部请求拦截器、管理员拦截器、学生拦截器针对不同用户对页面的访问进行preHandle处理,确保页面访问的安全;启用基于注解的事务管理,对所有执行业务层的访问方法均定义为切入点(Pointcut),并开启事务增强(通知)处理,确保数据操作的一致性和完整性,并将所有数据获取的方法(get、find、select开始的所有方法)定义为只读事务。

参考文献(References)

[1] 全雪辉.技能高考制度框架设计与组织实施研究—以湖北省为例[J].武汉船舶职业技术学院学报,2016,15(3):1-2.

[2] 刘祥,孟丽娟,吕薇,等.职业适应性测试在高职院校单招考试中的应用[J].课程教育研究,2018,7(13):236-237.

[3] 孙文兴,陈华.基于UML的单独招生考务管理系统设计与分析[J].昆明冶金高等专科学校学报,2016,32(5):62-69.

[4] 彭腾.单独招生管理系统的分析与设计[J].信息与电脑,2016,10(21):136-138.

[5] Lee Han Seong, Jo Bo Hyun, Kim Hui Jung. Plossom: Web-based Project Management System Using Spring Boot[J]. Journal of The Korea Internet of Things Society, 2016,2(3):17-24.

[6] 李洋.SSM框架在Web应用开发中的设计与实现[J].计算机技术与发展,2016,26(12):190-194.

[7] 林钰杰,吴丽贤.基于整合框架的Web应用系统开发平台设计与实现[J].电子设计工程,2016,24(20):62-65.

[8] 王锋,李芳颂,刘晓华,等.敏捷开发中的Web应用开发框架研究[J].数字技术与应用,2016,34(8):114.

[9] 王建,罗政,张希,等.Web项目前后端分离的设计与实现[J].软件工程,2020,23(4):22-24.

[10] 郑逸凡.基于SSM框架的在线教学系统的设计[J].长沙大学学报,2019,34(2):41-44.

[11] 王天琦,王恒,王学明,等.基于TTS文语转换的网页播报平台的研究与建设[J].信息技术与信息化,2019,43(1):37-39.

[12] 刘同斌,陈韬,武燕如.WEB语音告警软件的设计与实现[J].机电信息,2019,18(24):142-143.

[13] 郑荣纬,吴业毅.医院检验窗口实名制排队系统的设计与应用[J].电子设计工程,2016,22(24):116-118.

[14] 蒋恺.基于TTS的参会提醒系统的设计与实现[J].科技风,2019,31(5):5.

[15] 丁華,陈辉.基于WEB的上机考核系统中JQuery和Ajax技术的应用[J].电子设计工程,2016,22(15):16-19.

[16] 刘焱.jQuery在平台中的应用开发研究[J].信息系统工程,2019,31(1):91.

[17] 陈明珠,袁伟,陆进城,等.基于Jquery的Web前端桌面应用系统设计[J].福建电脑,2018,34(11):123;130.

[18] 周萍,赵娜,李慕.Bootstrap框架在响应式Web设计中的应用[J].软件导刊,2017,16(6):135-137.