学生信息管理系统的设计与实现毕业设计论文Word文档下载推荐.docx
《学生信息管理系统的设计与实现毕业设计论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统的设计与实现毕业设计论文Word文档下载推荐.docx(46页珍藏版)》请在冰豆网上搜索。
①数字格式验证:
输入非数字或超长度的符号后返回系统,提示非法输入并要求重新输入。
②登陆者账号、密码正确性验证:
通过读取文件中数据,验证输入的账号、密码等的正确性,如果输入错误提示重新输入。
③数据读取验证:
当数据不存在时候,提示相应错误信息并返回上一级操作界面;
④其它必需的异常处理。
(2)可靠性:
除非人为执行退出命令、意外断电等非人为控制的错误,否则系统始终在运行中。
(3)高效性:
系统写入读出数据应当即时处理。
(4)易用性:
系统应该让所有管理者能够根据不同的角色,提示信息进行所需操作。
(5)清晰性:
系统各功能模块名称应准确、易懂。
(6)安全性:
通过密码验证,系统能够防止任何没有账号密码人员的登陆。
(7)可扩展性:
系统应能够在不对原有代码做大的修改的前提下,轻松扩展其它功能。
比如:
实现网络多级管理。
(8)可移植性:
系统在WindowsServer2003下开发,应能够不需修改而在Linux、Unix等系统上正常运行。
1.4本课题主要内容
第一部分:
绪论。
介绍了论文的选题背景、研究的意义和主要内容。
第二部分:
系统概述。
简述本系统研究概况、系统的主要功能和功能概况。
第三部分:
系统分析。
介绍本系统的开发技术、开发工具及数据库的设计。
第四部分:
总体设计。
介绍本系统的整体设计和各功能模块设计。
第五部分:
功能实现。
各功能模块的具体设计与实现方法。
第六部分:
系统测试。
主要介绍测试计划和项目测试说明。
第七部分:
系统的不足和改进思想。
第八部分:
结论。
对系统的开发和在开发过程中存在的问题进行总结。
第九部分:
致谢。
简述通过本次项目设计的体会,并对指导老师致谢。
第十部分:
参考文献。
列举在系统开发和论文书写过程中所用到的书籍。
2系统概述
学生信息管理系统是学校教务管理的一个重要系统,随着现代教育事业的发展和学校规模的不断壮大,为了方便学校管理学生和统一规划,特别是对学校高层管理学生起着关键性作用。
从传统的手工记录学生信息、教师信息、其他人员信息,到21世纪的计算机技术的快速发展,软件成为一个管理方面的重要手段。
其中强大的计算机技术为学校和相关大学,院校提供了强有力的支持,利用计算机的优势,对学生,教师,及其他人员的管理就更为方便,并且效率更高。
查询某高校万人中某个学生的相关就业情况,学习情况,户籍信息,计算机软件(学生信息管理系统)的作用尤为突出了。
众所周知,在许多高校中,并没有提供完全固定的课程表,学生在每学期的一开始根据自己的专业要求和兴趣在一些选修课或者限选课中进行选择,从而决定本学期自己要学习的课程,这样有时会出现僧多粥少的情况,以至于超出选课人数而不得不另选其他课程。
对此,我们小组共同开发了此套软件,以此帮助高校领导管理学校信息和学生在系统上选择课程。
2.1系统功能
本系统的功能实现分为不同的角色,主要有:
学生,教师,管理员,学校其他人员等,其中各个角色的功能具体如下:
学生的功能主要是查看个人的基本信息、修改登陆系统密码、学生选课管理,查看已选课程等操作。
教师的功能主要是查看个人的基本信息,修改登陆系统密码,查看所教学生的信息,查看个人担任课程安排等操作。
管理员的功能主要是查看个人的基本信息、修改登陆系统密码,管理院系、管理人员、毕业生去向和对这些管理模块信息的查看、删除、更新、添加等操作。
学校其他人员的功能主要是查看个人的基本信息、修改登陆系统密码操作。
2.2功能操作
管理员操作流程,如图2-1所示:
图2-1管理员操作流程图
各功能模块具体功能,如图2-2所示:
图2-2系统功能模块图
3系统分析
3.1对现有系统的分析
目前,有很多大中专院校都有了自己的学生档案管理系统,但是系统庞大,操作复杂,操作很不方便,本系统针对该弊端,设计了基于C/S架构的操作简单的一套学生信息管理系统。
3.2开发技术和开发工具
3.2.1开发语言
在目前广泛流行的程序设计语言中,能够完成此档案管理系统开发的语言有很多。
例如:
ASP、ASP.NET、JSP、PHP、Java、C#等等。
然而,在诸多的系统开发语言中,本系统选择的是JavaSE语言。
开发C/S架构的系统,JavaSE有着它独特的优势:
平台无关性。
开发出的系统可在装有JVM的任何操作系统上运行。
3.2.2开发工具
本系统的开发平台为:
Netbeans6.5,该平台操作简单,可方便的拖拉控件,并能快捷的定制代码。
3.2.3数据库技术
本系统采用的是SQLServer2005,该数据库功能强大,操作简单,数据存储量大,运用于中小型系统,适合本系统的开发和使用。
3.3数据库的需求分析
用户的需求具体体现在对各种信息的提供、保存、更新和查询,这就要求数据库能充分满足各种数据的输出和输入。
通过对上述系统功能的分析,针对学生信息管理系统的需求,总结出如下的需求信息:
(1)用户分学生用户、教师用户和管理员用户:
①一个院系包括多个专业。
②一个专业包括多个学生。
③一个专业包括多门课程。
④一门课程对应一位教师,一位教师可以教多门课程。
⑤一个院系对应多个教师。
⑥一个学生可以选多门课程,每门课程可由多个学生选学。
(2)经过对上述系统功能的分析和需求总结,设计如下所示的数据项:
①管理员信息,包括用户名和密码。
②教师,包括教师名、教师工号、所属院系等。
③学生,包括学生编号、学生姓名、所属院系、性别、所属专业等。
④院系,包括院系名称。
⑤专业,包括专业名称、所属院系。
⑥课程,包括课程名称、课程描述、所属专业及所属教师。
4系统总体设计
本系统采用三层架构,表现层通过统一的接口向数据访问层发送请求,业务逻辑层将请求按照一定的逻辑规则处理后进入数据库操作,然后将从数据库返回的数据集合封装对象的形式返回到表现层。
通过这样的数据处理流程,用户表现层甚至可以不知道数据库的结构,只要维护与数据访问层之间的接口即可。
这种方式在一定程度上增加了数据库的安全性,同时也降低了对用户表现层开发人员的需求,因为表现层不需要进行任何关于数据库的操作。
4.1系统架构设计
三层架构模型,如图4-1所示:
图4-1三层架构模型图
客户端三层架构各功能说明,如表4-1所示:
表4-1功能说明表
功能层
功能描述
管理员主界面
用户可看见操作界面,系统最外层,提供用户各功能,与业务逻辑层相互作用,通过业务逻辑层实现查看,添加,更新,删除等操作。
业务逻辑层
逻辑层处于用户主要界面实现和数据层之间,与数据库直接交互数据,其中业务逻辑层封装了所有对数据的访问。
数据库访问层
系统的最低层,提供数据库操作的接口和存储本系统所有数据。
4.2功能模块设计
以下是各角色功能模块操作,如图4-2~图4-4所示:
毕业生去向
人员管理操作
院系管理操作
图4-2管理员操作图
添加学生成绩
教师任课信息
教师信息查询
图4-3教师功能操作图
学生选课
学生信息查询
学生课程查询
图4-4学生功能操作图
4.3数据库设计
4.3.1数据库概念设计
根据上述数据项,可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
这样可以对本院系的设计以下实体:
管理员信息实体、教师信息实体、学生信息实体、院系信息实体、专业信息实体和课程信息实体等。
实体之间的关系图以及各实体E-R图,如图4-5~图4-13所示:
图4-5实体之间的关系图
图4-6学生E-R图
图4-7教师E-R图
图4-8管理员E-R图
图4-9其他人员E-R图
图4-10课程E-R图
图4-11专业E-R图
图4-12院系E-R图
图4-13班级E-R图
4.3.2系统表设计
根据以上信息,建立相应的实体数据表及关系数据表,如表4-2~表4-19所示:
表4-2学生信息表(Students)
序号
列名
数据类型
长度
字段说明
1
stu_id
nchar
10
学生学号ID,主键
2
stu_pwd
nvarchar
35
登陆密码,默认值采用MD5加密法:
E1ADC3949BA59ABBE56E057F2F883E,对应的实际密码为”123456”
3
stu_name
varchar
20
学生姓名,不为空
4
stu_sex
char
学生性别,约束“男”或“女”
5
stu_ingrade
int
学生入学成绩,约束500-800之间
6
stu_address
100
学生户籍,不为空
7
stu_date
学生出生年月
8
stu_xuezhi
学生学制,
约束大专3年或本科4年,不为空
9
stu_org
学生面貌,约束为”团员”或”党员”
stu_tel
11
学生联系电话
stu_type
入学类型,约束“对口生”或“普通生”
12
class_id
所在班级的ID号
13
Sel_chose
选择课的ID号,可为空,默认值“11111“,代表尚未选择任何选修课程
表4-3教师信息表(Teachers)
tea_id
教师ID编号,主键
tea_pwd
narchar
教师登陆密码,默认值采用MD5加密法:
E1ADC3949BA59ABBE56E057F2F883E,对应的实际密码为”123456”,可以为空
tea_name
nvrchar
教师姓名,不为空
tea_sex
教师性别
tea_title
30
教师职称(讲师,教授,博士,班主任等)
tea_tel
教师联系电话
tea_info
text
教师介绍
表4-4教师授课表(Teach)
teach_id
教师授课ID,从1开始自增1,主键
les_id
教师担任课程ID号
sys_id
系别ID号
教师ID号
表4-5管理员表(Managers)
manager_id
管理ID号,不为空,主键
manager_pwd
管理员密码,默认值采用MD5加密法:
manager_name
管理姓名,不为空
manager_room
管理员办公室
manager_tel
管理员联系方式
表4-6其他人员表(Others)
other_id
学校其他人员ID号,主键
other_pwd
其他人员密码,默认值采用MD5加密E1ADC3949BA59ABBE56E057F2F883E,对应的实际密码为”123456”,可以为空
other_name
其他人员姓名,不为空
other_dept
人员所属部门(财务,人事)
other_level
职务(职员,部长),可以为空
other_tel
人员联系电话,可以为空
表4-7课程表(Lesson)
课程ID号,不为空,主键
les_name
课程名称,不为空
les_book
课程所需书籍,不为空
les_date
学年,按月计算,如半年,6个月为一个学年
les_type
课程类型(基础课、必修课、选修课)
les_plan
是否有课程设计
les_check
考核方式(考查、考试)
表4-8专业表(Speciality)
spe_id
专业ID唯一,主键,从1自增
spe_name
专业名称,不为空
spe_info
ntext
专业描述,可为空
专业所属系的ID号,不为空
表4-9院系表(Sys)
院系ID唯一,主键,从1自增
sys_name
50
系名称,不为空
sys_director
系主任,不为空
sys_sec
系书记
sys_tea
系辅导员(主要负责学生的老师)
sys_room
系办公室
sys_stu
本系的总人数
表4-10日程表(Calendar)
cal_id
日程序列号,不为空,主键,自增从1开始,每次增1
院系ID号,不同院系日程安排不一样,不为空
cal_info
日程安排的内容
表4-11选课表(SelectLesson)
sel_id
int
选课ID号,不为空,主键,自增从1开始,增1
课程ID,不为空
学生ID,不为空
表4-12班级表(Class)
字段说明
班级ID,不为空,主键,自增
class_name
班级名称,不为空
班级所学专业id,不为空
班主任,不为空
max_num
此班最大人数
表4-13成绩表(Grade)
grade_id
成绩ID号,自增从1开始自动增加1
学生学号,不为空
课程ID号,不为空
les_grade
float
成绩,约束(0---100之间)
stu_score
学分,总共为120学分
is_update
是否补过考
表4-14奖学金表(Burse)
burse_level
奖学金ID号,主键
burse_score
达到奖学金需要的分数
burse_money
money
相对应的达到某个分数得到不同的奖励
表4-15选修课表(Eletive)
id
ID编号,主键,自增
选修课的ID号,不为空
限选人数,不为空
class_time
每周的上课时间
info