毕业设计(论文)学生学籍与成绩管理系统.doc

上传人:文库蛋蛋多 文档编号:3981999 上传时间:2023-03-30 格式:DOC 页数:30 大小:362KB
返回 下载 相关 举报
毕业设计(论文)学生学籍与成绩管理系统.doc_第1页
第1页 / 共30页
毕业设计(论文)学生学籍与成绩管理系统.doc_第2页
第2页 / 共30页
毕业设计(论文)学生学籍与成绩管理系统.doc_第3页
第3页 / 共30页
毕业设计(论文)学生学籍与成绩管理系统.doc_第4页
第4页 / 共30页
毕业设计(论文)学生学籍与成绩管理系统.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《毕业设计(论文)学生学籍与成绩管理系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)学生学籍与成绩管理系统.doc(30页珍藏版)》请在三一办公上搜索。

1、FPIT-R-JX11-2303-40福建信息职业技术学院成人高等教育毕业论文(设计)题目学生学籍与成绩管理系统 姓名张三 学号 07412100002年级与专业07计算机网络技术 指导教师李四毕业论文(设计)任务书一、 题目:学生学籍与成绩管理系统 二、 指导教师对毕业论文(设计)的进度安排及任务要求:任务:1、应查阅参考文献5篇以上 2、毕业设计提纲(选题意义、论文框架结构) 3、毕业设计论文(目录、标题、论文摘要、开题报告及关键字、正文)任务安排: 2007年5月 选题 2007年6月-2007年7月完成毕业论文提纲及文献综述、系统设计文案。 2007年6月-2007年8月完成毕业论文初

2、稿及系统设计 2007年9月-2007年10月完成毕业论文及系统调试起讫日期2007年5月日至2007年10月日指导教师(签名)李四职称副教授目 录 论文摘要 .1一、引言 .2二、系统分析与需求 2.1目标系统描述 .22.2用户需求描述 .32.3性能需求描述 .32.4界面设计描述 .32.5运行环境需求 .8三、系统设计3.1总体设计 .83.2各个模块的功能设计 .93.2.1系统管理模块 .93.2.2学籍管理模块 .103.2.3成绩管理模块 .103.2.4教学管理模块 .103.3数据库设计 .103.3.1数据库介绍 .103.3.2数据库表名清单 .113.3.3数据库表

3、之间关系说明 .123.3.4数据库表的详细清单 .13四、系统实现4.1 系统流程 .164.2功能模块界面的实现 .174.2.1系统管理模块的实现 .174.2.2添加模块的实现 .194.2.3修改模块的实现 .204.2.4删除模块的实现 .214.2.5保存模块的实现 .224.3软件测试 .234.3.1功能测试 .234.3.2性能测试 .24结束语 .25致谢 .25参考文献 .26学生学籍与成绩管理系统摘 要:学生学籍与成绩管理是一个学校不可缺少的一部分。本人在学校工作六年,深知学生档案及成绩管理的繁琐。以往我校在这个方面都是采用人工的方式管理,这种管理方式存在着不仅工作量

4、大、效率低的缺点,而且时间一长产生大量的文件,这对于查找、更新和维护都带来不少的困难,甚至出现档案丢失现象。因此,我利用这次毕业设计的机会,根据我校实际情况,设计了此套学生学籍与成绩管理系统。本系统分为系统管理、学籍管理、教学管理、成绩管理四大模块,具备了学生信息录入/修改/删除、学生注册、学生成绩录入/修改/删除、班级设置、课程设置、用户添加/删除、用户权限设置等功能。本文共五章。第一章引言提出开发背景及系统特色。第二章系统需求分析,对该软件的需求进行阐述。第三章系统设计分析,介绍软件结构、流程、各模块功能及数据库的设计。第四章,软件实现分析。第五章总结。关键词:学生学籍管理 学生成绩管理

5、数据库Access一、 引 言学生学籍与成绩管理是教务管理中一个十分重要的部分。传统手工的学籍与成绩管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难,已经不能适应现代教务管理操作简便、查询快捷的要求。做为计算机应用的一部分,使用计算机对学生档案信息进行管理,具有着手工管理所无法比拟的优点。既提高了教务工作者的工作效率,把他们从繁重的劳动中解脱出来,又提高了工作质量。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理,与世界接轨

6、的重要条件。因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我将以开发学生学籍与成绩管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。二、系统需求分析2.1 目标系统描述本系统只要用于学生的学籍及成绩的管理 。主要用户是管理员,教务员,和普通老师。关系图如下:学生学籍及成绩管理系统教务员学生档案、成绩管理员录入 修改 维 护教师等查看档案成绩等 图2-1 组织结构图2.2 用户需求描述本软件面向的用户有三类:管理员,教务员,和普通老师。他们各自的权限不同,由管理员设置。管理员:除了有权对学生、家长、教师、管理员账号进行管理之外,管理员还负责对软件的各类数据模块进行全权的管理操

7、作。教务员:可以对录入删除学生信息;对已经交费的学生进行注册;添加删除修改查询学生成绩;可以进行添加删除班级;对班级进行课程设置;对本人的密码进行修改。普通教师:可以查询学生信息;查询学生成绩;对本人密码进行修改。2.3性能需求描述软件的开发要基于人性化,要具备易于操作,易于理解等特点,同时也要保证软件运行的安全性能。为了达到这一目标,该软件必须具备一定的实用性、安全性、易维护性。1)实用性。本系统提供强大的交互能力,在管理员、教师、学生与系统,甚至与外界环境之间建立方便、可靠的交互。2)安全性。系统运行安全可靠是决定软件质量的重要因素。为了防止系统之外的用户越权使用,课程、成绩等被非法篡改设

8、置了权限的限定,保证学生信息和课程的设置只能有专有人员才能修改。3)易维护性。本软件是一个交互性强的学生学籍管理软件。其复杂性可想而知,因此在设计时应充分考虑它的运行、管理和维护问题,尽可能的实现运行速度快、管理方便、维护容易的目标。2.4界面设计描述 界面是软件与用户交流的唯一平台,美观、简洁、按钮操作方便是用户最基本的要求。本软件本着实用、简洁、方便的原则设计界面,并做到美观。各主要界面如下:1)、系统管理模块界面包括:用户登陆界面、密码修改界面和用户管理界面。 图2-2 用户登陆界面 图2-3 用户修改界面 图 24 用户管理界面2)、学籍管理模块包括学生信息界面和学生注册界面图2-5

9、学生基本信息管理界面图 2-6 学生注册界面3)、成绩管理模块包括成绩管理录入界面和成绩查询界面图 2-7 学生成绩录入界面图 2-8 学生成绩查询界面4)、教学管理模块包括班级设置界面和课程设置界面图 2-9 班级设置界面图 210 课程设置界面2.2.5 运行环境需求1、软件环境:Windows2000操作系统 Access2000数据库软件2、硬件要求:兼容IBM PC PII 450以上,128M内存,50M空间三、 系统设计3.1 总体设计本系统有四个功能模块,分别为用户管理,学籍管理,成绩管理和教程管理。系统的总体结构如图3-1所示。.学 生 学 籍 与 成 绩 管 理 系 统系统

10、管理学籍管理成绩管理教学管理用户设置课程设置班级设置成绩查询成绩录入学生注册学生信息录入权限管理图3-1 系统总体结构图3.2各个功能模块设计3.2.1 系统管理模块本模块主要是对使用本软件的用户进行添加、删除和权限设置,密码修改。分为2个小模块。如图。用户管理添加、删除系统管理权限设置密码设置图3-2 系统设置模块结构图用户一共有三类,管理员,教务员,和其他教师。管理员拥有全权,可以添加、删除其他用户,以及设置其他用户的权限。教务员拥有班级设置、课程设置、学生信息录入修改查询、学生成绩录入修改查询等权限。其他教师只拥有对学生学籍及成绩的查询的权限。在密码设置中,每个用户都只能修改自身用户的密

11、码。3.2.2 学籍管理模块学籍管理模块分为二个子模块,分别是学生信息管理模块和学生注册模块。(1)学生信息管理模块有两项功能。 学生信息进行录入功能。包括对学生学号、班级、姓名、性别、家长姓名、联系电话、家庭住址、入学时间、是否团员等资料进行登记。 查询功能。在已有的学生信息中,可以按照学号、姓名、班级等条件进行查询,同时可以对学生信息进行删除和修改。(2)学生注册模块有两项功能。 对每个学期开学后报到的学生进行注册。 查询功能。可以根据学生姓名、学号、注册时间等查询学生注册情况。3.2.3 成绩管理模块成绩管理模块包括二个子模块分别是成绩录入模块和成绩查询模块。(1)成绩录入模块。对每个学

12、生每个科目的期中和期末成绩进行登记。在每次成绩登记前,都要选择班级、科目、学年、考试类型。在班级、科目、学年、考试类型相同的条件下对不同学生进行成绩登记,可以使用“快速新增记录”方法,可避免重复选择,简便操作。(2)成绩查询模块。可以查询某个班级的某个科目的成绩分布情况,以及平均分、最高分和最低分。3.2.4 教学管理模块教学管理模块包括二个子模块分别是班级设置模块和课程设置模块。(1)班级设置模块有两项功能。 新增班级。设置新班级编号及名称。 查询功能。根据班级编号查询班级名称。(2)课程设置模块有两项功能。 新增课程。给新增的班级设置课程。 查询功能。根据班级编号查询该班级所学的课程名称。

13、3.3 数据库设计3.3.1 数据库介绍数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的)是一串文字或数字流。数据库中的数据可以是文字、图象、声音等。 Microsoft Access是一种关系式数据库。关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。表与表之间可以建立关系(或称关联,连接),以便查询相关联的信息。Access数据库以文件形式保存,文件的扩展名是MDB。Access数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。表(Table) 表是数据库的基本对象,是创

14、建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。宏(Macro)宏相当于DOS中的批处理,用来自动执行一系列操作。Access列出了一些常用的操作供用户选择,使用起来十分方便。模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据

15、自己的需要编写程序。模块使用Visual Basic编程。 与Access 以前的版本比较,Access 2000新增了许多功能,字段类型增加了OLE对象和超级链接,特别是与Internet的融合,在数据库中可以直接链接到指定的Web页面或网络文件,也可以把Web页面上的表格导入到数据库。Access2000可以方便地利用各种数据源,包括dBASE, FoxBase,FoxPro,Excel,Word 等。Access 2000增加了数据库访问的安全机制,可对表一级设置访问许可权。3.3.2 数据库表名清单由于学生学籍管理系统的数据库表比较多,现列出主要表名清单,如表3-1序号中文表名英文表名

16、表功能说明1系统用户列表Userinfo管理系统的用户名单2用户权限表Bgran管理用户权限3学生信息列表Arcinfo管理学生的基本情况4注册列表Reginfo管理学生注册情况5班级列表Classinfo管理学校班级6课程列表Course管理课程7成绩列表Subject管理学生成绩情况8菜单列表Funt管理菜单选项表3-1 数据库表名清单3.3.3 数据库表之间关系说明下面介绍本设计软件各个模块的数据库表之间的关系。1)、系统管理模块该模块有三张表:userinfo(系统用户列表),bgran(用户权限表),Funt(菜单列表)userinfo (uID, uUser, Passwd, Cr

17、eateD)关键值:uIDbgran(fID, uID, gRight)关键值:uIDFunt(fID,fName)关键值:fIDuserinfo(系统用户列表)和bgran(用户权限表)通过关键值:uID进行关联。2)、学生学籍管理模块该模块有Arcinfo (学生信息列表),Reginfo(学生注册列表)Arcinfo(bID,cID,bName,bGender,bNation,bPolitic,bFamily,bNative,bFaname,bFaaddr,bPost,bTel,bDate,bDrith,bStatus)关键值:bIDReginfo(bID,member,age,rter

18、m,rdate,meno) 关键值:bIDArcinfo (学生信息列表)和Reginfo(学生注册列表)通过关键值bID建立关联。3)、学生成绩管理模块该模块有subject(成绩列表)subject(bID , ccID ,bName , cClass ,cName ,mark ,cstyle ,term)该表与教学管理模块中的班级列表(classinfo)通过关键值cID建立关联;同时通过该表的cID与教学管理模块中的课程列表(course)中的关键值ccID建立关联。4)、教学管理模块该模块有班级列表(classinfo),课程列表(course)classinfo(cID ,cCla

19、ss)关键值:cIDcourse(cID ,cName)关键值:cID班级列表(classinfo)和课程列表(course)根据关键值cID建立关联。3.3.4数据库表的详细清单在本管理系统中,我们通过Access2000建立了名称为“data.mdb”的数据库,它包括了8个主要表,具体如下:表3-2系统用户列表(Userinfo)清单序号字段英文名字段中文名类型宽度主键外键1uID用户ID文本8主键2uUser用户姓名文本83Passwd用户密码文本84CreateD注册日期日期/时间12表3-3菜单列表(Funt)清单序号字段英文名字段中文名类型宽度主键外键1fID权限ID文本16主键2

20、fName权限名文本16表3-4用户权限列表(Bgrant)清单序号字段英文名字段中文名类型宽度主键外键1fID权限ID文本16主键2uID用户ID 文本83gright权限状态值逻辑1表3-5 学生信息列表(Arcinfo)清单序号字段英文名字段中文名类型宽度主键外键1bID学生学号数值8主键2cID班级编号数值63bName学生姓名文本84bGender学生性别文本25bNation学生民族文本46bPolitic政治面貌文本87bFamily家庭出生文本48bNative学生籍贯文本169bFaname家长姓名文本810bFaaddr家庭地址文本2011bPost邮政编码文本612bTe

21、l家庭电话数值1213bDate入学时间时间/日期1014bDrith出生日期时间/日期1015bStatus状态文本4表3-6 学注册列表(Reginfo)清单序号字段英文名字段中文名类型宽度主键外键1bID学生学号长整形16主键2member是否团员文本103rterm学年文本84rdate注册时间时间/日期105age年龄数值26meno备注文本40表3-7学生成绩列表(Subject)清单序号字段英文名字段中文名类型宽度主键外键1bID学生学号长整形16主键2cID班级编号数值63ccID课程编号数值64bName学生姓名文本85cClass班级名称文本206cName课程名称文本20

22、7mark成绩数值38cstyle考试类型文本49term学期文本10表3-8班级列表(Classinof)清单序号字段英文名字段中文名类型宽度主键外键1cID班级编号长整形6主键2cClass班级名称文本20表3-9课程列表(Course)清单序号字段英文名字段中文名类型宽度主键外键1cID课程编号长整形6主键2cName班级名称文本203.3.5数据库表的关系图表3-10 数据库表关系图 四、系统实现4.1 系统流程本软件是根据我校实际情况编写的。现以新生入学为例,介绍本软件的系统流程。新学期开始,教务员根据实际情况设置新的班级,班级设置完毕,设置该班级相应课程。新生报道后,根据资料填写新

23、生信息,随后根据新生收费情况,进行注册。期中或期末考试后,教务员进行成绩录入。录入后,各科教师可以进行查询,并可查询各科成绩分布情况和最高成绩、最低成绩和平均分。班 级 设 置课 程 设 置档 案 查 询新生信息录入注册情况查询学 生 注 册成 绩 管 理成 绩 录 入成 绩 查 询图4-1系统业务流程图4.2功能模块的实现4.2.1、系统管理模块1)、实现方法登录功能实现介绍如下:if 文本框输入的用户名为空 then 提示不能为空,返回登录界面if 文本框输入的密码为空 then 提示不能为空,返回登录界面if 文本框的内容与数据表的内容不同 then 提示用户输入有误或用户不存在,返回登

24、录界面else 转向到要登录的主页面end2)、关键代码:if Edit1.Text = “ “ then /判断文本框Edit1是否为空 begin Edit1.SelectAll; Edit1.SetFocus; /获得焦点 exit;/退出判断 end;if Edit2.Text = then /判断文本框Edit2是否为空 begin Edit2.SelectAll; Edit2.SetFocus; /获得焦点 exit;/退出判断 end; uID := Edit1.Text; /将Edit1的文本内容赋值给变量uID pass := trim(Edit2.text);/将Edit2

25、的文本内容去除空格,赋值给变量pass if not maindFrm.CheckUser(uID,pass) then/将uID、pass 代入函数判断 begin MessageBox(Handle,PChar(你输入的密码不正确!),/提示 警告!,mb_ICONWarning+mb_OK); exit;/退出判断 end else begin/用户名、密码正确 INI_Save_Str(FileName,LOG,Edit1.text);/将用户名记忆,以便判断权限 UserID := uID;/给变量赋值 UserPass:= pass;/给变量赋值 UserName:= MainDF

26、rm.FeedUuser(uID);/记忆用户名 edit2.Text := *; close; end;4.2.2 添加模块的实现(以添加学生信息为例)1)、实现方法调用数据库连接模块,以连接数据库if 文本框内容为空 then 提示不能为空,返回end ifif 内容不符合要求 then 提示某一项内容不符合规定else /如果表单内容符合要求,则把数据写入数据库表。 /把数据写入数据库表/提示用户操作成功,并返回2)、关键代码procedure Tfrmbasic.InsertMode; /调用数据库beginformmode :=insBtnModeEnd begin MainDFrm

27、.Qgrant.SQL.Clear;/清空SQL语句 MainDFrm.Qgrant.SQL.Add(select bID from Arcinfo);/以学生ID添加到表 MainDFrm.Qgrant.Close;/关闭 MainDFrm.Qgrant.Open;/打开 end;if MaindFrm.CheckPermission(UserID,stdb002)=False then exit;InsertMode;/插入模式MainDFrm.qutil.Append;/对数据库进行操作with MainDFrm dobegin qutil.FieldByName(bID).AsStri

28、ng := ;/赋初始值 qutil.FieldByName(cID).AsString := ;/赋初始值 qutil.FieldByName(bName).AsString := ;/赋初始值 qutil.FieldByName(bGender).AsString := 男; /赋初始值 qutil.FieldByName(bNation).AsString := 汉; /赋初始值 qutil.FieldByName(bPolitic).AsString := 否; /赋初始值 qutil.FieldByName(bFamily).AsString := 农民; /赋初始值 qutil.F

29、ieldByName(bNative).AsString := ;/赋初始值 qutil.FieldByName(bFaName).AsString := ;/赋初始值 qutil.FieldByName(bWorkAddr).AsString := ;/赋初始值 qutil.FieldByName(bFamAddr).AsString := ;/赋初始值 qutil.FieldByName(bPost).AsString := ;/赋初始值 qutil.FieldByName(bTel).AsString := ;/赋初始值 qutil.FieldByName(bDate).AsString

30、 := DatetoStr(date); /赋初始值 qutil.FieldByName(bBirth).AsString := ; /赋初始值 qutil.FieldByName(bStatus).AsString := 在校;/赋初始值 qutil.FieldByName(bResume).AsString := ;/赋初始值 qutil.FieldByName(bMemo).AsString := ;/赋初始值 qutil.FieldByName(bPhoto).AsVariant := ;/赋初始值 qutil.FieldByName(bHobby).AsString := ;/赋初始

31、值 edit1.Text := ;/赋空值 dbbID.SetFocus;/获得焦点 end;4.2.3 修改模块的实现1)、实现方法调用数据库连接模块,以连接数据库if 文本框内容为空 then 提示不能为空,返回end ifif 内容不符合要求 then 提示某一项内容不符合规定else /用SQL语句查询数据库的表格中找到要修改的数据的记录/用SQL语句查询数据库的表格中找到要修改的数据的记录/用相应的数据替换相应字段/提示用户操作成功,并返回end 2)关键代码if MaindFrm.CheckPermission(UserID,stdb004)=False then exit;pro

32、cedure Tfrmbasic.updateMode; /调用数据库beginformmode :=edtBtnModeEndMainDFrm.qutil.Edit;/选定 对应bID的行UpdateMode;/进行更新操作4.2.4 删除模块的实现1)、实现方法调用数据库连接模块,以连接数据库单击删除按钮,用SQL语句删除数据库表格中要删除的记录提示删除成功2)关键代码if MaindFrm.CheckPermission(UserID,stdb003)=False then exit;procedure Tfrmbasic.NormalModeMode; /调用数据库beginformm

33、ode :=norBtnModeEndnormalmode; /提示if messagebox(Application.Handle,如果您点确定键此条记录将被删除,警告,mb_ICONWarning+mb_yesno+mb_defbutton2)= mryes thenwith MainDFrm do /确定删除beginqutil.ParamByName(bID).AsString := dbbID.Text;/删除对应bID的数据 Uqutil.DeleteSQL.Clear; /清空SQL语句 Uqutil.DeleteSQL.Add(DELETE FROM Arcinfo );/执行

34、操作 Uqutil.DeleteSQL.Add(WHERE bID =+dbbID.Text+); qutil.Delete;try /抛出异常 qutil.Database.StartTransaction; qutil.ApplyUpdates; /更新数据库 qutil.CommitUpdates; qutil.Database.Commit;/提交 except /异常处理 qutil.Database.Rollback;/回滚 qutil.CancelUpdates;/提示 ShowMessage(存盘失败!); end;end;4.2.5 保存模块的实现1)、实现方法添加、修改后

35、对数据库的操作进行保存恢复按钮初始化模式2)关键代码if formmode = ins then/获得相对应的类型,对数据库进行操作 if MainDFrm.ChecktbID(Arcinfo,bID,dbbID.Text) then begin dbbID.SelectAll; dbbID.SetFocus;/获得焦点 exit;/退出 end;with MainDFrm dobegin try/抛出异常 qutil.Post;/更新数据库 qutil.Database.StartTransaction; qutil.ApplyUpdates; qutil.UpdateStatus; qut

36、il.Database.Commit;/提交 except/异常处理 qutil.Database.Rollback;/会滚 qutil.CancelUpdates;/提示 ShowMessage(存盘失败!); end;end;4.3 软件测试软件的测试是一个很关键的环节,它贯穿于软件开发的整个过程。测试的内容包括功能、性能等方面的测试。通过测试,检查软件能否满足客户的需求,便于控制开发员的工作状态和工作进度。4.3.1 功能测试在软件开发的过程中,每实现一个模块功能的编码后,均在自己搭建的软件测试平台中进行测试。下面,举管理员登录功能说明如何进行单元测试:首先,看看不符合条件的内容输入会不

37、会正常登录。如:在用户名及密码中不输入内容,会不会有提示;在用户名及密码中输入与表中不同的内容,是否会登录;在用户名及密码中输入正确的内容,是否会进入系统管理界面。当所有模块均实现时,这时就进行集成测试。经测试,各模块的功能均已实现。4.3.2 性能测试拟定本软件先给本校的教务员及一般老师使用,请他们当测试员。然后根据测试员的情况反馈,来改进性能要求。经测试,到目前为止,系统的程序的代码组织结构有待改善。结束语这次毕业设计,本人几乎竭尽所学的计算机相关知识以及这三年的教学、管理实践所得。同时,也发现自己所学的肤浅,实感惭愧。通过这次毕业设计,本人对自己的工作及所学知识进行一次大整理及总结,对于面向对象程序设计有了更深刻的理解。这次毕业设计的最大感触是:知识的海洋是无限大,人是那么的渺小,只有掌握正确的学习方法及本着虚心好

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号