学生成绩管理系统完整版1.docx
《学生成绩管理系统完整版1.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统完整版1.docx(20页珍藏版)》请在冰点文库上搜索。
学生成绩管理系统完整版1
目录
摘 要3
关键字:
3
引 言3
一、系统的理论与技术基础4
1.1管理信息系统基础4
1.2软件工程理论的概述4
1.3软件工程理论对本系统的指导4
二、系统的需求分析5
2.1项目开发的背景分析5
2.2项目开发的目标5
2.3项目提出的意义6
2.4国内外研究现状6
三、系统的开发工具及编程环境9
3.1 开发工具的选择9
3.3编程环境的选择10
3.5VisualBasic系统实现菜单选项12
3.5VisualBasic系统实现菜单选项12
四、系统数据库的使用13
4.1系统数据库的选择13
4.2数据的保存和读取13
4.3数据库文件的易用性13
4.4数据库文件格式14
4.5教师管理界面编码设计16
五、系统代码及开发过程18
5.1系统的开发18
5.2功能需求描述18
5.3代码及图示18
5.3.2.主窗口:
18
5.3.3.管理系统:
19
5.3.4.属性:
19
5.3.5.打开系统显示的界面20
5.3.6.窗体的尺寸21
结 论22
致 谢23
参考文献24
学生成绩管理系统
摘 要
学生信息管理系统是典型的信息管理系统,经过分析,我们使用MICROSOFT公司的VISUALBASIC开发工具,利用其提供的各种面向对象的开发工具,尤其首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。
关键字:
数据库,智能化,面向对象
ABSTRACT:
Theabstractstudentinformationmanagementsystemisthetypicalinformationmanagementsystem,theprocessanalysis,WeuseMICROSOFTCorporationVISUALtheBASICdevelopmentkit,useseachkindofobject-orienteddevelopmentkitwhichitprovides,especiallyfirstinashorttimeestablishesthesystemapplicationprototype,then,carriesonthedemanditerationtotheinitialprototypesystem,revisesandtheimprovementunceasingly,untilformsusersatisfactionthefeasiblesystem.
Keywords:
Database,intelligence,object-oriented
引 言
随着学校规模的不断扩大,学生数量急剧增加,有关学生的各科成绩信息量也成倍增长。
面对庞大的成绩信息,需要学生管理系统来提高学生管理工作的效率。
通过这样的系统可以做到成绩的规范管理、科学统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量。
本系统主要用于学生成绩管理,总体任务是实现学生成绩信息的系统化、规范化和自动化。
其主要任务是用计算机对学生各科成绩进行管理,如修改、增加、删除,另外还考虑到学生名次的排序等,针对这些要求设计了学生成绩管理系统。
其功能主要有:
1)有关学生信息的输入,包括输入学生所在班级、所学课程和成绩等2)学生课程的修改3)学生名次的排序。
一、系统的理论与技术基础
1.1管理信息系统基础
管理信息系统就是我们常说的MIS(ManagementInformationSystem),是集成了计算机网络技术、信息处理技术,对信息进行收集处理、传输及存储,进行事务管理的一种人机交互的智能化计算机系统。
1.2软件工程理论的概述
软件工程是一门旨在研究计算机软件开发与维护的普遍原理和技术的工程学科。
它的研究范围涉及到技术方法、软件工具、科学管理等诸多方面。
实践证明:
在软件的设计和开发过程中,运用软件工程的方法,可以大大提高软件开发的成功率,能够显著减少软件开发和维护中的问题。
1.3软件工程理论对本系统的指导
学生成绩管理系统的设计和开发是一个较为庞大的系统工程,应以软件工程的思想和方法为指导,进行设计和开发。
软件工程理论对本系统的指导,主要表现在:
帮助我们理清思路,建立较为科学的结构和开发制作流程方面。
上述的各种理论,对我们设计和开发学生成绩管理系统提供了重要的理论基础,同时也为我们如何进行具体的设计和开发工作,提供了必要的思路和方法。
二、系统的需求分析
2.1项目开发的背景分析
当今时代是飞速发展的信息时代,在各行各业中离不开信息管理处理,这正是计算机被广泛应用于管理系统的原因。
计算机的最大好处在于利用它能够进行信息管理。
使用计算机进行管理控制,不仅提高了工作效率,而且大大的提高了其安全性,尤其对于复杂的管理,计算机能够充分发挥它的优越性。
管理系统是进行信息的采集、存储、加工、维护和使用的系统,它是随着管理科学和技术科学的发展而形成的。
学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统能为用户提供充足的管理手段,对学生来说可以轻松的查阅自己在校的成绩及排名。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,有着手工管理所无法比拟的优点。
例如:
查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生成绩管理的效率,也是企业的科学化、正规化管理并与世界接轨的重要条件。
因此,开发这样一套成绩管理系统成为很有必要的事情。
学生成绩管理系统提供了强大的学生成绩管理功能,方便系统管理员对学生成绩等信息的添加、修改、删除、查询等操作。
2.2项目开发的目标
在21世纪的科技时代,科学技术突飞猛进,计算机已经不仅是在科技上应用,而且在生活中也是同样得到了广泛在应用。
如今,不管是小学、初中、高中甚至是很多大学生的学生成绩管理,基本上是靠人工进行管理,但随着时间的变化,学校规模的扩大,有关学生成绩管理工作和所涉及到的数据量越来越大,越来越多,大多数学校不得不靠增加人力、物力、财力来进行学生成绩管理。
但是人工管理成绩档案具有效率低、查找麻烦等因素。
在今天信息时代,这种传统的管理方法必然会被计算机为基础的信息管理系统所代替。
本系统主要信息流程为:
接受班级信息,学生成绩录入,维护学生成绩,并交于信息维护,再把成绩存入数据库中。
采用本系统,能够使整个系统内部所有信息的工作简化,提高工作效益。
由于采用统一的数据信息,使相关资料能够快速地找到所需的数据、资料及其它信息,使信息快速高效的运行。
2.3项目提出的意义
现在我国的大中专院校的学生成绩管理水平普遍不高,有的还停留在纸介质基础上,这种管理手段已不能适应时代的发展,因为它浪费了了许多的人力和物力。
在当今信息时代这种传统的管理方法必然被计算机为基础的信息管理系统所代替。
如果本系统能被学校所采用,将会改变以前靠手工管理学生成绩的状况,可以树立良好的办学形象,提高工作效率。
学生信息管理系统是为本校开发的,本系统所采用的语言是VisualBasic语言,通过本校内部的信息,依据统一数据信息进行管理,把任何一块信息所产生的数据变动及时地反映给其它相关信息,做到数据共享。
2.4国内外研究现状
在教育技术水平比较发达的国家,前几年就已经开发成绩管理系统,但都是根据他们本国的实际情况来进行开发的,在语言文字、价格及对象的要求等方面都不符合我国的国情。
在国内,虽然现在也有很多的成绩管理系统,但大多是封闭性的。
2.5系统主要业务逻辑
系统表业务逻辑如下图:
业务
流程如下图所示:
系统用例如下图所示:
每个用例都包括,科目,名次,班级属性。
对于科目这个用例,他又包括分数这个属性。
下面对系统的参与者进行更具体的分析:
1. 如果最终分析的候选参与者没有用例,那么他根本不是一个参与者。
2. 如果他和用例之间没有通信,没有任何联系,那么他也可能不是一个参与者。
3. 如果候选用户并不作任何事情,但是他包含了一些特殊信息,那么他可能不是一个 参与者,但他可以作为参与者的一个附属品。
4. 如果参与者的名字过于细化,比如,张三,那么,我们应该根据他的角色来创建参 与者。
5. 如果一个参与者的名字过于泛化,比如“用户”,那么我们可以根据他的角色来细化他的参与者(如上图所示)
描述参与者和用例之间的关系是我们构建用例图的最后一步。
系统的每个参与者都触发一个或多个用例,当然如果他没有触发任何用例,他将不能成为参与者,而每个用例都由一个或多个参与者触发。
三、系统的开发工具及编程环境
3.1 开发工具的选择
基于系统的需求分析以及系统的应用,系统将采用微软的VisualStudio6.0简体中文版进行开发,所选择的语言是VisualBasci6.0,下面将介绍VisualBasic6.0的特点。
3.2 VisualBasic语言的特点及常用名词
VisualBasic语言用其设计应用程序时具有两个基本特点,可视化设计WYSIWYG(whatyouseeiswhatyouget)和事件驱动编程。
VisualBasic系统除了一般高级语言所具有的一些名词术语外,还有几个系统常用的名词。
其基本含义如下:
视窗(Form)、对象(Object)、属性(Properties)、事件(Events)、方法(Method)、过程(Procedure)和模块(Module)。
1.视窗(Form)
视窗是进行人机交互的界面或接口,也叫窗体。
VB系统的人机交互界面或接口,无论是在设计时或是在运行时,都是Windows系统的标准视窗。
2.对象(Object)
对象是VB系统内部提供给设计者可以直接使用的处理输出的控制工具。
本程序所应用到的对象类型有标签框(LabelBox),文本框(TextBox),命令按扭(CommandButton),网格(DataGrid)等。
当把这些工具放置到用户界面对应的窗体上时,被称为对象或控件。
用户可以通过设置对象的“属性”和“方法”,便于对象适应自己所设计应用程序的输入输出内容,对象的生成过程及结构都被封装起来。
正确使用对象可以减少程序和开发时间,提高程序设计者的工作效率。
3.属性(Properties)
属性是VB系统提供的有关对象的参数或数据接口。
用户通过适当的设置或改变对象的属性来确定对象的外观及性能特征,从而有效地使用系统提供的对象。
比如,对象的名称、在屏幕上显示的位置、大小、颜色、接收或容纳的数据内容及数据的表现格式等。
4.事件(Events)
事件是指用户或操作者对计算机进行的某一操作(如击键、单击或移动鼠标等)的行为或系统状态发生的变化。
VB系统常用事件来引导计算机执行一段程序。
程序所用的键盘事件有KeyPress(按键)事件,KeyDown事件和KeyUp事件;鼠标事件有Click(单击鼠标)事件,DbDlicd(双击鼠标)。
5.方法(Method)
方法主要是指对一个对象使用某种作用的过程。
它是在程序执行的过程中要计算机执行的某种操作。
其程序的方法有Show(显示)方法,Hide(隐藏)方法,Refresh(刷新)方法。
6.过程(Procedure)
过程是指经过定义或说明的,或基于某一对象对应的事件所引发的程序段。
7.模块(Module)
模块是指一些运算量或过程进行声明或定义的一个集合。
系统程序大体可分成四个模块:
数据输入、根据查询、数据打印和通讯。
3.3编程环境的选择
微软公司的VisualBasic6.0是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。
VisualBasic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。
故而,实现本系统VisualBasic6.0是一个相对较好的选择。
3.4Windows下的VisualBasic面对对象的编程
面对对象的编程;面向对象的设计方法(OOP,ObjectedProgramming)从应用领域内的问题着手,以直观自然的方式描述客观世界的实体。
VisualBasic作为一种面向对象的编程方法,把程序和数据封装起来作为一个对象,并为每个对象赋予相应的属性。
在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,由VisualBasic自动生成对象的程序代码并封装起来。
VisualBasic应用程序基本的构建块是用户所创建的对象,每一个对象都具有一些特性和行为(属性、事件和方法)。
开发人员可以最有效利用所创建的每一个对象。
使用应用程序具有可通用性可说扩展性和强有力的功能。
VisualBasic应用由一系列对象组成,包括有函数、菜单、函数、结构和数据窗口、用户对象、用户事件等等,对象中又包含若干控件如命令按钮、单行编辑器等这些对象和控件都可在许多应用中重复使用。
首先是进入登陆界面,如图3.4所示,本窗体显示系统名称,密码校验等信息,本系统的用户分为三类:
管理员,教师,学生。
使用者可以在组合框中选择所要登录的用户的类型,并输入相应的用户名和密码,单击“确定”就会将输入提交给系统以验证用户、密码及身份。
如果用户类型及密码正确,则会进入系统的MDI主窗体(MDIMain.frm).
本模块的流程图如下:
图3-4流程图
3.5VisualBasic系统实现菜单选项
实现菜单选项:
菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,VisualBasic也提供了强大的创建菜单功能,使程序更加标准。
3.5VisualBasic系统实现菜单选项
实现菜单选项:
菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,VisualBasic也提供了强大的创建菜单功能,使程序更加标准。
四、系统数据库的使用
4.1系统数据库的选择
本系统并没有选择流行的数据库管理系统作为后台数据库而是选择了以系统自己建立的文件系统作为数据库后台,这主要是考虑了系统的通用性和系统的实用性,在使用系统时,你并不需要额外的软件支持。
同时,我们也参考了Access2000即关系数据库开发工具,利用数据库能汇集各种信和Access的优点,将使用数据表示图或自定义窗体收集信息。
数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。
另外,Access允许创建自定义报表用于打印或输出数据库中的信息。
它也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他用户共享数据库。
它是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。
如上所述,参考Access的优点作为关系数据库开发,的确具备了许多优点,可以在一个数据包同时拥有桌面数据库的便利和关系数据库的强大功能。
4.2数据的保存和读取
系统采用自己定义的数据库格式,以文本文件保存用户录入的信息,数据的格式转换主要通过模块函数实现,保存时,系统将网格的数据读入RecordSet中,然后转换为可以写入文本文件的数据格式,当需要从文件加载数据时,执行相反过程,再将文件内容转换成内存的RecordSet的格式,并将RecordSet绑定到网格显示数据。
执行这两者转换的数据模块式系统中的Moudel1,Moudel2两个模块。
4.3数据库文件的易用性
前面已经说明了,系统的数据存储是文本文件格式的文件,这对数据库文件的建立和转移,备份都是非常方便的,如果你愿意,完全可以在没有系统的时候更改录入资料,而不用关心系统是否崩溃了。
如果要备份数据库,只需要备份系统下面的文本文件格式的数据库。
这对系统的通用性是一个不错的选择。
4.4数据库文件格式
数据库文件格式如下所示
PrivateSubCmdOk_Click()
DimConnAsNewADODB.Connection
DimmlinkAsString
mlink="provider=microsoft.jet.oledb.3.51;datasource=score.mdb;"
Conn.Openmlink
'当用户名密码为空时给出提示
IfText1.Text=""Then
MsgBox"
在frmlogin窗体中如果用户登录成功,将会出现如图4-3所示的MDI主窗体。
4-3系统主窗体
若是学生用户,则有些菜单项不可用,只能运行本系统的部分功能(即重新登录和信息查询功能可用)。
如图4-4
图4-4系统主窗体
4.5教师管理界面编码设计
本节以按学生角度进行管理为例,介绍教师管理的编码设计。
教师用户进入“成绩管理”中的“按学生进行管理”功能,出现如图4.5所示界面。
图4.5“按学生进行管理”学生信息功能界面
教师用户用鼠标双击学生信息后,系统会显示出该学生的成绩信息。
如图4.3所示。
图4.5“按学生进行管理”成绩信息功能界面
OptionExplicit
'''当改变记录集时,需要刷新整个网格控件
SubRefreshGrid()
grdScan.DataMember=""
grdScan.Refresh
IfDataEnv.rssqlStudent.State<>adStateClosedThenDataEnv.rssqlStudent.Close
DataEnv.rssqlStudent.Open
grdScan.DataMember="sqlStudent"
grdScan.Ref
五、系统代码及开发过程
5.1系统的开发
学生成绩管理系统对学校加强学生成绩的管理有着极其重要的作用。
由于各个大学都在持续扩招,学生的数量日益庞大,传统的手工成绩管理不仅工作量大,而且容易出现问题。
而本系统则是在以前成绩管理系统的基础之上开发出来的。
5.2功能需求描述
按学生角度管理教师可以看到学生信息和成绩信息。
学生信息包括学生姓名,各科成绩及班级排名等,可以自动显示出该课程的这个学生所有课程的学习成绩,并同时自动计算出这个学生的总分。
在成绩信息中,教师可以对学习成绩进行增加、修改和删除,字体可大可小。
5.3代码及图示
本系统由6个窗体组成,以下是6个窗体的图示及代码。
5.3.1.关于学生成绩管理系统版权(在帮助菜单栏里显示).
?
/P>
部分代码如下:
注册键安全选项...
ConstKEY_ALL_ACCESS=&H2003F
'注册键根类型...
ConstHKEY_LOCAL_MACHINE=&H80000002
ConstERROR_SUCCESS=0
ConstREG_SZ=1 'Unicode空结尾字符串
ConstREG_DWORD=4 '32位数
5.3.2.主窗口:
?
/P>
部分代码如下:
'将窗体标题赋值给变量
strDefaultName=Me.Caption
IfLeft(Me.Caption,4)="新成绩表"Then
strSaveFilename=GetFileName("")
IfstrSaveFilename<>""ThenSaveFileAs(strSaveFilename)
'更新文件菜单
UpdateFileMenu(strSaveFilename)
Else
'窗体标题包含打开的文件名
strSaveFilename=GetFileName(strSaveFilename)
IfstrSaveFilename<>""ThenSaveFileAs(strSaveFilename)
'更新文件菜单
UpdateFileMenu(strSaveFilename)
EndIf
5.3.3.管理系统:
代码如下:
'总是将工作目录设到应用程序所在目录
ChDirApp.Path
'初始化文档窗体数组,并显示第一个子窗体
ReDimDoc
(1)
ReDimFState
(1)
Doc
(1).Tag=1
FState
(1).Dirty=False
Doc
(1).Caption="新成绩表:
1"
Doc
(1).Show
'读系统注册表并适当地设置最近使用的菜单文件列表控件数组
GetRecentFiles
EndSub
5.3.4.属性:
?
/P>
代码如下:
Forj=1To8
TextZhiKemu(j-1).Text=.TextArray(Fgi(0,j+1))
Next
Text5.Text=.TextArray(Fgi(0,10))
Text6.Text=.TextArray(Fgi(0,17))
EndSub
PrivateSubFrame2_DragDrop(SourceAsControl,XAsSingle,YAsSingle)
EndSub
PrivateSubText5_Change()
Text9.Text=Text5.Text
EndSub
PrivateSubtextDeKemu_Change(IndexAsInteger)
Text7.Text=textDeKemu
(2).Text
EndSub
PrivateSubTextTiKemu_Change(IndexAsInteger)
Text10.Text=TextTiKemu
(2).Text
EndSub
5.3.5.打开系统显示的界面
?
/P>
代码如下:
PrivateSubForm_Load()
Timer1.Interval=1000
EndSub
PrivateSubTimer1_Timer()
frmMain.Show
UnloadfrmSplash
EndSub
5.3.6.窗体的尺寸
?
/P>
PrivateSubForm_Load()
Me.Width=Screen.Width*0.75
Me.Height=Screen.Height*0.75
Me.Left=Screen.Width*0.125
Me.Top=Screen.Height*0.125
EndSub
结 论
本管理系统通过对信息的采集、存储、加工、维护和使用等,并随着管理科学和技术科学的发展而形成的。
学生成绩管理系统能为用户提供充足的信息,对学生来说可以轻松使用。
整个软件在开发过程中使用模块化程序设计方法,充分考虑了各种实际情况,通过这段时间的具体应用和不断完善,显