毕业设计选修课程管理系统.docx
《毕业设计选修课程管理系统.docx》由会员分享,可在线阅读,更多相关《毕业设计选修课程管理系统.docx(26页珍藏版)》请在冰豆网上搜索。
毕业设计选修课程管理系统
学号:
07034050108
毕业设计说明书
题目:
选修课程管理系统
英文并列题目:
Electivecoursemanagementsystem
学院电信学院专业计算机科学与技术班级07-1班
学生*****指导教师(职称)*****
完成时间2011年3月15日至2011年5月20日
摘要
随着各个学校的规模增大,有关学生管理工作所涉及的数据量越来越大,各个学校的学生管理基本上都是靠手工进行,有的学校不得不靠增加人力、物力来进行学生管理。
但手工管理具有效率底、,所以我想借本次毕业设计之际,开发一个不仅适用本校各系而且适用于其它各校的通用高校学生管理系统。
学生管理系统已经成为适应我国高等教育扩大规模和培养高等人才跨世纪工程的关键环节,也是高等教育得以顺利发展的基础条件。
建设相关的学生信息管理系统,将会促进高等教育的发展。
学生管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:
效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
建立学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高办学效益和现代化水平。
帮助广大教师提高工作效率,实现学生成绩信息管理工作流程的系统化、规范化和自动化。
因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我将以开发学生管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。
关键词:
java&;选修课管理;.java系统
Abstract
Withtheincreaseinthesizeofeachschool,thestudentsinvolvedinthemanagementofgrowingamountofdata,eachschool'sstudentmanagementarebasicallycarriedoutbyhand,someschoolshadtorelyonadditionalhumanandmaterialresourcesforstudentmanagement.However,efficientmanagementofthebottomhand,soIwouldliketotaketheoccasionofthegraduationproject,notonlyforthedevelopmentofaschoolfacultiesandotherschoolsforthegeneralcollegestudentmanagementsystem.Studentmanagementsystemhasbeenadaptedtoexpandthescaleofhighereducationandtrainingofhighercross-centuryprojectofkeytalentisthebasisforthesmoothdevelopmentofhighereducationconditions.Buildingrelatedstudentinformationmanagementsystem,willpromotedevelopmentofhighereducation.
Studentmanagementsystemisanindispensablepartoftheeducationunit,itscontentsforschoolsiscriticaltobothpolicymakersandmanagers,sothestudentmanagementsystemshouldbeabletoprovideuserswithsufficientinformationandfastsearchtool.Butithasbeentheuseoftraditionalmanualmanagementofpaperfiles,themanagementapproachhasmanyshortcomings,suchas:
lowefficiency,poorsecurity,theotherovertime,willhavealargenumberofdocumentsanddata,whichforthesearch,updateandmaintainhavebroughtalotofdifficulties.
Aspartofcomputerapplications,theuseofcomputerstostudentsininformationmanagement,managementmanualwithincomparableadvantages.Forexample:
Searchfast,easytofind,highreliability,largememorycapacity,securityandgood,longlifeandlowcost.Theseadvantagescangreatlyimprovetheirmanagementefficiency,butalsocorporatescientificandstandardizedmanagement,animportantconditionforintegrationwiththeworld.Establishmentofstudentachievementmanagementsystemthatusescomputerstomanagestudentachievement,tofurtherimproveoperatingefficiencyandmodernization.Helptheteachersimproveefficiencyandachievestudentperformanceinformationmanagementworkflow,systematic,standardizedandautomated.
Therefore,thedevelopmentofamanagementsoftwaresuchthingsasnecessary,inthefollowingchaptersIwilldevelopthestudentmanagementsystem,forexample,talkaboutitsdevelopmentprocessandtheissuesinvolvedandtheirsolutions.
Keywords:
java&mysql;electivemanagement;.Javasystem
目 录
前言
当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。
使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
本系统就是为了管理好选课信息而设计的。
学校作为一种信息资源的集散地,学生和课程繁多,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,甚至尚未使用计算机进行信息管理。
根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于选课情况的统计和查询等往往采用对课程的人工检查进行,对学生的选课权限、以及选课代号等用人工计算、手抄进行。
数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。
总的来说,缺乏系统,规范的信息管理手段。
数据处理手工操作,工作量大,出错率高,出错后不易更改。
学校采取手工方式对学生选课情况进行人工管理,由于信息比较多,选课信息的管理工作混乱而又复杂;一般选课情况是记录在文件上,课程的数目和代号也记录在文件中,学校的工作人员也只是当时对它比较清楚,时间长了,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。
如要对很长时间以前的选课进行更改就更加困难了。
基于这些问题,我认为有必要建立一个学生选课系统,使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。
一、需求分析
1.1系统简要分析
管理员可以通过超级用户身份登录,对系统进行全面的管理,对新用户的添加,删除,对信息进行管理。
管理员可以对老师及同学的帐户进行管理,
老师、学生不同身份的用户进入不同的界面,进行不同的操作。
教师可以发布自己本学期所要教的课程,以及对学生成绩进行管理。
同学可以通过查询本学期所开设课程进行选择。
1.2应用需求分析
学生选课系统需要满足来自三方面的需求,这三个方面分别是学生、教师和管理员。
学生的需求是查询院系的课程、学生选课情况及学生信息的修改;教师对选课系统学生选课情况进行操作,同时形成学生选课查看确认;选课管理员的功能最为复杂,包括对学生、教师、选课进行管理和统计,及系统状态的查看、维护并生成选课报表。
学生可以直接查看选课情况,学生可以根据本人学号和密码登录系统,还可以进行本人学科成绩情况的查询和维护部分个人信息。
一般情况下,学生只应该查询和维护本人的选课情况和个人信息,若查询和维护其他学生的选课及成绩查询信息,就要知道其他学生的学号和密码。
这些是很难得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。
学校工作人员有修改学生选课的权限,所以需对工作人员登陆本模块进行更多的考虑。
在此系统中,学校工作人员可以为学生加入选课或是登陆记录,并打印生成相应的报表给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。
本功能实现对选课信息、教师信息、总体选课情况信息的查询和统计、工作人员和管理人员信息查看及维护。
学校管理员可以浏览、查询、修改、统计选课的基本信息;浏览、查询、统计和修改学生选课的基本信息,浏览、查询、统计学生信息,但不能添加删除和修改学生的信息,这部分功能应该由院系工作人员执行,但是,删除某条学生选课基本信息记录时,应实现对该学生选课的级联删除。
并且还应具有生成选课报表,并打印输出的功能。
设计不同用户的操作权限和登陆方法对所有用户开放的学生选课查询和个人部分信息维护查看个人情况信息维护学生个人密码根据选课情况对数据库进行操作并生成报表根据选课情况对数据库进行操作并生成报表查询及统计各种信息维选课信息维护工作人员和管理员信息维护学生信息处理信息的完整性。
本系统主要实现教师信息管理、学生信息管理、课程信息管理,其中教师信息管理有教师姓名、教师工号、教师职称、教师所属系;学生信息管理有学生姓名、学生学号、学生所在系、年龄、出生日期,备注;课程信息管理有课程号、课程名称、学分、开课学期、开课系、;
(1)学生信息模块完成学生的登陆,然后根据各位同学所在的系不同,调用相应的选课模块。
其中学生登录模块的功能是验证登录人员确实是本院的学生,学生启动本系统后,系统提示输入学生学号码和密码,验证后进入主控操作界面。
(2)教师信息模块完成教师的登陆,然后根据各位教师所在的系不同,教师所教的课程不同,调用所选的课程.其中教师登陆模块的功能是验证登录人员确实是本院的教师,教师启动本系统后,系统提示输入教师工号和密码,验证后进入主控操作界面。
(3)课程信息管理包括课程和选修课程,学生必需先登陆才能进行对课程的选课否则不能进入选课系统.
二、概要设计
2.1业务流分析
学生选课管理系统的业务流程:
首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入,然后保存信息到数据库中。
有权限的人可以对这些库信息进行修改和删除。
所有用户均可以进行信息查询和统计。
2.2数据流分析
学生选课管理系统的数据流程:
首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入处理,然后保存信息到数据库中。
有权限的人可以对这些库信息进行修改和删除处理。
所有用户均可以进行信息查询和统计,结果可以报表打印。
2.3程序数据流程分析及流程设计
选修课选课系统主要分为两大模块:
管理员模块和一般用户模块,管理员可以是教师也可以是学生,不过管理员必须承担一定的责任。
管理员模块又分为对用户的管理和对选课的管理,对用户的管理模块应有的功能是对新用户的添加,对无用用户的删除;选课管理模块应有的功能包括新开设选修课信息的添加,对原有课程信息的修改,对学校不再开设的课程进行删除,一轮选课结束以后对各科选课人数归零。
一般用户模块既学生应用模块是该系统最基本的功能模块,因为此模块应完成访客登录的身份验证,学生选修公共选修课记录的添加,对公共选修课信息的查询,对教师信息的查询,学生对自己已经选修哪些课进行查询。
所以,按照需要完成的要求又分成了各具体执行模块。
设计的实现可以通过下面的框图有一个基本的了解。
首先,无论是管理员还是普通用户都要从同一个登录页面,经过验证以后才能进入系统,使用该系统。
不同权限的用户登录以后会进入具有不同权限的页面,获取相应的菜单进行进一步的操作。
如下图:
管理员登录学生登录
其次,管理员登录进入管理页面后,可以对上面框图中的菜单进行操作。
菜单中的功能主要分成添加新记录到数据库和对数据库里的记录进行修改和删除操作。
添加新用户、新开设课程都属于数据添加动作,对课程的删除、修改都属于执行动作。
学生登录模块的重点在于选课(图2)。
学生可以查询自己选修过什么课,查询教师的信息,查询课程信息。
学生登录时用户名是自己的学号,选课时进行选课操作时先要选择课程名,然后还得选择教师名,通过这两个关键字,确定一门课,如果选修了相同课程名和课程号的课程,以前的记录将被新记录所替代。
以上
(图4-4)
查询
(图2)
2.4数据字典
①其中“学号”数据项可以如下描述:
数据项:
学号
含义说明:
唯一标识每个学生
别名:
学生编号
类型:
字符型
长度:
10
取值范围:
0000000000至9999999999
取值含义:
第1~2位表示学生所在年级,第3~4位表示学生所在院系,第5~6位表示学生所学专业,第7~8位表示学生的班次编号,第9~10位表示在班级的顺序号。
②“学生”是学生管理子系统中的一个重要数据结构,它可以如下描述:
数据结构:
学生
含义说明:
是学生选课子系统的不可少的数据结构,定义了一个学生的有关信息。
组成:
学号、姓名、班级、系部、密码、年龄、出生日期、性别、备注。
③数据流“成绩查询表”可以如下描述:
数据流:
学生对所选课程的成绩进行查询。
说明:
查询学生选课成绩。
数据流来源:
考试/考查的卷面分数。
数据流去向:
课程最终评定分数。
组成:
学号、记录号、课程号、成绩。
④数据存储“学生选课表”可以如下描述:
数据存储:
学生选课表
说明:
记录学生选课的基本情况
流入数据流:
学号、所选课程号、成绩、课程所属类别。
流出数据流:
人数、选课状态、平均成绩。
存取方式:
随机存取
2.5系统数据模型设计
2.5.1E-R图
总E-R图
2.5.2数据库建表
由于本系统是一个网络应用系统,建立相应的数据库是必需的,并且要对数据库进行相应的操作,以及对用户选课产生的数据进行处理、维护和管理。
本系统应用于internet上,设计数据库时,采用了sqlserver2000,设计主要有学生基本信息表,供选修课程信息表,选课信息表,教师信息表。
以下就是于设计相关的数据库中各表的结构:
学生表(Student)
课程表(Course)
选课表(SC)
教师信息表:
字段
数据类型
数据长度
工号
char
6
姓名
char
10
班级
char
20
密码
char
5
系部
char
20
就是本人依据设计需要完成的功能、要求做出的结构设计。
三、详细设计
系统模块的具体实现
3.1登陆模块的设计与功能实现:
界面设计如下:
登陆窗体如下所示:
登陆时注意:
∙一定要选择用户类型,即为学生或管理员,登陆时请按自己的身份登陆,否则将不会进入并弹出出错窗口
∙如果用户是学生,且为第一次登陆,默认密码是888,登陆后请修改
∙如果管理员第一次使用,请用admin/accp登陆,登陆完毕,请建立自己的用户,并记住密码。
∙如果管理员忘记了自己的密码,可以用admin/accp登陆,登陆完毕,再重置自己的密码。
3.2系统管理
3.2.1系统管理菜单如下所示:
注意:
∙学生不能全用户管理菜单项,只有管理员才可以使用
∙修改密码菜单项,只能修改当前登陆用户的密码
∙如果登陆的用户是admin,则不能修改
∙注销,表示退出当前的所有程序,进行重新登陆,亦可以切换用户
3.2.2用户管理窗口如下所示:
∙在此窗体中可以增加、修改、删除管理员用户,但只可以修改学生的密码,要删除或修改学生的信息,请参见“管理员操作”菜单
∙在进行操作之前,应先选中要操作的类别是管理员,还是学生。
∙双击要操作的对象,进行选中,然后才可以对此进行操作。
∙进行修改密码时,先选中,然后输入新密码,确认密码,最后点击“修改”,如果修改成功,会弹出成功对话框
3.3管理员操作
管理员操作菜单如下:
∙此菜单只有管理员才可以使用
∙下级菜单项
o学生信息修改
o课程信息修改
o教师信息修改
o选修课程修改
3.4学生信息界面设计与功能实现
∙若要浏览学生的基本信息可以在记录导航中点击“上一条”,“下一条”进行浏览。
∙若要删除某个学生,必须先删除与之相关连的其它信息,如课程选修
∙添加学生时,必须符合程序要求的规范,如果不符,将会弹出出错对话框。
∙可以在“查询方式”下拉列表框中选择方式,然后在文本框中输入要查找的信息,点击查询,即可查询所需信息
代码实现:
PublicSearchTypeAsString
PublicSearchNameAsString
PrivateSubCmdAdd_Click()
AdodcStudent.Recordset.AddNew
TxtSno.SetFocus
CmdAdd.Enabled=False
CmdDelete.Enabled=False
CmdCancel.Enabled=True
CmdUpdate.Enabled=True
CallEnableButton(False)
EndSub
PrivateSubCmdCancel_Click()
AdodcStudent.Recordset.CancelUpdate
CmdAdd.Enabled=True
CmdDelete.Enabled=True
CmdCancel.Enabled=False
CmdUpdate.Enabled=False
CallEnableButton(True)
EndSub
PrivateSubCmdDelete_Click()
DimrAsInteger
r=MsgBox("您确定要删除当前记录?
",vbExclamation+vbYesNo,"信息提示")
Ifr=vbYesThen
AdodcStudent.Recordset.Delete
AdodcStudent.Recordset.MoveNext
IfAdodcStudent.Recordset.EOFThen
AdodcStudent.Recordset.MoveLast
EndIf
EndIf
EndSub
PrivateSubCmdFirst_Click()
AdodcStudent.Recordset.MoveFirst
EndSub
PrivateSubCmdLast_Click()
AdodcStudent.Recordset.MoveLast
EndSub
PrivateSubCmdNext_Click()
AdodcStudent.Recordset.MoveNext
IfAdodcStudent.Recordset.EOFThenAdodcStudent.Recordset.MoveLast
EndSub
PrivateSubCmdPrevious_Click()
AdodcStudent.Recordset.MovePrevious
IfAdodcStudent.Recordset.BOFThenAdodcStudent.Recordset.MoveFirst
EndSub
PrivateSubCmdQuit_Click()
FrmChoose.Show
UnloadMe
EndSub
PrivateSubCmdSearch_Click()
SearchName=TxtSearchName.Text
IfTxtSearchName.Text=""Then
MsgBox"您没有输入查询条件",vbExclamation,"出错信息"
Else
UnloadMe
FrmSsearch.Show
EndIf
EndSub
PrivateSubCmdUpdate_Click()
IfTxtSno.Text=""Then
MsgBox"对不起,学号不能为空值,请您重新输入",vbExclamation,"出错信息"
TxtSno.SetFocus
Else
IfTxtSname.Text=""Then
MsgBox"对不起,姓名不能为空值,请您重新输入",vbExclamation,"出错信息"
TxtSname.SetFocus
Else
AdodcStudent.Recordset("Sno")=TxtSno.Te