完整word学生信息管理系统的设计与实现.docx
《完整word学生信息管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《完整word学生信息管理系统的设计与实现.docx(15页珍藏版)》请在冰点文库上搜索。
完整word学生信息管理系统的设计与实现
学
生
信
息
管
理
系
统
的
设
计
与
实
现
学生信息管理系统的设计与实现
摘要:
学生信息管理系统是典型的信息管理系统(MIS),其开发过程主要包括后台数据库的建立和维护以及前端应用程序两个方面。
本文依据软件工程学原理,介绍了基于VB平台上的学生信息管理系统的结构和功能,并详细地阐述了界面和系统管理模块功能的设计与实现方法。
其主要描述系统主界面的设计、主菜单的设计、用户验证、修改密码、课程管理、学生信息管理等一系列功能.
关键词:
学生信息管理;信息管理系统;SQLServer2000;VisualBasic6.0
1系统分析
1.1背景
学生管理工作是每个学校必须面对的,它是一项传统且繁琐的教育基础管理工作,极为耗费人力、物力.往常,各学校采用人工管理形式,每学期开学时相关人员分别统计各个学生的情况,到了期末又要对相关信息进行处理,比如考试情况、学生课程调动等,面对如此不断反复、繁杂的变化,各学校都要耗费大量的人力、物力.同时,这种以传统人工的方式来管理学生工作,还存在着许多缺点,如效率低、保密性差,另外时间长,将产生大量的冗余文件和数据,这给查找、更新和维护工作都带来了很大的困难.
随着科学技术的不断提高,特别是计算机、网络等相关信息技术的日渐成熟,其强大的功能已经被人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用,特别是它具有的手工管理所无法比拟的优点,使得各个学校都相继采用了信息技术对学生的有关信息进行管理.通过使用计算机技术等手段,将工作人员从重复、繁杂的手工处理中解脱了出来,提高了工作效率,而且减少了人工处理产生的错误。
使教育基础管理工作迈上了一个新的台阶,从而实现了教育基础管理的信息化、科学化、现代化.
1.2需求分析
需求分析是数据库信息管理系统开发的第一步也是最重要的一步。
需求分析就是描述系统的需求,通过定义系统中的关键域,来建立模型.分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通的机制,因此,系统的需求分析应该是开发人员和用户或客户一起完成的.需求分析可以采用面向对象的方法来完成,即明确系统要服务于哪些用户,对这些用户提供哪些服务等。
1。
2。
1系统功能
图1系统结构图
1。
2。
2系统的逻辑模型
数据流图(DFD)是一种全面描述系统逻辑模型的工具,是理解和表达用户需求的工具,是系统分析的手段。
数据流图概括地描述了系统的内部过程。
因而,是系统设计的重要参考资料,是系统设计的起点。
数据流图作为一个存档的文字材料,是进一步修改和充实开发计划的依据。
数据流图从数据传递和加工的角度,利用图形符号通过逐层细分描述系统内各个部件的功能和数据在它们之间传递的情况,来说明系统所完成的功能[7]。
数据流图的特征:
①抽象性——数据流图完全失去了具体的物质,只剩下数据的流动、加工处理和存储。
②概括性—-数据流图可以把系统中的不同业务处理过程联系起来,形成一个整体。
无论是手工操作部分还是计算机处理部分,都可以用数据流图系统地表达。
一般说来,画数据流图应遵循“由外向内,逐步细化”的原则.
由外向内是指根据用户活动图标定系统范围,系统范围内的细节部分可以先不考虑,将其当成一个黑盒子。
图2本系统0层数据流图
逐层细化是指逐一描述系统内部数据流,一般从每个业务的输入端开始向输出端推进,每当经过使数据流的组成或数值发生变化的地方,就用一个“加工"将其连接起来,这个“加工”正是实现这一数据变化[8]。
图3本系统1层数据流图
图4登录数据流图
图5添加数据流图
1。
2。
3功能需求分析
各模块功能需求描述如下:
(1)用户登陆验证功能
对登录的用户账号进行验证,为不同角色的用户分配不同的访问权限,用户身份有管理员和普通用户,根据不同的访问权限,可以进入不同的界面。
(2)用户管理
包括添加用户、删除用户、修改用户等.
(3)学生基本信息管理
管理员可以查看和修改以及删除所有学生信息,普通用户可以根据不同的需求查询学生基本信息.
(4)课程信息管理
课程的设置和课程基本信息的录入、修改、删除等管理。
(5)班级课程安排
包括上课教室、上课时间的安排、修改等管理。
(6)成绩管理
可以实现成绩的录入、修改、按照不同的条件进行查询等功能。
(7)考试成绩的统计与查询
不同的用户根据不同的需求对成绩进行查询,为进一步了解情况,可以对各课成绩进行统计与分析。
2系统设计
2.1数据库设计
在数据库系统的开发过程中,数据库的设计是一个非常重要的环节,数据库设计的好坏将直接对应用系统的效率以及实现的效果产生重要的影响。
如果数据的完整性和一致性比较高,系统就会具有较快的响应速度,简化基于数据库的应用程序实现.数据库设计的关键问题在于确定实体和所需的表结构并确定它们之间的关系。
同时,合理的数据库结构也将有利于程序的实现。
设计数据库系统时,应首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求[9]。
2.1.1系统概念结构设计
关系模型由于是建立在严格的数学概念基础之上,而且概念单一、存取路径对用户透明,所以数据结构简单、清晰,用户易懂易用,具有更高的数据独立性、更好的安全保密性,所以关系数据模型成为目前最重要的一种数据模型.
图6学生选修的局部E—R图
图7教师任课的局部E—R图
图8学生信息管理系统全局E-R图
2。
1。
2数据库逻辑结构设计
概念结构是各种数据模型的共同基础,概念结构设计所得的E—R模型是对用户需求的抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。
为了能够建立起最终的物理系统,我们还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户子模式.这就是数据库逻辑结构设计所要完成的任务[7]。
E—R图虽然是现实世界的反映,与数据库的具体实现毫无关系,但它却是构造实施数据模型的依据.一般来说把E-R图转换为关系模型,对于E—R图中每个实体,都相应转换为一个关系。
对于两实体之间的m:
n联系,必须对“联系"单独建立一个关系表,用来联系双方实体。
根据上面E-R图分析,可以列出以下几个关系模式:
学生(学号,姓名,班级名,民族,性别,政治面貌,联系电话,家庭地址)
课程(课程编号,课程名,学分,学时,类别)
班级(班级号,班级名,人数,班级描述)
教师(教师编号,姓名,职称,专业)
课程安排信息(课程编号,班级号,上课时间,上课地点,任课教师)
考试成绩信息(学号,姓名,课程号,课程名,分数)
用户(用户名,密码,权限)
2.1.3数据库的结构—关系表
表1学生基本信息表
字段名
数据类型
长度
是否允许为空
说明
学号
char
8
主键
姓名
char
8
不允许重复
班级名
char
16
民族
char
16
是
性别
char
2
政治面貌
char
8
是
联系电话
char
13
是
家庭地址
char
20
表2用户信息表
字段名
数据类型
长度
是否允许为空
说明
用户名
char
8
主键
密码
char
6
权限
char
2
表3班级设置信息表
字段名
数据类型
长度
是否允许为空
说明
班级号
int
8
主键
班级名
char
16
人数
int
3
班级描述
char
是
表4课程信息表
字段名
数据类型
长度
是否允许为空
说明
课程编号
char
8
主键
课程名
char
8
学分
char
4
学时
char
4
类别
char
8
表5教师信息表
字段名
数据类型
长度
是否允许为空
说明
教师编号
char
8
主键
姓名
char
8
职称
char
4
是
专业
char
10
是
表6课程安排信息表
字段名
数据类型
长度
是否允许为空
说明
课程编号
char
8
主键
班级号
char
8
主键
上课时间
char
6
上课地点
char
10
任课老师
char
8
表7考试成绩表
字段名
数据类型
长度
是否允许为空
说明
学号
char
8
主键
姓名
char
8
课程号
char
8
主键
课程名
char
8
分数
Float
4
2。
2输入输出设计与实现
详细设计主要包括两部分:
界面设计和编写代码。
以下写出部分子系统模块界面设计。
2.2.1系统登录模块
功能描述:
在用户登录时,首先判断登录用户名和用户密码是否正确,是否具有登录本系统的权限,根据不同的权限可以进入不同系统界面.
图9用户登录窗体
单击“登录"按钮后,对用户名、密码和权限进行验证。
表8登录窗体信息表
对象
名称
功能
标签(Label)
Label1(用户名)
Label2(密码)
Label3(权限)
显示用户名
显示密码
显示权限
文本框(TextBox)
TextBox1
TextBox2
输入用户名
输入密码
命令按钮(Command)
Command1(登录)
Command2(退出)
单选按钮(Option)
Option1(管理员)
Option2(用户)
选择管理员
选择用户
2.2.2系统主模块—-学生信息系统
功能描述:
这时用户进入系统后首先进入的模块,这个模块包括了本系统能完成的各种功能,用户可以调用任一个需要的功能模块。
图10学生信息系统窗体
进入该窗体后,可以根据需要查询信息,可使用下拉菜单,找到所需要模块,进行调用即可.
表9系统主模块窗体信息表
对象
名称
功能
菜单编辑器
菜单编辑器
编辑菜单栏
子菜单
子菜单1(添加学生信息)
子菜单2(学生信息查询)
子菜单3(删除学生信息)
子菜单4(修改学生信息)
命令按钮(Command)
Command1(返回)
2。
2。
3添加模块
功能描述:
管理员根据需要添加用户,同时更新数据库。
图11添加窗体
在窗体上放置多个文本框,用来输入学生基本信息;两个按钮用来确定是否要添加;多个标签用来提示文本框中需要输入的内容.对象属性部分代码都被封装.
表10添加用户窗体信息表
对象
名称
功能
标签(Label)
Label1(用户名)
Label2(密码)
Label3(权限)
显示用户名
显示密码
显示权限
文本框(TextBox)
TextBox1
TextBox2
输入用户名
输入密码
命令按钮(Command)
Command1(登录)
Command2(退出)
单选按钮(Option)
Option1(管理员)
Option2(用户)
选择管理员
选择用户
2.2。
4修改模块