目录

一、实验内容... 4

1.1题目... 4

1.2问题定义... 4

二、需求分析... 4

2.1需求规格说明.. 4

2.1.1数据流图... 5

2.1.2数据字典... 5

2.1.3 E—R图... 7

2.2数据分析与建模.. 7

2.2.1数据分析... 7

2.2.2建模... 7

三、总体设计... 9

3.1模块结构图... 9

3.2管理端相关说明(后端).. 10

3.2.1学生管理... 10

3.2.2教师管理... 11

3.2.3更新题库... 11

3.3学生端相关说明.. 11

3.3.1查看个人信息.. 11

3.3.2查看考试记录.. 11

3.3.3查看教师留言.. 11

3.3.4在线答题... 11

四、详细设计... 12

4.1具体设计的内容(学生端为主)... 12

4.1.1身份验证... 12

4.1.2身份锁定... 12

4.1.3功能详述... 12

4.1.4功能实现的具体方法... 12

4.1.5管理端... 12

4.2 PAD图表示... 13

五、实验小结... 13

5.1收获... 14

5.2心得体会... 14

5.3存在的问题... 14

5.4解决问题的方法.. 14

5.5建议... 14

20202021学年      学期  2018    计算机科学与技术   专业

一、实验内容

1.1题目

大学生心理健康管理系统

1.2问题定义

首先进行软件的定位,此款软件主要针对在校大学生设计。在该平台上,学生通过此平台以及现有的功能(心灵鸡汤发布、心理辅导师管理、学生管理、心理评测、心理素质培养、在线咨询、跟踪辅导等等),能进行合理的在线心理评估。通过学生对试题的解答,老师可以通过查看和评估试卷来了解学生的心理健康情况。下面列举出程序要求:

功能:结合编程语言和数据库等设计并实现大学生心理健康管理系统,主要功能包括:心灵鸡汤发布、心理辅导师管理、学生管理、心理评测、心理素质培养、在线咨询、跟踪辅导等。

要求:管理员能够登录系统进行相关信息添加、删除和修改等更新操作;心理辅导师可完成学生心理评估、在线回复、跟踪辅导;学生可查阅心灵鸡汤文章、心理评估试卷提交、在线咨询。

二、需求分析

2.1需求规格说明

需求分析是软件工程设计的重重之重,通过需求分析进行撰写需求规格说明书就显得尤为重要。通过对同学之间的了解和在互联网上的内容分析。不难得到在“内卷化”的现代,当下大学生心理压力更大,使大学生萌生了一些畸形的想法。通过对现状的分析,不难看出心理健康系统的研发与实验很符合当下潮流。该系统主要通过网上答题的策略,从答题情况侧面反映每个学生的心理素质情况,从而满足设计条件,进而达到用户需求。在满足这些之后,开始进行一系列的需求分析设计,具体情况如下面三条所示:

2.1.1数据流图

数据流图能很清晰的表达出在一个系统中程序的数据流向,通过绘制数据流图能很清晰的表示出数据的交互,从而理清数据动向。数据流图的绘制更是打破用户和程序员之间壁垒的有效利器,总的来说数据流图有如下几点优点:

  1. 数据流图能便捷的表达出用户的功能需求和数据需求及其联系;
  2. 便于两类人员共同理解现行系统和规划系统的框架;
  3. 清晰表达数据流的情况;
  4. 有利于系统建模.

由于数据流图含有以上种种优点,在需求分析阶段给出必要的程序流图是尤为关键的,下面给出该系统的数据流图,如下图:(这里只给出了本人负责的学生——管理端数据流图)

2.1.2数据字典

名字:账号信息

别名:

描述:用于传输账号信息来验证账号和密码是否匹配

定义:账号信息=账号+密码+账号类别

位置:学生端进行身份验证

名字:个人信息表

别名:

描述:该表存放学生个人信息,用于学生查看

定义:个人信息表=学号+姓名+性别+出生日期+年级+专业+电话

位置:学生端的查看个人信息功能,管理端的学生管理功能

名字:考试记录表

别名:

描述:该表存放学生考试信息,用于学生查看

定义:考试记录表=日期+考试编号+题目+作答情况+正确答案+得分+教师评估

位置:学生端的查看考试记录功能,教师端的心理评估功能

名字:对话表

别名:

描述:该表存放教师与学生的交流记录

定义:对话表=学号+工号+日期+对话编号+对话内容

位置:学生端的查看教师留言功能,教师端的查看学生留言功能

名字:答题表

别名:

描述:该表存题库内的题目,用于学生作答

定义:答题表=20{题目编号+题目+选项+正确答案}20

位置:学生端的答题表

名字:心理鸡汤表

别名:

描述:该表存题教师的心灵鸡汤,用于学生阅读

定义:心灵鸡汤表=工号+日期+文章编号+内容

位置:学生端面板右侧

2.1.3 E—R图

E—R图分为实体,属性,关系三个核心部分,实体是长方形体现,而属性是椭圆形,关系为菱形。E—R图的实体是存在于系统中的实例,而属性就是实例中伴随的属性,关系则是连接两个实体的手段。

绘制E-R图的主要目的就是为了精确的将现实中的数据转化为关系数据库中数据模型/模式的图形来表示,是一个有力的建模和数据库文档工具,通过对学生心理系统的了解,不难画出E—R图,整体结构如下:

2.2数据分析与建模

2.2.1数据分析

通过上述三种图的绘制,大概已经了解了大致需要的数据。这时在与客户进行确认需求,保证得到的一系列结果不会出现大的错误而且错误发现的越早,纠正错误的代价就越小

2.2.2建模

在以上过程都正确,且数据分析没有问题的情况下开始建模。此过程主要是对数据库的表结构进行建模具体表结构如下:

学生(学号,姓名,性别,出生日期,院系,专业,电话号码,密码)

教师(工号,姓名,性别,生日,年级,电话号码,密码)

对话(学号,工号,标识符,内容,时间)

试卷信息(答题时间,学号,成绩,试卷内容,教师评估)

心灵鸡汤(工号,时间,内容)

试题库(试卷id,题目,选项A,选项B,选项C,选项D,答案)

上述就是整个数据库的建模

三、总体设计

3.1模块结构图

根据学生端以及管理端对应的功能绘制出模块结构图如下:

上图主要描述了本人实现的部分,下边给出完整的模块结构图:

3.2管理端相关说明(后端)

3.2.1学生管理

通过前端接受到指定数据,锁定关键字,对对应表的指定信息进行增删改查,这里需要注意学号修改时引起的主键变化,在修改主键值时直接删除再添加。

3.2.2教师管理

与学生信息的增删改查大致思路一样,但是要注意修改年级引起的连锁效应

3.2.3更新题库

直接增删改查即可,删除题目时要按注意题号的变化。

3.3学生端相关说明

3.3.1查看个人信息

前端:在最高层面板上使用网格布局管理器,使读取出来的信息,每个信息占据一行,从而达到查看个人信息的效果

后端:在进入系统时,直接在登录的后端java文件中将个人id锁定,进入主界面之后,点击查看,直接去表中搜索对应数据即可。

3.3.2查看考试记录

前端:从上到下滑轮组件中嵌套网格布局,让每个试卷记录占去一个网格大小,并添加查看按钮,点击查看按钮之后弹出一个含有文本域的对话框,用来显示试卷信息。

后端:先使用SQL server统计出个数,确定个数之后确定网格的条数(有下限,一个面板的大小为下限),由于在选取试卷时需要反复筛选是第几套试卷,所以这里可以选择使用游标实现。

3.3.3查看教师留言

前端:类似于pc端qq界面的简易版,能通过下边键入消息,发送到对方端口,从而做到留言聊天功能。

后端:将每条对话信息写入到数据库,并写入标识符。当有人写入数据库时,将这条消息广播出去(即时),但只在指定的用户显示,从而做到聊天留言

3.3.4在线答题

前端:题目+选项显示到一个对话框中,显示20题。

后端:用随机生成函数,随机生成不重复的20个数字(在数据库题目范围之内)并将数字保存,遍历这个数字数组,将对应在数据库中的记录取出即可。

四、详细设计

4.1具体设计的内容(学生端为主)

4.1.1身份验证

身份验证是系统稳定运行的必备条件,先通过用户选择的账户类别锁定对应的数据库中的表,继而用sql语句扫描数据库中的所有用户信息进行匹配,若能匹配成功则视为能登录进该系统。

4.1.2身份锁定

完成身份验证并认证成功之后,系统会自动锁定该用户以及和他相关的教师工号,通过锁定的学号和教师工号来进行进入系统之后的各种操作。

4.1.3功能详述

4.1.3.1查看个人信息和心灵鸡汤

该功能为显示个人信息和心灵鸡汤,个人信息中显示除密码以外的信息,密码类操作只能由管理端进行操作。

4.1.3.2查看考试记录

查看考试记录的面板为新建弹出面板,可以输入查询信息,点击查询按钮之后,根据输入的条件进行筛选。

4.1.3.3查看教师留言

这里依旧是通过弹出新建面板,面板的主要内容是两个文本域,上边是不可编辑用于显示教师和学生的对话内容,下边是输入框,用于输入聊天信息。在显示的时候通过判定对话表中的标识位来判断发送者和接收者。

4.1.3.4在线答题

依旧采用弹出新对话框的形式来展示,只需要随机选出题目即可,然后按照题目(文本域)、选项a、b、c、d(单选框)直接进行对应的选择,写完之后提交到系统,自动评卷之后,显示出此次试卷的成绩并提交对应教师端,等待教师端给出心理评估等信息。

4.1.4功能实现的具体方法

上述功能的实现主要直接通过访问数据库获得,使用sql语句能很便捷的得到各种想要的数据集,最后只需要对得到的数据集进行对应的操作即可。

4.1.5管理端

管理端的显示方式是表格式,通过jtable列举出数据库中所有的元素,在选中某个元素之后,让其所有的值copy到对应的可编辑框中,在进行相应的删、改。在页面上端可以输入查询信息进行查询,直接使用数据库like语句即可实现模糊查询。增加则是一个单独的按钮,在添加时会对所添加的数据进行一系列的限制,来保证写入数据库不会失败。

4.2 PAD图表示

五、实验小结

5.1收获

在这次实验中,第一次体会到撰写文档的困难,但也正是这些困难让我学会了很多撰写文档的知识和基本操作。除此之外,还深刻理解到了很多专业性的知识,比如说:数据流图的绘制、E-R图的设计与分析、数据字典的使用等。在深刻理解了这些基础知识之上,能让人意识到需求分析的重要性,意识到以前很多本末倒置的做法——只在乎代码而不在乎需求分析与设计。逐渐习惯在做代码之前先进行需求分析再动工的思想,让人受益匪浅。

5.2心得体会

本次实验中,遇到的难题不少,但是通过一些自己努力可以解决掉很多问题,有些问题则是需要想同学请教和合作伙伴一起讨论才能得到答案。比如说,建立数据库模型时,就会遇到很多的问题,表结构以及内部结构的属性设置等等。这些繁琐的参数设置和细节问题自己一个人很难考虑的很周全。在和合作伙伴的协作配合下,我们一起对程序进行了大体上的设计与分析,成功建立出需要的数据库模型,进而推荐工程的进一步发展。

5.3存在的问题

  1. 数据流图的绘制。
  2. E-R图的绘制。
  3. 数据库中表的设计。
  4. 需要考虑对用户增、删、改、查带来的连锁效应。

5.4解决问题的方法

  1. 从简单的入手,先画出0层,再根据逐层分解的思想对每个操作进行适当的分解。
  2. 先确定实体,在确定联系,确定联系之后审视联系是否会产生属性,最后充实各实体的属性以及对应关系即可。
  3. 主要是通过讨论,确定表结构内部的属性值
  4. 程序中的细节处理,在需要考虑处做出特殊标识即可

5.5建议

加强在理论课期间的基础知识习题量,多让学生绘制图形。

大学生心理健康管理系统相关推荐

  1. PHP大学生心理健康管理系统

    随着时代的发展,大学生的数量与日预增但是相对的也出现了很多心理问题,大学生自杀等心理问题引起的问题屡见不鲜如何能过更好的培养大学生正确的心理健康问题是现在很多大学多面临的一个重要的问题.本系统主要是对 ...

  2. python+django+vue大学生心理健康管理系统

    整个大学生心理健康管理系统是按照整体需求来实现各个功能的,它可以通过心理健康测评来检测大学生的心理健康,并且给予预警,还可以预约医生来解决问题.并且,管理员可以查看用户信息,发布一些关于心理健康的文章 ...

  3. Python大学生心理健康管理系统django项目源码

    随着时代的发展,大学生的数量与日预增但是相对的也出现了很多心理问题,大学生自杀等心理问题引起的问题屡见不鲜如何能过更好的培养大学生正确的心理健康问题是现在很多大学多面临的一个重要的问题.本系统主要是对 ...

  4. 计算机毕业设计SSM大学生心理健康管理系统【附源码数据库】

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  5. 计算机毕业设计ssm大学生心理健康管理系统3148k系统+程序+源码+lw+远程部署

    计算机毕业设计ssm大学生心理健康管理系统3148k系统+程序+源码+lw+远程部署 计算机毕业设计ssm大学生心理健康管理系统3148k系统+程序+源码+lw+远程部署 本源码技术栈: 项目架构:B ...

  6. 基于PHP+MySQL大学生心理健康管理系统的设计与实现

    随着时代的发展,大学生的数量与日预增但是相对的也出现了很多心理问题,大学生自杀等心理问题引起的问题屡见不鲜如何能过更好的培养大学生正确的心理健康问题是现在很多大学多面临的一个重要的问题.本系统主要是对 ...

  7. 基于安卓的大学生心理健康管理系统的设计与实现

  8. Java+MySQL基于ssm的大学生心理健康教育管理系统

    文末获取源码 开发环境 项目编号:Java+MySQL ssm240大学生心理健康教育管理系统 开发语言:Java 开发工具:IDEA /Eclipse 数据库:MYSQL5.7 应用服务:Tomca ...

  9. 基于移动终端的大学生心理健康交互管理系统的研究与设计

    基于移动终端的大学生心理健康交互管理系统的研究与设计 摘要:近年来随着科技的不断发展和进步,移动智能设备逐渐融入到了我们的日常生活中.为了应对大学生在心理健康管理方面的大量需求,提出了一种基于移动端设 ...

  10. java毕业设计‘大学生心理健康咨询管理系统mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计'大学生心理健康咨询管理系统mybatis+源码+调试部署+系统+数据库+lw java毕业设计'大学生心理健康咨询管理系统mybatis+源码+调试部署+系统+数据库+lw 本源码技 ...

最新文章

  1. MIT用19个神经元实现自动驾驶控制,灵感来自秀丽隐杆线虫
  2. IOS7新增120*120Icon图标
  3. linux虚拟机时间同步
  4. Azure IoT Hub和Event Hub相关的技术系列-索引篇
  5. Kubernetes持续交付-Jenkins X的Helm部署
  6. World Token官网钱包收益是骗人的吗?是传销吗?
  7. jmeter 配置 slave 代理压测机
  8. MPEG2简单码流分析
  9. SQL入门基础视频教程-Visual Foxpro视频教程
  10. 单片机 矩阵式按键
  11. 音视频基础1:H264、H265、MPEG-4、VP8、VP9编码基础知识
  12. 判断四个点是否在同一个平面上
  13. CVPR2020 Rotate-and-Render: Unsupervised Photorealistic Face Rotation from Single-View Images论文笔记
  14. android 工具栏透明,Android 系统状态栏沉浸式/透明化完整解决方案
  15. mysql重叠的词_举例说明叠音词,重叠式复合词,词的重叠,三者有何不同?
  16. System Silencer – 离开时 让电脑自动开始任务
  17. 手机日常使用技巧、和手机停机如何免费上网 。好多大家不知道的功能 不看后悔哦
  18. [***Model mj_objectArrayWithKeyValuesArray:]: unrecognized selector sent to class 0x10ace5df0
  19. 三相四线相位表查错误接线方法与步骤
  20. useradd命令的一些基本操作

热门文章

  1. eclispe 下载与安装
  2. linux下blast设计引物,Primer-BLAST:NCBI的引物设计和特异性检验工具
  3. winpe修复计算机无法启动,pe系统windows启动修复工具怎么使用
  4. 麦子学院bootstrap实战项目官网,后台,jquery.singlePageNav.min.js ,wow.min.js,animate.css使用...
  5. 【麦子学院 彭亮 机器学习】3.2决策树应用(准备篇)
  6. SAM2695 带效果器的低功耗单芯片合成器
  7. Gephi实战教程:从零开始
  8. 非常好的理解遗传算法的例子
  9. vmware workstation14永久激活密钥分享
  10. Modelsim下载 安装 与 和谐教程