学生选课系统论文.docx
- 文档编号:24309655
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:39
- 大小:947.73KB
学生选课系统论文.docx
《学生选课系统论文.docx》由会员分享,可在线阅读,更多相关《学生选课系统论文.docx(39页珍藏版)》请在冰豆网上搜索。
学生选课系统论文
毕业论文
学生选课系统论文
专业:
软件工程
完成日期:
2007年6月14日
摘要
Internet网是目前全球最大的计算机通信网,它遍和全球几乎所有的国家和地区。
www系统是一个大型的分布式超媒体信息数据库,它极大的推动了Internet的发展,己经成为Internet中最流行、最主要的信息服务方式。
www技术之所以能在全球普和,一个重要的原因就是它与数据库管理系统相互融合,成为一个处理和共享信息的强大工具。
一方面,数据库是一种强大的信息管理工具,另一方面,www提供了共享数据的方法。
两者强强联合取长补短,发挥各自优势,使用户可以在Web浏览器上方便地检索数据库的内容。
本论文主要对学生选课系统方案进行分析,本系统是一个典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以和前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
关键词:
数据库;查询;分析;
Abstract
TheInternetnetisthepresentwholeworldbiggestcomputercommunicationsnetwork,itspreadsglobalnearlyallcountriesandthearea.Thewwwsystemisalarge-scaledistributionalultramediainformationdatabase,itsenormousimpetusInternetdevelopment,theoneselfafterhasbecomeinInternettobemostpopular,themostmaininformationserviceway.Thewwwtechnologythereforecanbepopularinthewholeworld,animportantreasonisitmutuallyfuseswiththedatabasemanagementsystem,becomesaprocessingandthesharinginformationpowerfultool.Ontheonehand,thedatabaseisonekindofformidableinformationmanagementtool,ontheotherhand,wwwhasprovidedthesharingdatamethod.Twoisstrongstronglyjointlymakesupforone'sdeficiencybylearningfromothers'strongpoints,displaysrespectivesuperiority,enablestheusertobeallowedconvenientlytoretrievethedatabaseontheWebbrowserthecontent.Thepresentpapermainlychoosestheclasssystemplantothestudenttocarryontheanalysis,thissystemisatypicalinformationmanagementsystem(MIS),itsdevelopmentmainlyincludesthebackstagedatabasetheestablishmentandthemaintenanceaswellasfrontendtheapplicationproceduredevelopmenttwoaspects.Establishesthedatauniformityandtheintegrityregardingformerrequestisstrong,thedatasecuritygoodstorehouse.Butrequeststheapplicationprocedurefunctionregardinglattercompletely,iseasytouseandsoonthecharacteristic.
Keyword:
Database;Inquiry;Analysis
引言
从随着计算机技术和网络通迅技术的飞速发展,现在国内有很多大学的选课方式由传统的选择方式转变成了网上选课,学生可以在网上选择规定范围内的课程,并且可以在网上查询成绩。
无需自己去老师那一门一门查,了解自己已得多少学分还需多少学分,即节省了学生的时间,又便于学校的管理
因为传统的选课方式都是手工的,教务处通知各班进行选课,各班班长再通知每个同学,经过统计在上交教务处,这样比较浪费时间。
再者选课时不知道所选课人数是否已满,要等向教务处上报统计后才会知道,然后才能重新选择。
网上选课系统为同学节省了时间的同时,减少了不必要的步骤,也方便管理员管理。
网上选课系统为同学提供了一个自由选择的平台,学生可以选修规定范围内的课程,查看已修学分总数,还可以修改个人信息。
本系统也为教师提供了很大的方便,教师可以根据统计的人数挑选一定数量的学生,也可以直接在网上公布成绩,让学生直接在网上查询成绩。
此系统方便了学生的选课,同时便于管理,减少大量的人力资源。
并且促进了学生的积极性,近而开发了网上选课系统。
1项目背景
1.1开发背景
当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。
计算机的最大好处在于利用它能够进行信息管理。
使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
本系统就是为了管理好选课信息而设计的。
学校作为一种信息资源的集散地,学生和课程繁多,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,甚至尚未使用计算机进行信息管理。
根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于选课情况的统计和查询等往往采用对课程的人工检查进行,对学生的选课权限、以和选课代号等用人工计算、手抄进行。
数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。
总的来说,缺乏系统,规范的信息管理手段。
尽管学校都有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。
数据处理手工操作,工作量大,出错率高,出错后不易更改。
学校采取手工方式对学生选课情况进行人工管理,由于信息比较多,选课信息的管理工作混乱而又复杂;一般选课情况是记录在文件上,课程的数目和代号也记录在文件中,学校的工作人员也只是当时对它比较清楚,时间长了,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。
如要对很长时间以前的选课进行更改就更加困难了。
基于这些问题,我认为有必要建立一个学生选课系统,使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够和时、准确、有效的查询和修改选课情况。
1.2设计任务
1.2.1系统登录
进入系统的用户分为三个权限:
管理员、教师和学生。
教师和学生的原始密码均为111111。
1.2.2密码修改
用户登录系统后,应立即修改密码,保证自己信息的安全性。
1.2.3信息管理
其中包括:
教师信息、学生信息。
教师和学生均可查询信息,教师和管理员可对信息进行添加、删除、修改等基本操作。
1.2.4选课管理
学生进行选课、调课,同时可以浏览可选课程的基本信息,以和教师和管理员可进行统计,查看某课程的选课情况等。
1.2.5课程管理
学生、教师和管理员可以查询某课程的课程名和课程号,教师和管理员还可以进行添加、删除、修改等基本操作。
1.2.6成绩管理
学生可查询自己某课程的成绩,教师和管理员可以查询某学生的成绩,并进行录入、修改等基本操作。
1.2.7教学管理
学生可查询自己的必修课和公选课,教师和管理员可以查询某专业的必修课和选修课,并进行添加、删除、修改等基本操作。
1.2.8任课管理
学生可查询教自己课程的教师的详细情况,教师和管理员可以查询自己要教的课程和班级,并进行添加、删除、修改等基本操作。
1.2.9统计
用户可以对选课名单,学生信息,教师信息,成绩,课表等进行统计。
1.2.10帮助
任何用户都可以查看帮助,指导自己进行正确的操作。
1.2.11注销
用户登录系统,使用完后进行注销,方便下一个用户的使用,同时也保证了自己的信息的安全性。
1.2.12系统功能
管理员进行数据库的备份和恢复操作和用户的管理。
1.2.13退出系统
不需要使用系统时,点击退出系统,即可退出。
1.3设计目的
学生选课系统旨在实现学生的选课管理,以和对教师,学生,课程,教学计划,教师任课,成绩等信息的管理。
根据设计需要,本管理系统应用SqlServer2000作为后台数据库、ADO作为数据连接组件、Delphi7.0作为前台开发工具。
本管理系统设计主要分为以下三个阶段:
(1)根据需求分析确定各主要模块,确定系统数据流图和数据字典,并采集部分数据。
(2)建立SqlServer2000后台数据库,并用Delphi7.0设计应用界面,完成所要求的各项功能。
(3)对系统的各项功能进行测试,以达到预期效果,并对不能满足要求的部分改进和提高。
1.4软件功能
在用户登录模块中,分为管理员用户、教师用户和学生用户,分别赋予不同的权限,管理员用户和教师用户可以对数据库进行数据库的日常维护,对数据库信息,其中包括学生、教师、课程、教学计划、教师任课、成绩的查询、修改、添加与删除,管理员用户可以对教师用户和学生用户进行限制;教师用户和学生用户可以对数据库进行数据信息的查询。
学生用户的最主要的功能是进行公选课的选修。
1.5学生选课系统总体规划
对于数据库系统,规划工作是十分必要的。
规划的好坏将直接影响到整个学生选课系统的成功与否,数据库设计中的规划阶段的主要任务是建立数据库的必要性和可行性分析,确定数据库系统在学生选课系统的地位。
根据管理数据库对技术人员和管理人员的水平、数据采集和管理活动以和使用者的计算机素质的要求;数据库技术对计算机系统的软硬件的要求。
决定把数据库管理系统设计成为一个综合的数据库。
此数据库包括所有操作人员的所有活动功能。
因此学生选课系统应用界面人性化、方便快捷。
学生选课系统可以按照用户权限和实现功能的不同分为三部分:
学生用户对数据库的查阅访问和选课,教师用户对数据库的查阅访问和信息的管理,管理员用户对数据库的查阅访问和数据库的管理维护。
这三部分都调用的是同一数据库,只是三种用户的实现功能不同。
2需求分析
2.1需求描述与分析
设计一个性能良好的数据库系统,明确应用环境对系统的要求是首要的和最基本的。
特别是数据应用非常广泛,非常复杂,要是事先没有对信息进行充分和细致的分析,这种设计就很难取得成功。
通过需求分析阶段对学生选课系统的整个应用情况作全面的、详细的调查,确定选课的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定用户的需求,并把这些写成用户和数据库设计者都能够接受的文档。
事实上,需求分析是数据库开发中最难的任务之一。
因为,第一,系统本身是可变的,用户的需求必须不断调整,使之与这种变化相适应。
第二,用户很难说清某部分工作的功能处理过程。
所以,设计人员必须认识到:
在整个需求分析以和系统设计过程中,用户参与的重要性,通过各种方法展开调查分析。
2.2需求分析的步骤
需求分析大致可分为三步来完成,即需求信息的收集、分析整理和评审通过。
2.2.1需求信息的收集
需求信息的收集又称为系统调查。
为了充分地了解用户可能提出的要求,在调查研究之前,要做好充分的准备工作,要了解调查的目的、调查的内容和调查的方式。
2.2.2调查的目的
首先,要了解组织的机构设置,主要管理活动和职能。
其次,要确定组织的目标,大致管理流程和任务范围划分。
因此,学生选课系统系统主要是通过对以往学生的选课情况进行考察、研究。
并且通过与学生和教师的交流来完善管理功能。
2.2.3调查的内容
外部要求:
信息的性质,响应的时间、频度和如何发生的规则,以和选课的要求,安全性和完整性要求。
管理的现状:
即管理信息的种类,信息流程,信息的处理方式,选课的工作过程。
组织机构:
了解仓库管理机构的作用、现状、存在的问题,和是否适应计算机管理
2.3用户特点
学生选课系统的使用者主要是学院的教师用户和学生用户,要求软件界面人性化,操作方便快捷。
3总体设计
3.1模块简介
本系统主要分为五个模块,用户登录模块,基本档案管理模块,客房管理模块,查询管理模块,系统功能模块。
这部分文档中主要包括:
确定每个模块的功能;确定模块之间的层次和相互调用关系;确定模块之间的接口,即模块之间传递的信息等。
可使用的工具有系统模块图、数据流图等。
学生选课系统模块图
图3.1
3.2环境需求分析
学生选课系统开发与运行环境如下:
开发环境:
Windows2000
开发工具:
Delphi7.0
数据库管理系统:
SqlServer2000
运行环境:
本系统是基于SqlServer2000数据库开发的一套管理系统,所以它的运行前提是要求该系统所运行的环境必须装有SqlServer2000。
本系统可以在装有Windows98/2000/XP/NT的操作系统下运行。
3.3运行设计
系统加载窗体最先出现,而后是主界面,用户点击登录进入系统后,可进行查询和选课等操作。
如:
在主窗体中点击选课管理即可进入学生用户可进行选课。
4数据库设计
根据学生选课系统的功能要求,选取SqlServer2000作为后台数据库。
该系统数据库:
studata.mdb。
studata.mdb数据库由8个表组成,分别为用户表、专业表、学生表、课程表、教师表、教学计划表、教师任课表、学生选课表。
4.1数据库studata.mdb中表的结构设计
数据库studata.mdb中主要包括信息的一些基本档案,它所包含的表的设计如下。
4.1.1用户表
用户表是对使用本系统的用户进行的统计,包括用户名和密码。
用户表的结构如表4.1所示。
表4.1用户表
字段名称
数据类型
字段长度
是否为null
约束
用户名
varchar
9
否
主键
密码
varchar
9
否
4.1.2专业表
专业表是对学生专业信息的统计,包括专业代码和专业名称。
专业表的结构如表4.2所示。
表4.2专业表
字段名称
数据类型
字段长度
是否为null
约束
专业代码
varchar
4
否
主键
专业名称
varchar
20
否
4.1.3学生表
学生表是对学生信息的详细统计,包括学号,姓名,性别出生日期,入学时间,专业代码和照片。
学生表的结构如表4.3所示。
表4.3学生表
字段名称
数据类型
字段长度
是否为null
约束
学号
varChar
9
否
主键
姓名
varChar
8
是
性别
varChar
2
是
出生日期
Datetime
8
是
入学时间
Datetime
8
是
照片
varchar
20
否
专业代码
varchar
4
是
外键
4.1.4教师表
教师表是对教师信息的详细统计,包括教师编号,姓名,性别,出生日期,专业代码和照片。
教师表的结构如表4.4所示
表4.4教师表
字段名称
数据类型
字段长度
是否为null
约束
教师编号
varChar
6
否
主键
姓名
varChar
8
是
性别
varChar
2
是
出生日期
Datetime
8
是
照片
varchar
20
否
专业代码
varchar
2
否
外键
4.1.5教学计划表
教学计划表是对教学计划信息的统计,包括课程号,专业代码,课程类型,开课学期,学分和教材。
教学计划表的结构如表4.5所示
表4.5教学计划表
字段名称
数据类型
字段长度
是否为null
约束
课程号
varChar
4
否
外键
专业代码
varChar
4
否
外键
课程类型
varChar
8
否
开课学期
Int
否
学分
Int
否
教材
varchar
40
否
4.1.6教师任课表
教师任课表是对教师任课信息的统计,包括序号,教师编号,课程号,专业代码,学年,学期,学生数和学时数。
教师任课表的结构如表4.6所示。
表4.6教师任课表
字段名称
数据类型
字段长度
是否为null
约束
序号
Int
否
主键
教师编号
varChar
6
否
外键
课程号
varChar
4
否
外键
专业代码
varChar
4
否
外键
学年
varChar
4
否
学期
Int
否
学生数
Int
是
学时数
int
是
4.1.7学生选课表
学生选课表是对学生选课信息的统计,包括学号,课程号,教师编号,专业代码,课程类型,学年,学期,学分和成绩。
学生选课表的结构如表4.7所示。
表4.7学生选课表
字段名称
数据类型
字段长度
是否为null
约束
学号
varChar
9
否
主键(外键)
课程号
varChar
4
否
主键(外键)
教师编号
varChar
6
否
外键
专业代码
varChar
4
否
外键
课程类型
varChar
8
否
学年
varChar
4
是
学期
Int
是
学分
Int
是
成绩
int
是
5系统详细设计
5.1系统主界面
5.2用户登陆模块
模块名:
用户登录模块
功能:
实现用户登录
输入:
用户名,密码
输出:
可用的系统主界面
流程逻辑:
该模块的程序流程图如下所示
在该窗体中,输入用户名和密码,系统会检验用户输入的用户名和密码的合法性,如果密码不正确会弹出密码错误的窗体,用户还可以通过“修改密码”进行密码修改,保证信息的安全性。
5.5选课管理界面
模块名:
选课管理模块
功能:
学生进行选课和调课,教师和管理员可进行查询某课程的选课学生
选课界面:
调课界面:
进入选课管理界面后,系统会自动给出用户可以选的公选课,如若已经进行选课,修改的话进入调课界面.调课界面系统会自动给出还可以进行选的公选课和用户已选的公修课内容
代码如下:
procedureTxkgl.Button3Click(Sender:
TObject);
vari,s:
integer;
vartjkch,tjzydm,xkrs,tjxf:
string;
begin
withadoquery1do
begin
close;
sql.Clear;
sql.Add('select*from学生选课,学生where学生选课.学号=学生.学号and学生.学号='''+yhm+'''');
open;
ifRecordCount>0then
begin
showmessage('您已经选课!
修改请进入调课模块!
');
listbox1.Items.Clear;
listbox2.Items.Clear;
panel3.BringToFront;
end
else
begin
if(listbox2.Items.Count=0)or(listbox2.Items.Count>3)then//限制选择选修课的门数
begin
showmessage('所选课程最少一门,最多三门!
');
fori:
=0tolistbox2.items.count-1do
begin
listbox1.Items.Add(listbox2.Items[i]);
listbox2.Items.Clear;
end
end
else
begin
fori:
=0tolistbox2.Items.Count-1do
begin
withadoquery1do
begin
close;
sql.Clear;
sql.Add('select选课人数=count(学号)from学生选课,课程where学生选课.课程号=课程.课程号and课程.课程名='''+listbox2.Items[i]+'''');
open;
xkrs:
=adoquery1.FieldValues['选课人数'];
ifstrtoint(xkrs)>20then
begin
showmessage('选修课'+''+listbox2.Items[i]+''+'人数超标,请重新选择其它课程!
');
edit2.Text:
='';
edit3.Text:
='';
edit1.Text:
='';
edit10.Text:
='';
edit8.Text:
='';
edit5.Text:
='';
fors:
=0tolistbox2.items.count-1do
begin
listbox1.Items.Add(listbox2.Items[s]);
end;
listbox2.Items.Clear;
exit;
end
else
begin
withadoquery1do
begin
close;
sql.Clear;
sql.Add('select课程.课程号,教学计划.专业代码,教学计划.学分from课程,教学计划,学生where学生.专业代码=教学计划.专业代码and教学计划.课程号=课程.课程号and学生.学号='''+yhm+'''and课程.课程名='''+listbox2.Items[i]+'''');
open;
tjkch:
=adoquery1.FieldValues['课程号'];
tjzydm:
=adoquery1.FieldValues['专业代码'];
tjxf:
=adoquery1.FieldValues['学分'];
SQL.Add('insertinto学生选课values('''+yhm+''','''
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 选课 系统 论文