心理健康普查系统.docx
《心理健康普查系统.docx》由会员分享,可在线阅读,更多相关《心理健康普查系统.docx(46页珍藏版)》请在冰豆网上搜索。
心理健康普查系统
天津农学院
毕业设计
中文题目:
天津农学院学生心理健康普查系统的
设计与实现
英文题目:
DesignandRealizationofTianjin
AgriculturalUniversityStudentsMental
HealthSurveySystem
学生姓名
系别
专业班级
指导教师
成绩评定
2013年6月
摘要
学生心理健康普查系统是为了树立学校良好的现代化形象,提高管理人员的工作效率和管理水平,面对心理健康信息化的发展趋势而设计的。
该系统采用ASP.NET技术作为创建应用程序的方式,以C#作为编程语言,采用MicrosoftVisualStudio2008快速开发工具开发前台,采用SQLServer2005数据库作为后台数据库。
学生首次登陆的用户名和密码都是学号,登陆后可修改密码,首次登陆需要填写相关信息,之后参加心理测试,测试后即可查看测试结果。
后台管理员登陆后可修改学生的基本信息,查看测试结果,并对试题进行管理。
系统极大的减轻了后台管理人员的工作量,提高了学生的心理健康普查效率。
关键词:
心理健康,普查系统,MicrosoftVisualStudio2008,SQLServer2005
ABSTRACT
Students'mentalhealthscreeningsystemistoestablishamodernimageofthegoodschools,improvemanagementefficiencyandmanagementlevel,thefaceofmentalhealthinformationtechnologytrendsanddesign.ThesystemusesASP.NETtechnologyasawaytocreateapplicationstoC#asaprogramminglanguage,usingMicrosoftVisualStudio2008developmentprospectsrapiddevelopmenttool,usingSQLServer2005databaseasabackenddatabase.Studentsfirstloginusernameandpasswordarestudentnumber,youcanmodifyyourpasswordafterlanding,thefirstlandingneedstofillintherelevantinformation,andthenparticipateinpsychologicaltesting,youcanviewthetestresultsafterthetest.Afterlandingbackgroundadministratorcanmodifythestudentsbasicinformation,viewtestresults,andquestionsformanagement.Systemsgreatlyreducetheadminworkload,improvestudents'mentalhealthscreeningefficiency.
Keywords:
mentalhealth,surveysystem,MicrosoftVisualStudio2008,SQLServer2005
天津农学院学生心理健康普查系统的设计与实现
张静
(天津农学院计算机科学与信息工程系)
1绪论
1.1开发背景
随着Internet技术的发展,人们的日常生活、学习已经离不开网络。
未来社会人们的生活和工作将越来越依赖于数字技术的发展,越来越数字化、网络化、信息化,可以充分相信网络技术将极大的改变我们的生活和工作方式,就目前情况而言,数据信息化已经成为各行各业的必备工具。
传统的停留在纸介质基础上的心理普查资料管理浪费大量的人力和物力,已经不能适应时代的发展,其安全性也不能得到有效的保障。
在信息时代,这种管理方法必将被以计算机为基础的管理信息系统所取代。
现阶段学生心理普查系统的开发模式多数是C/S模式。
C/S模式最大的好处是不依赖外网环境,能够充分发挥客户端PC的处理能力,但其客户端的软件配置需求过高也成为其不可忽视的缺点之一。
为了弥补C/S模式的不足,B/S模式应运而生。
B/S模式开发简单,运行维护简单方便,共享性强,因此开发一套基于B/S模式的学生心理健康普查系统是十分必要的。
这种无纸化的管理方式不仅为学生提供更优质的服务,而且为后台管理人员减少了工作量,使得学校工作效率和管理水平有所提高,从而提高经济效益[1]。
1.2开发目的
学生心理健康普查系统的开发目的是为了解新生入学时的心理健康状况,各学校都建立了学生的心理档案,以便今后有针对性地开展心理健康教育工作,及早发现有心理问题的学生并给予及时的心理帮助和治疗,为学校制定相关教育管理政策提供某方面的参考和依据[2]。
该系统使人们从劳动化向智能化发展,满足学生日益增长的对心理健康的需求,使其向着高效、信息化、无纸化、安全可靠的方向发展,进而实现普查、信息、服务一体化的综合管理。
1.3设计思路
心理健康普查系统是提供给后台管理人员和学生使用的,方便、快捷的管理信息的操作平台。
对于学生,主要预期实现学生登录、忘记密码(可选)、添加基本信息、参加心理测试、查看测试结果的功能。
对于后台管理员,主要实现管理员登录、管理学生基本信息、查看测试结果、对于试题部分的管理。
前台页面布局美观,便于操作,后台页面简洁直观,致力于对数据进行管理,减少冗余的工作,提高管理员的工作效率[3]。
2系统总体说明
2.1使用环境
为了确保系统能够运行高效可靠,需要服务器端具备较高配置,客户端达到相应的系统运行指标即可[4]。
具体运行要求如下:
2.1.1硬件配置要求
服务器端:
CPU:
双核以上Pentium/AMD处理器。
内存:
1G以上。
客户端:
CPU:
600HZ以上Pentium/AMD处理器。
内存:
256MB以上。
显示器:
1024*768像素。
2.1.2软件配置要求
服务器端:
操作系统:
Windows2003操作系统。
数据库:
MicrosoftSQLServer2005。
软件:
.NETFrameWork3.5。
InternetInformationServer(IIS)5.1及其以上版本。
客户端:
操作系统:
Windows7操作系统。
浏览器:
360安全浏览器6.1。
2.2系统主要功能
2.2.1前台服务功能
(1)学生登陆:
学生首次登陆用户名和密码都是学号,登陆进去之后可以修改密码
(2)忘记密码(可选):
如果学生忘记了密码,可以通过回答密码设置问题找回密码,或者通过邮箱找回密码。
(3)添加基本信息:
学生首次登陆需要添加基本信息,之后参加心理测试。
(4)参加心理测试:
学生开始进行答题(题目不需要特别多),给每道题设置相应的分数,总分60。
(5)查看测试结果:
可用简单的算法给学生一个测试的分数,让学生可以自己看到。
2.2.2后台服务功能
(1)管理员登陆
(2)修改学生基本信息:
修改某个学生的基本信息。
(3)查看测试结果
①按时间查看:
可查看每个时间段的学生
②按分数查看:
可查看每个分数的学生
(4)试题部分,有两种方式,任选其一
①直接将试题写在网页上,不从数据库中抽取
②从数据库中抽取试卷
2.3系统主要特点
学生心理健康普查系统是基于ASP.NET3.5技术开发出来的,它具备用户登录、用户管理、后台管理等多种功能,是一个使用方便、操作简单、功能较完备的管理系统[5]。
该系统以方便、快捷作为主要目标,能够提高学校管理人员的工作效率,减少不必要的人力和财力。
系统主要特点是界面设计清晰、层次结构简洁,可供管理员方便快捷的使用和更新数据。
学生通过登录系统可以方便快捷的查询并修改自己的个人基本信息,进行测试,测试结束后即可查看到测试的结果,方便学生了解自己的情况,也可让学校及时对有心理问题的学生进行帮助。
在后台管理模块,实现了对学生信息和试题的管理,由于前台前台信息是是自行进行的,不需要管理员维护,管理员只需修改数据库中的数据,前台就会有相应的改变,因此管理员可以专心于管理网站的数据信息,达到简化管理的目的。
3开发环境与相关技术
3.1开发环境
软件环境:
操作系统:
Windows7Professional。
浏览工具:
360安全浏览器6.1。
开发平台:
VisualStudio2008TeamSuite。
数据库:
SQLServer2005Express。
辅助工具:
AdobePhotoshopCS4。
硬件环境:
CPU:
Intel(R)Core(TM)i5-480M。
内存:
2GB。
硬盘:
500GB。
3.2开发工具的选用及介绍
3.2.1MicrosoftVisualStudio2008
VisualStudio是微软公司推出的开发环境,VisualStudio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。
VisualStudio2008包括各种增强功能,例如可视化设计器、对Web开发工具的大量改进,以及能够加速开发和处理所有类型数据的语言增强功能[5]。
VisualStudio2008为开发人员提供了所有相关的工具和框架支持,帮助创建引人注目的、令人印象深刻并支持AJAX的Web应用程序。
开发人员能够利用这些丰富的客户端和服务器端框架轻松构建以客户为中心的Web应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前浏览器内运行并完全访问ASP.NET应用程序服务和Microsoft平台。
为了帮助开发人员迅速创建先进的软件,VisualStudio2008提供了改进的语言和数据功能,例如语言集成的查询(LINQ),各个编程人员可以利用这些功能更轻松地构建解决方案以分析和处理信息[7]。
3.2.2MicrosoftSQLServer2005
SQL(StructuredQueryLanguage),结构化查询语言。
SQL语言的主要功能就是同各种数据库建立联系,进行沟通。
按照ANSI的规定,SQL被作为关系型数据库管理系统的标准语言[8]。
SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。
绝大多数流行的关系型数据库管理系统都采用了SQL语言标准。
虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select,Insert,Update,Delete,Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。
与MicrosoftVisualStudio、MicrosoftOfficeSystem以及新的开发工具包的紧密集成使SQLServer2005与众不同[9]。
无论是开发人员、数据库管理员、信息工作者还是决策者,SQLServer2005都可以提供创新的解决方案,帮助从数据中更多地获益。
3.3设计方法与技术
3.3.1设计方法
该系统遵循软件生命周期,经历可行性分析、需求分析、设计、编码、测试阶段完成。
(1)可行性分析:
探究开发学生心理健康普查系统的可行性,这里主要考虑了个人技术可行性以及操作可行性。
(2)需求分析:
查阅资料及参考文献,了解现今学生心理将康普查系统的背景。
认真分析学生对系统的功能需求以及系统的性能需求。
(3)设计:
主要进行系统总体规划及数据库的设计、确定系统服务人群和涵盖功能、整体部署系统基本框架并根据其使用SQLServer2005设计合理的数据库[10]。
(4)编码:
编码主要使用MicrosoftVisualStudio2008进行功能程序文件的编码及网页文件的设计。
程序文件主要使用C#语言编程实现相关功能,网页文件的设计则使用CSS内嵌样式统一布局,美化页面[11]。
(5)测试:
网站基本完成后,调试运行网站进行测试并对其中的错误逐步修改。
3.3.2设计技术
系统运用ASP.NET3.5技术,ASP.NET能够提供一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。
ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言创作应用程序。
另外,任何ASP.NET应用程序都可以使用整个.NETFramework。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等[12]。
ASP.NET可以无缝地与MicrosoftVisualStudio.NET一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
4系统设计要点
4.1数据库设计
4.1.1数据库的概念设计
数据库概念设计主要涉及实体-属性图的设计。
学生的实体-属性如图1所示:
图1学生的实体-属性图
试题管理的实体-属性如图2所示:
图2试题管理的实体-属性图
查看成绩的实体-属性如图3所示:
图3查看成绩的实体-属性图
4.1.2数据库的逻辑设计
数据库逻辑设计主要是建立数据表,确定每个表的字段、数据类型、长度、是否为空等。
根据对系统的需求分析,为天津农学院学生心理健康普查系统建立数据库,其中包括:
学生表(user)、试题管理表(testpage),数据库中数据表的结构如下:
(1)user结构见表1
表1user表
字段名称
类型
长度
字段描述
是否为空
说明
ID
int
4
学生编号
否
主键
username
varchar
50
用户名
是
无
password
varchar
50
密码
是
无
priv
varchar
50
确认密码
是
无
question
varchar
100
提示问题
是
无
answer
datetime
100
问题答案
是
无
(2)testpage结构见表2
表2testpage表
字段名称
类型
长度
字段描述
是否为空
说明
ID
int
4
试题编号
否
主键
title
varchar
120
试题名称
是
无
answer
varchar
10
答案
是
无
(3)finishedtime结构见表3
表3finishedtime表
字段名称
类型
长度
字段描述
是否为空
说明
ID
int
4
学生编号
否
主键
name
varchar
50
学生姓名
是
无
score
int
4
成绩
是
无
Finishedtime
varchar
4
完成时间
是
无
4.1.3数据库各表之间的关系
为了网站的管理及避免产生冗余的数据,该系统划分的各个表之间有相应的关联。
各个表的关系关联如图4所示:
图4表的关系关联图
4.2系统整体介绍
4.2.1系统前台功能结构
前台功能结构如图5所示:
图5前台功能结构图
4.2.2系统后台功能结构
后台结构功能如图6所示:
图6后台功能结构图
4.3系统主要功能的实现
4.3.1身份验证
身份验证模块主要是区别各个使用角色并判断是否允许其进入功能页面进行管理。
该模块包括用户注册、用户登录、用户注销以及管理员登录四个功能。
身份验证模块流程图如图7所示:
图7身份验证模块流程图
用户进入系统可以看到用户登录控件,如图8所示:
图8用户登录控件
已注册用户可以输入账号及密码进行登录,未注册用户可以点击用户注册按钮进入注册页面。
注册界面如图9所示:
图9注册界面
为了保证数据的有效规范,注册页面加入很多验证控件,例如:
用RequiredFieldValidator控件限制用户ID等数据不能为空、CompareValidator验证密码与确认密码是否一致等。
用户注册页面的部分功能代码如下:
publicpartialclass心理健康普查系统_register:
System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidButton1_Click(objectsender,EventArgse)
{
if(TextBox1.Text.Trim().ToString()=="")
{
Label1.Text="用户名不能为空!
";
Label1.Visible=true;
return;
}
else
{
Label1.Visible=false;
if(TextBox2.Text.Trim().ToString()=="")
{
Label2.Text="密码不能为空!
";
Label2.Visible=true;
return;
}
else
{
Label2.Visible=false;
If(TextBox3.Text.Trim().ToString()!
=TextBox2.Text.Trim().ToString())
{
Label3.Text="两次密码不一致!
";
Label3.Visible=true;
return;
}
else
{
Label3.Visible=false;
if(TextBox4.Text.Trim().ToString()=="")
{
Label4.Text="提示问题不能为空!
";
Label4.Visible=true;
return;
}
else
{
Label4.Visible=false;
//进行注册。
//1.查看用户是否已存在
BLLbll=newBLL();
if(bll.CheckUser(TextBox1.Text.Trim().ToString()))
{
Label1.Text="用户名已存在!
";
Label1.Visible=true;
}
else
{
Label1.Visible=false;
Useruser=newUser();
user.UserName=TextBox1.Text.Trim().ToString();
user.Password=TextBox2.Text.Trim().ToString();
user.Priv=2;
user.Question=TextBox4.Text.Trim().ToString();
user.Answer=TextBox5.Text.Trim().ToString();
bll.insertUser(user);
//Common.Alertjs("注册成功!
");
Common.AlertAndRedirect("注册成功!
","Default2.aspx");
}
}
}
}
}
}
}
正确填写完相应信息后,点击确认会显示注册成功,但要经过管理员后台审核后才可登录。
审核通过后登录主页用户登录模块会显示已登录用户名,同时用户可以使用其中的退出功能注销登录。
具体如图10所示:
图10用户登录成功界面
点击系统首页中的后台管理会跳转到管理员登录页面可以进行管理员登录。
登录页面如11图所示:
图11管理员登录界面
4.3.2用户功能模块设计
用户的主要功能包括用户信息修改模块和心理测试模块。
用户注册登录后,可修改密码,进行心理测试,查看测试结果。
用户功能模块流程图如图12所示:
图12用户功能模块流程图
(1)用户在注册时需要填写提示问题,为了便于后期更改密码,用户登录账户后点击密码修改,需要填写密保答案,之后才可以修改密码,修改密码页面如图13所示:
图13修改密码页面
修改密码的相关部分实现功能代码如下:
publicpartialclass心理健康普查系统_changepwd:
System.Web.UI.Page
{
Useruser=newUser();
BLLbll=newBLL();
privatestringanswer{get;set;}
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!
IsPostBack){
if(Session["UserId"]==null)
{
Common.AlertAndRedirect("对不起您还没有登录","Default2.aspx");
}
}
if(GlobalFlag.getFlag()!
=2)
{
Changepwd.Visible=false;
user=bll.getUser(Convert.ToInt32(Session["UserId"]));
Label6.Text=user.Question;
answer=user.Answer;
}
else{
Checkanswer.Visible=false;
Changepwd.Visible=true;
}
}
protectedvoidButton1_Click(objectsender,EventArgse)
{
if(answer==TextBox1.Text.Trim().ToString())
{
Changepwd.Visible=true;
Checkanswer.Visible=false;
GlobalFlag.setFlag
(2);
}
else
{
Label2.Visible=true;
return;
}
}
protectedvoidButton2_Click(objectsender,EventArgse)