教学信息管理系统.docx
《教学信息管理系统.docx》由会员分享,可在线阅读,更多相关《教学信息管理系统.docx(17页珍藏版)》请在冰点文库上搜索。
教学信息管理系统
201141004049
统计二班王晓宇
课程设计报告
教学信息管理系统
一.课题背景
随着在校大学生人数的不断增加,教务系统的数量也不断的上涨,学校工作繁杂、资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,效率也是很低的。
并且这种传统的方式存在着很多的弊端,如:
保密性差、查询不便、效率低,很难维护和更新等。
这些年电脑计算机的速度质的提高,成本的下降,IT互联网大众趋势的发展。
我们使用电脑的高效率才处理数据信息成为可能。
学生学籍管理系统的出现,正是管理人员与信息数据,计算机的进入互动时代的体现。
友好的人机交互模式,清晰简明的图形界面,高效安全的操作使得我们对成千上万的信息的管理得心应手。
教学信息管理系统是学校管理的重要工具,是学校不可或缺的部分.本系统针对以上缺点能够极大地提高学生信息管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。
所以如何自动高效地管理信息是这些年来许多人所研究的。
通过这个系统,可以做到信息的规范管理,科学统计和快速的查询,从而减少管理方面的工作量。毋庸置疑,切实有效地把计算机管理引入学校教务管理中,对于促进学校管理制度,提高学校教学质量与办学水平有着显著意义。
二.系统分析
2.1.需求分析
根据高校教学信息管理的实际要求,结合教学信息管理的实际流程,开发的教学信息管理系统需要满足以下需求:
1.对学生的基本信息进行管理,其中包括学号、姓名、性别、出生日期、所在班级、联系电话、备注等。
2.对教师的基本信息进行管理,其中包括工号、姓名、年龄、所在系(二级单位)、联系电话、备注等。
3.对学生成绩进行管理,方便学生成绩的录入和查询。
4.对教师的任课进行管理,能输出每位教师的课程表。
5.对成绩等信息提供灵活的浏览和综合查询等功能,可以方便地查看和浏览学生基本信息、教师基本信息、成绩数据。
6.教务员可以对学生、教师基本信息以及课程信息、成绩等具有添加、删除和编辑等操作。
2.2模块设计
根据系统需求分析,结合实际情况,经过模块分析,系统应具有以下几个功能模块:
1.用户管理模块
本系统的用户分为三类:
学生用户、教师用户和教务员用户。
2.学生基本信息管理模块
此部分功能只有教务员具有操作权限。
3.课程基本信息管理模块
此部分功能只有教务员具有操作权限。
4.教师基本信息管理模块
此部分功能只有教务员具有操作权限。
5.程表查询模块
由教师根据自己的工号,查询生成相应时间所授课程的时间和地点,并生成课程表。
2.21功能模块图
功能模块图,如下图所示
2.22数据流图
数据流图,如图所示
2.23数据库设计
2.231实体及其属性
(1)学生实体及其属性,如下图所示
图学生实体
(2)教师实体及其属性,如图所示
图教师实体
(3)管理员实体及其属性,如图所示
图管理员实体
(4)课程实体及其属性,如图所示
图课程实体
(5)班级实体及其属性,如图所示
图班级实体
(6)成绩实体及其属性,如图所示
图成绩实体
学生-班级局部E-R图
学生-班级局部E-R图如下图所示:
1
N
N
图学生-班级局部E-R图
2.233教师-课程局部E-R图
图教师-课程局部E-R图
2.234学生-课程局部E-R图
学生-课程局部E-R图如下图所示:
n
n
图学生-课程局部E-R图
2.235全局E-R图
2.24关系表
教师信息表如下表所示:
表教师信息表
字段名
类型
空值
约束条件
教师ID
varchar(8)
notnull
主键
教师姓名
varchar(8)
notnull
登录密码
varchar(8)
notnull
课程信息表如下表所示:
表课程信息表
字段名
类型
空值
约束条件
课程号
varchar(8)
notnull
主键
课程名称
varchar(12)
notnull
教师ID
varchar(8)
notnull
外键
班级信息表如下表所示:
表班级信息表
字段名
类型
空值
约束条件
班级号
varchar(8)
notnull
主键
班级名称
varchar(8)
notnull
所属学院
varchar(6)
班级人数
nchar(4)
管理员信息表下表所示:
表管理员信息表
字段名
类型
空值
约束条件
管理员ID
varchar(10)
notnull
主键
登录密码
varchar(10)
notnull
成绩信息表下表所示:
表成绩信息表
字段名
类型
空值
约束条件
学号
varchar(15)
notnull
主键,外键
课程号
varchar(8)
notnull
主键,外键
成绩
smallint
notnull
学籍信息下表所示:
表学籍信息表
字段名
类型
空值
约束条件
学号
int
notnull
主键
姓名
varchar(30)
notnull
性别
char
(2)
班级号
varchar(30)
notnull
外键
籍贯
char(10)
登录密码
money
notnull
三.详细设计
3.创建数据库及数据表
3.1设计数据表
根据系统功能需求,数据库采用Access,它完全可以满足上述需求中提出的要求,并且它所支持的数据类型十分丰富,维护简便,费用低,人员素质要求不是很高,容易升级。
3.2创建数据库
创建数据库包括3方面的内容:
(1)首先在Access2002中创建名为TuiMag的数据库;
(2)在数据库中创建课程信息表、学生信息表、学生成绩表、教师信息表、教师任课表和用户信息表;
(3)最后建立课程信息表、学生信息表、学生成绩表之间的关系:
通过CourID字段建立课程信息表与学生成绩表间一对多的关系,通过StuID字段建立学生信息表与学生成绩表间一对多的关系,如图所示。
课程信息表、学生信息表、学生成绩表间的关系
3.3创建工程和系统主窗体
3.31创建工程
在VB中创建一个工程,命名为“TuiMag.vbp”,将创建的TuiMag.mdb数据库拷贝到代码目录中,以便建立数据库连接。
3.32创建系统主窗体
在VisualBasic中,既可以创建单文档(SDI)应用程序,也可以创建多文档(MDI)应用程序。
在单文档应用程序中,每个窗体彼此独立。
而多文档应用程序,有一个窗体是主窗体,它可以包含若干个子窗体。
3.33系统主窗体菜单的创建
3.34系统主窗体代码
系统各功能模块通过主窗体的菜单项来调用,因此系统主窗体各菜单项的代码主要功能是显示各窗体,当然,也可以把一些简单的代码段写在主窗体的菜单项的单击事件中。
主窗体作为系统运行时第一个装载的窗体,在窗体装载事件中,完成与数据库的连接。
4课程信息管理模块
4.1界面设计
4.2编写模块代码
1窗体的属性设置
2在模块文件中添加SetCmdNotEnable过程和SetCmdEnable过程,用于设置当前各命令按钮是否可用,其中过程的参数类型为Form类型,可以被各窗体调用。
3定义过程clearcontrol
4定义过程ControltoField,用于实现窗体控件内容的保存,其中过程的参数类型为记录集类型。
5定义过程FieldtoControl,用于实现在窗体控件中显示记录集各字段内容,其中过程的参数类型为记录集类型。
6窗体激活事件过程,根据CourInfo表生成记录集,并显示在窗体各控件中,也可以看成对窗体的初始化。
7为命令按钮“添加”单击事件过程,为记录的添加作好准备。
8为命令按钮“编辑”单击事件过程,为记录的编辑作好准备。
9为命令按钮“保存”单击事件过程,将添加的记录或对记录的修改进行保存。
10为命令按钮“取消”单击事件过程,取消当前的添加操作或对记录的修改。
11为命令按钮“删除”单击事件过程,删除当前记录。
4.2编写模块代码
4.21窗体的属性设置
在模块文件中添加SetCmdNotEnable过程和SetCmdEnable过程,用于设置当前各命令按钮是否可用,其中过程的参数类型为Form类型,可以被各窗体调用。
1定义过程clearcontrol,用于实现窗体控件内容的清空。
2定义过程ControltoField,用于实现窗体控件内容的保存,其中过程的参数类型为记录集类型。
3定义过程FieldtoControl,用于实现在窗体控件中显示记录集各字段内容,其中过程的参数类型为记录集类型。
4窗体激活事件过程,根据CourInfo表生成记录集,并显示在窗体各控件中,也可以看成对窗体的初始化。
5为命令按钮“添加”单击事件过程,为记录的添加作好准备。
6为命令按钮“编辑”单击事件过程,为记录的编辑作好准备。
7为命令按钮“保存”单击事件过程,将添加的记录或对记录的修改进行保存。
8为命令按钮“取消”单击事件过程,取消当前的添加操作或对记录的修改。
9为命令按钮“删除”单击事件过程,删除当前记录。
5成绩管理模块
5.1模块功能
成绩管理模块主要完成课程成绩管理的功能,内容包括学号、课程代号、成绩等,本模块实现对课程成绩添加、删除、修改等操作。
5.2界面设计
5.3编写模块代码
窗体的属性设置
定义过程clearcontrol
定义过程ControltoField
定义过程FieldtoControl
窗体激活事件过程,根据StuScore表生成记录集,并显示在窗体各控件中
各命令按钮的单击事件过程与14.5完全相同或稍加改动,这里从略。
6教师信息管理模块
6.1本模块功能
教师信息管理模块主要完成教师信息管理的功能,内容包括工号、所在系、年龄、姓名、联系电话、备注等,本模块实现对教师信息的添加、删除、修改等操作。
6.2界面设计
6.3编写模块代码
窗体的属性设置
定义过程clearcontrol
定义过程ControltoField
定义过程FieldtoControl
窗体激活事件过程,根据TechInfo表生成记录集,并显示在窗体各控件中,也可以看成对窗体的初始化。
7教师任课管理模块
7.1模块功能
教师任课管理模块主要完成教师任课管理的功能,内容包括课程代号、教师工号、上课时间、上课地点等,本模块实现对教师任课信息的添加、删除、修改等操作
7.2界面设计
7.3编写模块代码
窗体的属性设置
定义过程clearcontrol
1.Subclearcontrol()
2.txtCourID.Text=""
3.txtTechID.Text=""
4.txtClassTime.Text=""
5.txtClassPlace.Text=""
6.EndSub
定义过程ControltoField
定义过程FieldtoControl
窗体激活事件过程,根据TechAppoint表生成记录集,并显示在窗体各控件中,也可以看成对窗体的初始化。
8用户信息管理模块
8.1模块功能
用户信息管理模块主要完成用户信息管理的功能,内容包括用户名、用户密码、用户权限、姓名、联系电话等,本模块实现对用户信息的添加、删除、修改等操作。
8.2界面设计8.3编写模块代码
9学生基本信息管理模块
9.1模块功能
学生基本信息管理模块主要完成学生基本信息管理的功能,内容包括学号、姓名、性别、出生日期、所在班级、来源、联系电话、备注、照片、照片大小等,本模块实现对学生基本信息的添加、删除、修改等操作。
9.2界面设计
9.3编写模块代码
10教师课程表查询模块
10.1模块功能
教师课程表查询模块主要实现教师任课信息的查询操作,通过输入的教师工号,作简单查询。
并以常见的课程表形式呈现出来。
10.2界面设计10.3编写模块代码
11学生成绩综合查询模块
11.1模块功能
学生成绩综合查询模块主要实现学生成绩多种条件的组合查询,通过勾选各查询选项,可以实现多条件精确查询或模糊查询,查询结构以列表形式显示出来。
11.2界面设计
结论
本文通过一个具体的示例——高校教学信息管理系统,完整地介绍了数据库应用系统的开发方法和过程,通过本文你[,将本书前面的各章节的知识加以综合的运用,以解决实际问题。
例中的分析设计方法及源代码对读者解决实际问题有一定的参考价值,尤其是例中SQL语句的书写,读者可以借此加深对SQL语法的理解。
需要说明的是,本文的示例从功能上来讲,并不完善或者说还较少,希望读者能够作进一步的扩充成具有实用价值的教学信息管理系统。