教学管理系统.docx
《教学管理系统.docx》由会员分享,可在线阅读,更多相关《教学管理系统.docx(35页珍藏版)》请在冰豆网上搜索。
![教学管理系统.docx](https://file1.bdocx.com/fileroot1/2023-2/24/4a3a0b13-a26b-427b-9801-94377e3c154d/4a3a0b13-a26b-427b-9801-94377e3c154d1.gif)
教学管理系统
编号
毕业论文(设计)
论文题目教学管理系统
系(部)计算机与信息工程系
专业计算机应用技术
2009年5月
目录
摘要1
Abstract2
第一章 概述3
第二章 需求分析4
2.1系统需求分析4
2.2可行性分析4
第三章系统设计6
第四章数据库设计7
4.1数据库需求分析7
4.2数据库设计7
4.2.1创建数据库7
4.2.2创建表8
第五章 详细设计11
5.1用户登录窗体的创建11
5.1.1用户登录界面设计11
5.1.2代码分析与实现11
5.2管理员模块15
5.2.1管理员主要功能15
5.2.2管理员代码15
5.2.3管理员界面18
5.3教师管理模块19
5.3.1教师管理模块的主要功能19
5.3.2.教师代码19
5.3.3.教师界面21
5.4学生模块21
5.4.1学生模块的功能21
5.4.2.个人信息查询代码21
5.4.3学生界面23
5.4.4修改密码代码23
5.4.5学生修改密码界面24
5.5课程管理模块24
5.5.1课程管理模块的主要功能24
5.5.2课程查询代码24
5.6成绩管理模块25
5.6.1成绩查询代码25
5.6.2成绩查询界面26
第六章总结26
致谢27
参考文献28
摘要
随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。
管理信息系统是一个不断发展的新型学科,随着学校规模的不断扩大,学生数量的不断增加,学生的信息量也成倍增长。
学生管理工作是学校各项工作的一个重要部分,其管理水平的高低将直接影响到人才的培养质量。
面对庞大的信息量,如何有效地提高学生管理工作的效率是一个学校急需解决的问题。
因此开发适合学校需要的学生管理信息系统,通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,并减少管理方面的工作量。
本文介绍了在MicrosoftVisualStudio·NET2005环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。
通过分析访客管理的不足,创建了一套行之有效的计算机管理学生的方案。
文章介绍了访客管理信息系统的系统分析部分,包括可行性分析、业务流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;系统实现部分说明了几个主要模块的算法,本系统面友好,操作简单,比较实用。
关键词:
管理信息系统、学生管理、VisualStudio.
Abstract
Asinformationtechnologyinthemanagementofmorein-depthandwiderangeofapplications,managementinformationsystemhasbeengraduallyimplementedinthetechnicalmaturity.ManagementInformationSystemisacontinuousdevelopmentofnewdisciplines,withthegrowingsizeofschools,theincreasingnumberofstudents,studentsalsohaveincreasedtheamountofinformation.Studentsoftheschoolmanagementisanimportantpartofthework,thelevelofitsmanagementlevelwilldirectlyaffectthequalityoftalent.Facedwithahugeamountofinformation,howtoeffectivelyimprovetheefficiencyofthemanagementofstudentsaschoolisanurgentneedtoresolve.Thereforethedevelopmentofschoolsforstudentsinneedofmanagementinformationsystems,throughsuchasystem,canachievethestandardofinformationmanagement,scienceandstatisticsandtoquicklyfind,manageandreducetheworkload.
ThistextintroducedintheVisualStudio2005undertheenvironmentsthestrategyofadoption"fromtoptobottomtotalprogramming,frombottombutlastpplicationdevelopment"developaprocesswhichmanageinformationsystem.Passtheshortageofanalyticalvisitormanagement,establishedavalidasetoflineacalculatoramanagementthestudent'sproject.Thearticleintroducedvisitoramanagementinformationsystemofsystemanalysispart,Systemrealizationpartexplainedafewcalculatewaysofmainmoldpiece,thissysteminterfaceamity,operationsimple,morepractical.
[Keywords]:
MIS、studentmanagement、VisualStudioapplication
第一章 概述
教学管理系统作为学校管理中的一个子系统,与其他子系统,如学生管理系统、人事管理系统、后勤管理系统,图书馆管理系统等一起构成校园管理信息系统,为校园管理信息化提供一个子功能。
所以,几乎所有的大、中、小学校都需要一套这样的管理系统来提高日常的工作效率。
下图所示是典型的教学管理系统的界面。
图1典型的教学管理系统的界面
从界面可以看到,教学管理系统应该包括学生信息管理、课程管理、成绩管理、系统管理等基本内容。
(1)学生信息管理的数据有:
学生学号、姓名、性别、出生日期、所属班级、所学专业、籍贯等,当有新生到校时,就启动相应的信息管理功能,对所有的学生信息进行入库,随时掌握学生的基本信息。
(2)成绩管理是数据量比较大的管理工作,每次考试结束后负责对学生各个科目的成绩入库工作和对数据库成绩出错的校对工作。
(3)系统管理主要是修改用名密码、增加用户等工作。
学生管理信息系统作为典型的数据库项目应用的一种,其开发流程包括需求分析、系统建模、确定系统集成方案、数据库分析和设计以及各功以模块的开发等。
第二章 需求分析
2.1系统需求分析
伴随社会的高速发展,全国各高校的学生数量一直在增加,在这样的形式下,必须要求学校有一种高效有序的方法来管理学生的信息。
通过调查,要求系统需要有以下功能:
⑴由于操作人员的计算机知识普遍较差,要求有良好的人机界面;
⑵由于该系统的使用对象多,要求有较好的权限管理;
⑶原始数据修改简单方便,支持多条件修改;
⑷方便的数据查询,支持多条件查询;
⑸在相应的权限下,删除数据方便简单,数据稳定性好;
⑹数据计算自动完成,尽量减少人工干预。
2.2可行性分析
由于本系统管理的对象单一,都是学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。
因此,比较适合于采用数据库管理。
在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
本系统的设计是在WindowsXP操作系统环境下,使用VisualStudio2005中文版开发成功的。
数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库管理是一个重要的问题,本系统选用的数据库语言介绍如下:
VisualStudio2005具有以下特点:
(1)可视化编程:
用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。
如果对界面的效果不满意,还要回到程序中修改有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。
VisualStudio2005提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。
只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。
VisualStudio2005自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。
(2)面向对象的程序设计VisualStudio2005支持面向对象的程序设计,是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。
在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualStudio2005自动生成对象的程序代码并封装起来。
每个对象以图形方式显示在界面上,都是可视的。
第三章系统设计
系统开发的总体任务是实现学生信息关系的系统化,规范化和自动化。
教学管理系统需要完成的功能主要有:
●学生信息的输入,包括输入学生基本信息、所在班级、所学课和成绩等。
●学生信息的查询,包括输入学生基本信息、所在班级、已学课程和成绩等。
●学生信息的修改。
●管理员对个人信息的查询。
●教师对个人信息的查询。
第四章数据库设计
4.1数据库需求分析
●管理员信息:
包括的数据项有:
管理员的登录名、密码。
●教师信息:
包括的数据项有:
教师的登录名、密码、教师的个人信息。
●学生基本信息:
包括的数据项有:
学生的登录名、密码学生学号、学生姓名、性别、出生日期、班号、联系电话、入校日期、家庭地址、备注等。
●班级信息:
包括的数据项有:
班号、所在年级。
●课程基本信息:
包括的数据项有:
课程号、课程名称、课程类别、课程描述等。
●学生成绩信息:
包括的数据项有:
学生姓名、所学课程、考试分数等。
4.2数据库设计
数据库设计与应用等程序设计是分离的,数据库的设计非常重要。
有了数据库模型,数据库的设计就简单多了。
在学生管理信息系统中,首先要创建学生管理信息系统数据库,然后在数据库中创建需要的表和字段。
下面分别讲述本系统中数据库的设计。
本例采用sql2000数据库系统来进行数据库的设计。
4.2.1创建数据库
下面给出在sql中创建数据库的过程。
运行sql应用程序,右键单击数据库新建MySchool数据库,单击“确定”按钮。
图2新建MySchool数据库
4.2.2创建表
下面给出在sql中创建表的过程。
(1)在创建数据库后,点击该数据库,在数据库中建立表。
数据库中的表
管理员表
Admin
教师表
Teacher
学生表
Student
班级表
Class
年级表
Grade
课程表
Subject
成绩表
Scour
(2)在表的设计窗口“表1:
表”中,按表6建立数据字段,并指定字段的数据类型与相关属性。
系统管理员表(AdminId)
建立数据库字段并指定字段的数据类型与相关属性,如下所示。
列名
数据类型
长度
AdminId
Int
4
LoginId
varchar
16
LoginPwd
varchar
16
(3)字段设计完毕后,将这个表保存,打开表,输入数据。
图3表中填充的数据
(4)保存表。
(5)重复步骤(2)~(4),建立教师表、学生表,班级表,课程表,成绩表,并指定表中各字段的数据类型与相关属性。
教师表
列名
数据类型
长度
TeacherId
int
4
LoginId
varchar
16
LoginPwd
varchar
16
UserStateId
int
4
TeacherName
varchar
16
Sex
varchar
16
Birthday
smalldatetime
4
学生表
列名
数据类型
长度
StudentId
Int
4
LoginId
vachar
16
LoginPwd
vachar
16
UserStateId
Int
4
ClassId
Int
4
StudentNO
vachar
16
StudentName
vachar
16
Sex
vachar
16
StudentIDNO
vachar
16
Major
vachar
16
SchoolBefore
vachar
16
Phone
vachar
8
Address
vachar
16
PostalCode
float
16
CityWanted
vachar
16
JobWanted
vachar
16
Comment
vachar
16
Email
vachar
20
班级表
列名
数据类型
长度
GradeId
Int
4
GradeName
vachar
16
课程表
列名
数据类型
长度
SubjectId
Int
4
SubjectName
Vachar
16
Hours
Int
4
GradeId
int
4
成绩表
列名
数据类型
长度
StudentId
int
4
StudentName
vachar
16
Scour
vachar
16
第五章 详细设计
以上内容完成了数据库的后台工作,建立起了能够保障系统顺利、正确运行的后台。
界面设计工作在进行系统开发的时候是必不可少,也是十分重要的。
下面就对学生管理信息系统的界面设计。
5.1用户登录窗体的创建
5.1.1用户登录界面设计
利用用户登录成功能实现对用户操作权限的限制。
管理员、教师和学生的权限不一样,管理员拥有系统的所有权限,学生只有查询个人信息和的修改密码的权限。
用户必须选择身份,输入正确的密码才能进入下一界面,如果用户的密码输入错误,应用程序会提示错误信息。
下图所示是用户登录界面窗体。
图4登陆界面
5.1.2代码分析与实现
上面对程序界面设计进行了详细的设计,基本完成了程序界面的设计工作。
程序代码是程序的核心所在,是系统开发的灵魂。
下面只列举出部分代码。
(1)用户登录的代码实现
学生信息管理系统启动时,首先出现的是欢迎界面而后出现登录界面。
程序从配置文件中获取管理员,教师和学生的密码,和用户输入的密码比较,如果密码正确,则根据身份配权限;如果不正确,系统给出提示信息。
代码如下:
SqlConnectionsqlconn=newSqlConnection("server=.;database=MySchool;trusted_connection=true");
publicstaticstringid="";//声明一个变量id,存放用户名
publicLoginForm()
{
InitializeComponent();
}
privatevoidbtdenglu_Click(objectsender,EventArgse)
{
id=txtuserid.Text;
try
{
if(txtuserid.Text=="")
{lbldenglu.Text="请输入用户名!
";}
if(txtuserpwd.Text=="")
{lbldenglu.Text="请输入密码!
";}
if(txtuserid.Text==""&&txtuserpwd.Text=="")
{lbldenglu.Text="用户名和密码不允许为空!
";}
}
catch(Exceptionex)
{MessageBox.Show(ex.Message);}
finally
{sqlconn.Close();}
try
{
if(cbousertype.Text=="学生")
{
SqlCommandsqlcomd=newSqlCommand("selectcount(*)fromStudentwhereLoginId='"+txtuserid.Text.Trim()+"'andLoginPwd='"+txtuserpwd.Text.Trim()+"'",sqlconn);
sqlconn.Open();
intcount=(int)sqlcomd.ExecuteScalar();
Studentstudent=newStudent();
if(count>0)
{
student.Show();
this.Hide();
}
else
{
lbldenglu.Text="您输入的用户名或密码错误,请重新输入!
";
txtuserid.Text="";
txtuserpwd.Text="";
cbousertype.Text="";
txtuserid.Focus();
}
}
if(cbousertype.Text=="教师")
{
SqlCommandsqlcomd=newSqlCommand("selectcount(*)fromTeacherwhereLoginId='"+txtuserid.Text.Trim()+"'andLoginPwd='"+txtuserpwd.Text.Trim()+"'",sqlconn);
sqlconn.Open();
intcount=(int)sqlcomd.ExecuteScalar();
Teacherteacher=newTeacher();
if(count>0)
{
teacher.Show();
this.Hide();
}
else
{
lbldenglu.Text="您输入的用户名或密码错误,请重新输入!
";
txtuserid.Text="";
txtuserpwd.Text="";
cbousertype.Text="";
txtuserid.Focus();
}
}
if(cbousertype.Text=="管理员")
{
SqlCommandsqlcomd=newSqlCommand("selectcount(*)fromAdminwhereLoginId='"+txtuserid.Text.Trim()+"'andLoginPwd='"+txtuserpwd.Text.Trim()+"'",sqlconn);
sqlconn.Open();
intcount=(int)sqlcomd.ExecuteScalar();
Managermanager=newManager();
if(count>0)
{
manager.Show();
this.Hide();
}
else
{
lbldenglu.Text="您输入的用户名或密码错误,请重新输入!
";
txtuserid.Text="";
txtuserpwd.Text="";
cbousertype.Text="";
txtuserid.Focus();
}
}
}
catch(Exceptionex)
{MessageBox.Show(ex.Message);}
finally
{sqlconn.Close();}
}
privatevoidbttuichu_Click(objectsender,EventArgse)
{
DialogResultchoice; //用户的选择
choice=MessageBox.Show("确定要退出吗?
","退出系统",MessageBoxButtons.OKCancel,MessageBoxIcon.Information);
if(choice==DialogResult.OK)
{
Application.Exit();//退出应用程序
}
5.2管理员模块
5.2.1管理员主要功能
●对自己信息、学生信息和教师信息的添加,删除,修改,浏览等
●退出系统
5.2.2管理员代码
privatevoid查询ToolStripMenuItem1_Click(objectsender,EventArgse)//学生基本信息查询
{
try
{
sqlconn.Open();
myada=newSqlDataAdapter("select*fromStudent",sqlconn);
myada.Fill(myds,"Student");
this.dgvmanager.DataSource=myds.Tables["Student"].DefaultView;
dgvmanager.Rows.Clear();
}
catch(Exceptionex)
{
MessageBox.Show(ex.Message);
}
finally
{
sqlconn.Close();
}
}
privatevoid查询ToolStripMenuItem2_Click(objectsender,EventArgse)//学生成绩查询
{
try
{
sqlconn.Open();
myada=newSqlDataAdapter("select*fromScore",sqlconn);
myada.Fill(myds,"Score");
this.dgvmanager.DataSource=myds.Tables["Score"].DefaultView;
dgvmana