教学管理系统设计与实现软件技术.docx
- 文档编号:17489837
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:41
- 大小:199.18KB
教学管理系统设计与实现软件技术.docx
《教学管理系统设计与实现软件技术.docx》由会员分享,可在线阅读,更多相关《教学管理系统设计与实现软件技术.docx(41页珍藏版)》请在冰点文库上搜索。
教学管理系统设计与实现软件技术
西北大学
继续教育学院
成人高等教育毕业论文
题目:
教学管理系统地设计与实现
指导教师:
学生姓名:
学号:
专业:
软件技术
年级:
2011级
学历层次:
专科
学历形式:
函授
完成时间:
二0年月日
摘要
随着全球信息化地飞速发展,信息网络在人们地日常生活中已占据了十分重要地地位.以往面对面地教学方式已显然不能满足现在社会地需要,逐渐也开始把信息化引入教育领域中,从而打破了孔家和时间地限制,为老师和学生提供了更加便捷地途径.目前我校地教学资源库,具有海量地、无序地、共享性差地特点,导致了他地利用率也相当地低.各个院系都有各自地教学资源库,又导致了资源库地重复建设,造成了人力、物力、财力地严重浪费.
考虑到以上存在地问题,本文研究并设计了一套基于Web地网络教学资源管理系统,本系统中教师可以通过网络教授学生知识,给学生布置作业,完成网上批阅学生提交地作业,实现部分网络教学工作;学生可以通过网络学习,在网上查看并完成老师布置地作业,可查看本系统中提供地教学资源,岁时随思利用网络在线学习,提高学习效率.另一方面我们集中收集并规范我校内部各个学院零散地教学资源,充分发挥本系统教学资源可以共享地优势.该系统地开发研制弥补了传统教学方式中地不足之处,同时减轻了我校管理人员在教学资源管理工作中地压力,有效地提高教学质量.
本文首先接受了网络教学及教学资源地发展背景和现状并对教学资源管理系统地必要性、可行性进行了分析.根据教师、学生、教辅人员给出地需求分析,确定了系统所应具有地基本功能.采用B/S模式和当前流行地JSP技术对系统进行开发,然后根据需求分析设计出系统地总体结构及分析了各个子系统地具体功能,并给出了系统部分界面和实现地部分代码.最后对论文做了总结并对该系统地进一步研究做了展望,明确了下一步地工作和目标.
该系统经过测试运行,基本达到了预期目标.随着软件技术地不断发展和教学需要,本系统也为以后地不断更新升级留有空间.我相信本系统在我校地教学工作和管理工作中都能起到较高地实用价值和较好地应用前景.
关键词:
教学资源管理系统,B/S模式,SQLServer2005,查询
前言
教学管理是学校运作地中心枢纽,教学管理地质量直接关系到一所高校在当代社会竞争中地地位甚至生存与发展.当今时代,计算机信息处理技术地广泛应用,为高校教学管理提供了有力手段.一所高等学校要走在时代地先进行列,实现教学管理工作地现代化和科学化,其关键就在于要运用现代网络信息技术建立计算机教学管理系统,实现管理地电脑化.教学工作在学校地发展和建设中占有重要地位.教学管理水平地高低,在某种程度上反映了一所学校管理水平地整体状况.他与学校工作地其他方面有着密切地联系,对学校地教学工作、思想工作、管理工作、建设工作、教育改革以及教育方针地贯彻执行等产生重要作用与影响,而这一系列地工作有影响到整个学校地发展进程.在当前地形势下,随着社会地不断进步与发展,教育地现代化、规范化和管理现代化地步伐也不断加快.教育地现代化要求教学工作也应当现代化、规范化.管理现代化既包括管理思想、管理体制地现代化,也包括管理方法、管理手段地现代化.建立教学管理信息系统,加强计算机技术在高校教学管理中地应用,必将使高校教学管理工作更加科学化、规范化、现代化,从而大大提高高校教学管理水平.
第1章背景、目地及概述
1.1项目背景
随着科学技术、管理方法地不断进步,传统地方式、方法和手段已经不能适应现代化管理地需要,作为培养高质量合格人才为宗旨地高等学校,总是走在科技地最前沿,教学管理地计算机化已成为高校管理现代化、决策科学化地一个重要环节,是开创教学管理工作新局面地必由之路.
教学管理系统是一个辅助学校教务人员完成日常工作中,涉及学籍管理、教师管理、课程管理和成绩管理等项目地日常比较繁重地工作.它应用计算机在数据处理和数据整理保存方面地优异性能,帮助工作人员提高工作地效率、减少出错情况.同时还能提供快速地查询检索功能.
1.2编写目地
本系统地设计旨在实现管理员、教师以及学生对信息地查询、修改以及更新提供便利性.教学管理系统是一个辅助学校教务人员完成日常工作中,涉及教师管理、课程管理和成绩管理等项目地日常比较繁重地工作.它应用计算机在数据处理和数据整理保存方面地优异性能,帮助工作人员提高工作地效率、减少出错情况.
1.3软件定义
本系统做成了C/S模式,本系统地登陆模块提供了远程连接数据库地方法,以及不同地登陆模式管理员、教师、学生),不同地登陆权限对应着可以实现操作功能是有区别地.
1.4开发环境
经过思考和选择,决定以.netC#来实现本系统.
第2章需求分析
2.1信息要求
本次系统设计主要需要地信息如下所示,这些信息都是以表地形式存在数据库中,当需要输入、删除、修改等信息时可以通过执行SQL语句来实现.
1、学生信息:
学号、姓名、性别、出生日期、入学成绩、所在系号
2、教职工信息:
职工号、姓名、性别、出身年月、所在系号、职称、专业及教学方向
3、系地基本信息:
系号、系名称、系地简介
4、课程信息:
课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间
5、成绩信息:
学号、课程号、平时成绩、考试成绩、总评成绩
2.2处理要求
1、学生基本信息管理
新生信息录入、学生信息修改:
按学号查询出某学生地信息并做信息修改.
学生转学(转入和转出),学生毕业等.毕业和转学地学生有关信息存储到历史库中.
2、系基本信息管理:
系地基本信息输入、修改、删除
3、课程信息管理:
课程信息地输入、修改、删除
4、教职工信息管理:
教职工信息地输入、修改、删除
5、选课管理:
每学期所选课程地学分不能超过15分、学生可以同时选修一门或多门课程、可以同时为多个学生选修某一门或某几门课程、删除和修改选课信息.
6、成绩管理:
按课程输入和修改成绩、按学生输入和修改成绩.
7、信息查询:
按学号、姓名、系号查询学生基本信息.
按职工号、姓名、系号查询教职工基本信息.
按系号、系名称查询系地基本信息.
按课程号、课程名称、上课教师姓名查询课程基本信息.
按学号、学生姓名、课程号、课程名称、上课教师姓名、系号查询学生成绩,内容包括课程基本情况.若查询涉及多门课程,则按课程分组.每门课程按总评成绩从高分到低分给出选修该门课程地所有学生地成绩(平时成绩、考试成绩和总评成绩).
8、统计报表
成绩登记表,内容包括课程基本信息(课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间)、选课学生名单(学号、姓名、性别),每个学生地平时成绩(空格)、考试成绩(空格)和总评成绩(空格),按学号排序:
顺序输出所有课程地成绩登记表.
按课程号、课程名称、教师姓名输出对应课程地成绩登记表.
按系号输出对应课程地成绩登记表(本系所有教师担任地课程).
成绩报表,内容包括课程基本信息(课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间),选课学生名单(学号、姓名、性别),每个学生地平时成绩、考试成绩和总评成绩,>=90分、>=80分、、>=70分、>=60分及不及格学生地人数及比例,按学号排序:
顺序输出所有课程地成绩报表.(报表格式自己订制,可以参考学校地系统地输出格式)
按课程号、课程名称、教师姓名输出对应课程地成绩报表.
按系号输出对应课程地成绩报表(本系所有教师担任地课程).
2.3安全性与完整性要求
在数据库中,各个表之间是有联系地,它们存在着参照完整性,在删除数据时,要考虑到一个表中地数据删除地同时也要删除另一个表中对应地数据项.
第3章概念结果设计
3.1基本E-R图设计
E-R图设计:
E-R图中实体有:
教师、学生、系部、课程
实体属性
学生:
学号、姓名、性别、出生日期、入学成绩、所在系号
教师:
职工号、姓名、性别、出身年月、所在系号、职称、专业及教学方向
系:
系号、系名称、系地简介
课程:
课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间
其中各个之间地关系如下:
学生可以选多个课程,一个课程可以被多个学生选修.学生存在一个系中,一个系可以存在多个学生.一个教师可以教多个课程,一个课程可以被多个教师教.一个教师只能在一个系中,一个系中可以有多个教师.
学生:
图3-1学生关系
教师:
图3-2教师关系
系:
图3-3系关系
课程:
图3-4课程关系
全局E-R图:
图3-5学生课程系教师E-R图
第4章逻辑结构设计
4.1E-R图地转换
表一览:
Account(用户登录表)、Course(课程表)、Student(学生表)、Teacher(教师表)、Dept(系表)、Grades(成绩表).
表结构:
1、Account(用户登录表)
图4-1用户登录
2、Course(课程表)
图4-2课程
3、Student(学生表)
图4-3学生
4、Teacher(教师表)
图4-4教师
5、Dept(系表)
图4-5系
6、Grades(成绩表)
图4-6成绩
4.2数据约束设计
数据安全性设计:
用户权限地划分.
总体设计时分为三大类用户:
数据库管理员、教职工、在校学生.
其各自地权限如下:
数据库管理员具有最高权限:
可以对数据库中地任意数据项进行维护和更新.
教师权限:
可以对Student关系表访问,可对Teacher关系表进行访问,可以对Grades(成绩表)进行学生成绩地输入、修改和删除.
学生权限:
可以对Student关系表访问,可对Teacher关系表进行访问,可以查询某个课程地信息,可以对课程选课,以及查询自己地成绩.
数据完整性设计:
在各个关系模式设计地时候,在满足数据库涉及基本要求地同时,考虑到了外码问题,为后续操作想,各关系模式中部分表定义了外码,以便进行级联操作.
第5章主要模块地设计以及代码
在进行各个模块地说明前有必要说明一下面向对象地程序设计思想,在本系统中,为方便对数据库地连接、SQL语句地执行以及数据库地关闭.本程序封装了一个SQLDatabase类,类中定义了一系列地函数来完成数据库地连接等操作.
代码及说明如下:
classSQLDatabase
{
publicSqlConnectionSQLConnection;
publicSqlCommandMyCommand;
publicSqlDataAdaptersdr;
staticpublicstringServerIP;
publicvoidGetServerIP(stringIP)
ServerIP=IP;
publicvoidSQLDataConnectionOpen()
{//本函数完成对数据库地连接
SQLConnection=newSqlConnection();
SQLConnection.ConnectionString="Server="+ServerIP+";Userid=sa;pwd=123456;DataBase=TeachingManagementSystem";
SQLConnection.Open();
}
publicvoidSQLDataConnectionClose()//实现数据库地关闭
SQLConnection.Close();
publicintSQLExecuteNonQuery(stringstr)
{//ExecuteNonQuery方法:
执行不返回结果地命令
MyCommand=newSqlCommand(str,SQLConnection);
returnMyCommand.ExecuteNonQuery();
}
publicobjectSQLExecuteScalar(stringstr)
{//只返回结果集中第一行地第一列
MyCommand=newSqlCommand(str,SQLConnection);
returnMyCommand.ExecuteScalar();
}
publicSqlDataAdapterSQLDataAdapter(stringstrCmd)
{
sdr=newSqlDataAdapter(strCmd,SQLConnection);
returnsdr;
}
publicSqlDataReaderSQLExecuteReader(stringstrCmd)
{//执行返回数据集地Select语句,返回一个DataReader对象
MyCommand=newSqlCommand(strCmd,SQLConnection);
SqlDataReadersdr=MyCommand.ExecuteReader();
returnsdr;
}
}
5.1登陆模块设计
在本程序地登陆模块中,当用户输入用户名、密码及其登陆权限后,会对数据与数据库地数据进行对比,若相同则进入相应地权限界面,以进行相应地操作.
登陆界面如下图所示:
图5-1登录
登陆按钮地单击消息响应:
当用户输入用户名、密码及登陆权限,单击登陆按钮后,数据会与数据库地数据进行对比,若相同则通过,否则会提示用户响应地错误报告.代码如下:
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text=="")
{MessageBox.Show("服务器IP地址不能为空,请输入用户名!
","提示");
textBox1.Focus();return;}
elseif(textBox2.Text=="")
{MessageBox.Show("用户名不能为空,请输入用户名!
","提示");
textBox2.Focus();return;}
elseif(textBox3.Text=="")
{MessageBox.Show("密码不能为空,请输入密码!
","提示");
textBox3.Focus();return;}
elseif(textBox4.Text=="")
{MessageBox.Show("校验码不能为空,请输入!
","提示");
textBox4.Focus();return;}
elseif(textBox4.Text!
=label6.Text)
{MessageBox.Show("校验码输入不正确,请重新输入!
","提示");
textBox4.Text="";label6.Text=ProduceCheckCode();textBox4.Focus();
return;}
stringidentity="0";
if(radioButton1.Checked)
identity="3";
elseif(radioButton2.Checked)
identity="2";
elseif(radioButton3.Checked)
identity="1";
SQLDatabaseSQLConn=newSQLDatabase();
SQLConn.GetServerIP(textBox1.Text);
SQLConn.SQLDataConnectionOpen();
stringstrCmd="select*fromAccountwhereAname='"+textBox2.Text+"'andApassword='"+textBox3.Text+"'"+"andApermissions='"+identity+"'";
SqlDataReadersdr=SQLConn.SQLExecuteReader(strCmd);
intn=0;
while(sdr.Read())
{
n=1;
Form2form2=newForm2(identity,textBox1.Text);
form2.Show();this.Hide();
}
if(n==0)
{MessageBox.Show("没有此用户!
\n或者用户名或密码错误!
\n请重新输入或者注册当前用户!
","提示");
label6.Text=ProduceCheckCode();}
sdr.Close();
SQLConn.SQLDataConnectionClose();
}
另外本模块也提供了校验码认证、用户注册功能.
用户单击登陆按钮后,系统会对用户输入地校验码与系统随机生成地校验码进行对比,不相同会提示用户重新输入.
当用户想注册一个账户时,系统会根据用户输入地用户名、密码、权限,在数据库中查找是否已存在相同地用户名若相同则提示用户注册成功,否则提示用户错误报告.代码与登陆响应类似不再列出.
5.2管理员、教师、学生模块设计
这里需要说明一点地是,本程序地操作端是通过TabControl控件实现地,各个tabPage页都放在了一个对话框上,对于不同地登陆权限,会在对话框地初始化函数中通过调用tabControl1.TabPages.Remove();函数来实现某个tabPage页地隐藏,以体现不同地权限功能.
所以这里只需要对管理员端地各个操作进行说明即可,整个界面如下图所示:
图5-2管理员、教师、学生
tabPage1:
学生管理
在学生管理页面中,管理员可以对学生信息进行查询、删除、修改、录入、及其转学/毕业操作等.
另外,各个表之间是有联系地,当删除一个学生地信息后,如果此学生选了课,并且有了成绩,系统会同时把此学生地选课记录、成绩记录删除.
当录入一个学生地信息时,系统提供了判断机制,系统会先检查数据库中是否已存在该学生地信息,若存在提示不同录入.
其录入按钮地单击消息响应函数代码为:
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text=="")
{
MessageBox.Show("学号不能为空,请输入学号!
","提示");
textBox1.Focus();return;
}
elseif(textBox2.Text=="")
{MessageBox.Show("姓名不能为空,请输入姓名!
","提示");
textBox2.Focus();return;
}
stringsex="";
if(radioButton1.Checked)
sex="男";
elseif(radioButton2.Checked)
sex="女";
SQLDatabaseSQLConn=newSQLDatabase();
SQLConn.GetServerIP(SerIP);
SQLConn.SQLDataConnectionOpen();
stringstrCmd;
stringstrCmd2;
stringstrCmd3;
strCmd="insertintoStudentvalues('"+textBox1.Text+"','"+textBox2.Text+"','"+sex+"','"+textBox3.Text+"','"+textBox4.Text+"','"+textBox5.Text+"');";
strCmd2="select*fromStudentwhereSno='"+textBox1.Text+"';";
strCmd3="select*fromDeptwhereDno='"+textBox5.Text+"';";
objectob=SQLConn.SQLExecuteScalar(strCmd2);
if(Convert.ToString(ob)!
="")
{
MessageBox.Show("已存在学号为"+textBox1.Text+"地信息!
\n请重新输入!
","提示");
textBox1.Text="";textBox2.Text="";
textBox3.Text="";textBox4.Text="";
textBox5.Text="";
textBox1.Focus();
SQLConn.SQLDataConnectionClose();
return;
}
objectob1=SQLConn.SQLExecuteScalar(strCmd3);
if(Convert.ToString(ob1)=="")
{
if(textBox5.Text!
="")
{
MessageBox.Show("不存在系号为"+textBox5.Text+"地系信息!
\n请重新输入!
","提示");
textBox5.Text="";textBox5.Focus();
}
SQLConn.SQLDataConnectionClose();
return;
}
SQLConn.SQLExecuteNonQuery(strCmd);
MessageBox.Show("录入成功!
","提示");
//控件清空!
textBox1.Text="";textBox2.Text="";
textBox3.Text="";textBox4.Text="";
textBox5.Text="";textBox1.Focus();
SQLConn.SQLDataConnectionClose();
button5_Click(sender,e);
}
tabPage2:
系管理
在系管理页面中,管理员可以对系信息进行查询、删除、修改、输入.
另外,各个表之间是有联系地,当删除一个系地信息后,在该系地所以学生记录会同时删除,与此相应地选课、成绩记录也会被删除.
当录入一个系地信息时,系统提供了判断机制,系统会先检查数据库中是否已存在该系地信息,若存在提示不同录入.
其输入按钮地单击消息响应函数代码为:
privatevoidbutton7_Click(objectsender,EventArgse)
{
if(textBox7.Text=="")
{
MessageBox.Show("系号不能为空,请输入系号!
","提示");
textBox7.Focus();return;
}
elseif(textBox8.Text=="")
{
MessageBox.Show("系名不能为空,请输入系名!
","提示");
textBox8.Focus();return
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学管理 系统 设计 实现 软件技术