大学生心理测评系统的设计
2021-12-03孙玲玲湖南信息学院
文/孙玲玲(湖南信息学院)
本文主要是在基于大学生心理测评节系统需求分析的基础上,对系统进行详细的设计。
一、系统设计的原则
系统的设计需要遵循一定的设计原则,以确保系统建设的完整、高效、规范。针对大学生心理健康测评系统的开发建设,需要遵循以下开发设计原则:
(1)先进性:以先进、成熟、主流的互联网技术为系统运行服务,支持各主流浏览器及操作系统。
(2)标准化和开放性:采用符合ISO或IEEE、ITUT、ANSI等 标准的协议,采用符合国际和国家标准的设备,采用符合互联网大型网站的主流技术与应用。
(3)可靠性和稳定性:选用高效可靠的产品和技术,充分考虑系统在程序运行时的应变能力和容错能力,确保整个系统的安全与可靠,要有强大的网络负载能力,支持多用户、多进程的传输和多用户的并发访问。
(4)实用性和经济性:从实用性和经济性出发,兼顾近期目标和长远发展,选用先进的设备,进行最佳性能组合,利用有限的投资构造性能最佳的系统。
(5)安全性和保密性:要求与学校信息系统安全技术标准同步,在互联网应用上,符合主流互联网应用安全标准。
(6)扩展性和升级能力:选用具有良好升级能力和扩展性的设备,在今后的升级和扩展中,能保护现有投资,并支持多种网络协议、高层协议和多媒体应用。
(7)可管理性:规范化的管理及访问行为记录方式,方便系统的管理和维护。
二、系统总体架构设计
学生心理健康测评系统采用的是B/S架构模式,系统部署在服务器端,用户只需要使用浏览器就能访问该系统并进行相关操作,无须进行本地软件安装工作。用户通过浏览器向系统服务器发起http请求,服务器在收到请求后做出应答将数据中间件与数据库进行链接,然后将用户请求的数据资源通过浏览器渲染以web页面的方式呈现给用户,供其进行相关系统操作。根据MVC三层架构模式进行系统的功能设计,系统整体的软件架构如图1所示。
图1 系统整体架构
为了保证系统能够支撑大量用户访问,能够及时响应用户请求,各子功能模块之间能够低耦合最大限度地减小互相之间的依赖影响,能够保证服务完整性及高可用性,系统的服务端技术架构如图2所示。系统采用Nginx服务器作为服务代理,系统消息处理使用ActiveMQ,缓存使用Redis,文本搜索采用Lucene服务,整个系统接口采用Restful API模式,同时考虑数据安全性使用云存储服务保障数据安全,此外,系统还采用安全组件、日志组件、异常组件等一些公共组件确保系统的稳定性及可靠性。
图2 系统服务技术架构
三、扩展性设计
由于本系统建设属于B/S模式,这是一种互联网应用建设,是一项长期、不断扩展和进化更新的系统工程,是可持续优化的应用系统,为了保证它的业务功能是根据服务的需要不断修正和扩充的,要求整个系统纵向和横向均可以扩展。扩展性设计总体要求如图3所示。
图3 系统扩展性设计要求
纵向:保证系统的各个应用模块按照功能分开,减少各部分之间的干扰。
横向:保证系统可以随着业务的扩充而不断增加服务能力。
四、关键问题解决方案
(一)文本分析模块设计
对学生提交的问卷主观题回答结果及学生心理健康咨询模块中文本数据进行分词处理,采用Spark大数据计算框架进行并发分词处理。首先将保存在mysql数据库中的文本数据传入Spark中转为dataframe,通过Spark进行并行计算处理,对其文本数据进行分词,分词后根据聚类分析模块进行聚类分析学生心理健康状态,最后将数据结果转存到mysql中。该模块设计如图4所示。
图4 文本分析模块设计
(二)分词分析模块设计
对文本进行分词处理,其流程设计为:首先进行文本清洗,然后对内容文本分词,接着做去除停用词处理,然后对分词取前5000个词作为特征,针对这些特征词进行特征向量化,然后保存预处理模型,接着调用预处理模型,最后输出预处理数据。本文选用Ansj开源中文分词工具对文本数据进行分词处理。Ansj是 一 个 基 于n-Gram、CRF、HMM的中文分词的java实现,其分词速度达到每秒钟大约200万字左右(mac air下测试),准确率能达到96%以上。目前该分词工具实现了中文分词、中文姓名识别、用户自定义词典、关键字提取、自动摘要、关键字标记等功能。分词处理流程设计如图5所示。
图5 分词分析模块设计
(三)聚类分析算法设计
本文中所涉及数据挖掘功能是对用户答题及本文分词处理完后,通过FCM聚类分析学生的性格聚类特征。FCM模糊聚类算法是一种将向量组分类的算法,通常会先定义数据集的某些重要参数,一般为2个,分别为样本聚类数目N以及模糊加权指数z,其中样本聚类数目是由主观定义的,另一个参数z在当前的学术研究中也很难定义其中最合适的取值,这就导致该算法的有效性并不是很高,往往还需要进行再次验证,因为这些特性该算法应用受限。FCM算法是目前比较流行的一种模糊聚类算法,究其原因大致有以下几个方面:首先,模糊C—均值泛函Jm仍是传统硬C一均值泛函J1的自然推广;硬C一均值泛函J1是一个应用十分广泛的聚类准则,对其在理论上的研究已经相当完善,这就为Jm的研究提供了良好的条件;其次,数学上看,Jm与RS的希尔伯特空间结构(正交投影和均方逼近理论)有密切的关系,因此比其他泛函有更深厚的数学基础;最后,也是最重要的是该目标函数不仅在许多领域获得了非常成功的应用,而且以FCM算法为基础,人们提出的基于其他原型的模糊聚类算法,形成了一大批FCM类型的算法:如模糊C一线(FCL)、模糊C一面(FCP)等聚类算法,分别实现了对呈线状、超平面状结构模式子集(或聚类)的检测。本文所实现的算法流程设计如下:
Step3.循环(更新聚类中心以及隶属函数)并判断目标函数Jfuz是否变化足够小,以F范数为变化的度量。
Step4.退出循环,返回dist(各类别到各样本的距离矩阵)、最新的聚类中心以及目标函数。
其中,聚类中心更新公式μi表示为
算法流程示意图见图6。
图6 聚类分析算法流程设计
本算法在相关模块中具体应用实现则在后续系统实现的章节中进行部分核心代码的介绍。
五、系统主要功能模块设计
学生心理健康测评系统主要由系统管理模块、测评题库管理模块、心理测评管理模块、问题学生辅导模块、心理健康知识库管理模块这五大模块构成。本系统功能划分如图7所示。
图7中,给出了本系统的主要功能模块的结构划分,下面对这些功能模块分别进行详细介绍。
图7 系统功能模块
(一)系统管理模块设计
系统管理模块的功能主要是对用户进行增、删、查、改等数据CRUD操作管理,并对不同的用户类型进行相应的权限管理,同时系统自动对登录进入系统的用户操作行为进行记录及审计,系统管理员维护管理系统的访问记录及后台数据。该模块系统管理员操作的具体流程图如图8所示。
图8 系统管理流程图
(二)测评题库管理模块设计
该模块主要功能是系统管理员对测评题库的管理,首先包括对测评题目进行增、删、查、改等数据CRUD操作管理,题目支持从数据源导入、文件导入及手动逐条添加。然后,该模块的一个主要功能是系统管理员从题库中选择题目生成调查问卷并设置问卷答题时间。问卷生成后,系统管理员可以预览问卷,并可对问卷进行编辑,继续添加试题或者删除试题。该模块系统管理员的操作流程如图9所示。
图9 测评题库管理流程图
(三)学生心理测评管理模块设计
学生心理测评管理模块主要由问卷测试、数据挖掘算法聚类分析、测评结果生成及通知反馈功能模块构成。作为系统的核心模块,主要实现学生用户通过在线回答相关专业心理健康调查问卷后来反映其自身的心理健康状况,认知自己是否存在心理健康问题。在完成了相关的调查问卷后,系统会反馈其测试分数,并有对应的心理健康状态描述,同时通过对答题结果进行数据挖掘算法聚类分析其性格特征,这让学生更加了解自己相应的心理情况,完整了解自己的性格特点,如存在心理问题,则通过教师参考相关心理辅导策略进行心理健康辅导工作,帮助学生预防心理疾病,解决其心理问题。
1.问卷测试
该功能由在线测试、问卷计分、问卷提交构成,学生在该模块中通过完成系统管理员设置的一系列心理健康调查问卷,比提交到系统后台,从而测试出相应的分数。系统自动对问卷结果进行统计计分,然后记录得分结果。通过该测试,学生用户能够得到自己心里健康情况描述的数据描述。
2.数据挖掘算法聚类分析
该功能就是利用FCM算法将用户的答题结果进行聚类分析,分析其性格特征。
3.测评结果生成
该功能是将用户的心理健康得分结果、后台按照得分分析的该学生心理健康状态描述结果以及通过聚类算法分析的其性格特征结果生成一份完成的结果报告。
4.通知反馈
该功能是系统对学生的测评结果进行一个分析反馈的过程,系统自动将学生的心理测评结果报告通知学生在系统中的后台消息中心。同时,根据该学生的心理状态结果报告,如该学生存在心理健康问题,系统会自动生成对应的心理辅导策略并连同心理测评结果通知到教师在系统中的后台消息中心,指导教师跟进该学生开展相关心理辅导工作。
学生心理测评管理具体的流程图如图10所示。
图10 学生心理测评管理流程图
(四)辅导管理模块的设计
辅导管理模块主要包括两部分的功能,一部分为学生在线请求心理咨询辅导,另一部分为教师进行线上辅导,组织专家对问题学生进行辅导,记录辅导情况,查询管理问题学生等。
1.学生在线咨询
学生用户通过系统的身份认证进入到系统中,点击辅导管理页面中的在线咨询,发起在线咨询,通过留言的方式将自己需要专家解答的心理问题内容发送给教师。在该功能中,学生可以查看教师对自己提出问题的解答。学生在线咨询功能流程图如图11所示。
图11 学生在线咨询流程图
2.教师辅导管理
在该模块中,教师用户通过系统的身份认证进入到系统中,点击辅导管理页面查看学生的咨询问题,并进行相关解答,解答内容结果直接推送回到问题学生后台。同时,教师还可以根据系统给出辅导策略进行线下辅导,组织相关心理专家、医生对问题学生进行辅导,并在系统中记录辅导时间、辅导专家名字、专家辅导情况等。此外,教师还可以对学生及这些记录情况进行查看管理。
图12所示为教师辅导管理流程示意图。
图12 老师辅导管理流程图
(五)心理健康知识库管理模块的设计
心理健康知识库管理模块中,系统管理员需要对知识库进行维护和管理,具体内容如下:
内容管理:对知识内容进行导入、修改、删除、查看等维护工作。
栏目管理:管理知识库的栏目,对健康知识进行分栏目展示,可以添加、修改、删除栏目。可以将不同类别的知识放到不同栏目下进行展示。
文章搜索:可以对知识库中的知识进行模糊搜索,从而各用户进入该模块中可以方便快捷地通过搜索找到自己想要了解的知识内容。
心理健康知识库的管理流程图如图13所示。
图13 心理健康知识库管理流程图
六、数据库设计
系统数据库的设计,是系统设计的关键环节,是整个软件系统的根基,是软件设计的起点,它起着决定性的质变作用,数据库设计的好坏能够很大程度上影响系统性能的优劣。良好的数据库设计,能够使得系统在进行相关业务的处理过程中,优化数据操作速度,提高业务响应速度,能够节省数据的存储空间,能够保证数据的完整性,能够方便进行数据库应用系统的开发。而糟糕的数据库设计,会造成数据冗余、存储空间浪费,有可能造成数据更新和插入的异常。
七、小结
本文给出了学生心理健康测评系统的设计分析内容。在完成了对本系统的基本功能需求分析之后,列出了本系统的设计原则。然后对系统的总体架构设计进行了描述,分别从系统MVC三层结构模式及服务技术架构两个方面给出架构描述。接着对系统的扩展性设计内容进行了介绍。然后介绍了系统所采用的数据挖掘算法FCM和系统采用该算法进行性格特征聚类分析。接着又介绍了系统的主要功能模块的设计内容,最后对系统的主要数据库表进行了详细的介绍。