教务管理系统论文Word格式.docx
《教务管理系统论文Word格式.docx》由会员分享,可在线阅读,更多相关《教务管理系统论文Word格式.docx(39页珍藏版)》请在冰豆网上搜索。
在相应的权限下,删除数据方便简单,数据稳定性好;
数据计算自动完成,尽量减少人工干预;
1.1.2可行性分析
由于本系统治理的对象单一,差不多上在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是专门复杂。
因此,比较适合于采纳数据库治理。
且学校用于学生治理的微机差不多上PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。
在技术难度方面,由于有指导老师的指导和相关参考文献,特不是网上资料,特不是参考其它程序的功能,因此完全能够实现。
本系统的设计是在Windows98中文版操作系统环境下,使用VisualBasic6.0中文版开发成功的。
数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库治理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,本系统选用的数据库语言介绍如下:
VisualBasic语言
VisualBasic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。
它简单易学、效率高,且功能强大,能够与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。
在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,能够高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。
总的来讲,VisualBasic具有以下特点:
可视化编程:
用传统程序设计语言设计程序时,差不多上通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观看。
假如对界面的效果不中意,还要回到程序中修改。
有时候,这种编程-编译-修改的操作可能要反复多次,大大阻碍了软件开发效率。
VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。
只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。
VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而能够大大提高程序设计的效率。
面向对象的程序设计
4.0版以后的VisualBasic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C++)不完全相同。
在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;
而VisualBasic则是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象给予应有的属性,使对象成为实在的东西。
在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并封装起来。
每个对象以图形方式显示在界面上,差不多上可视的。
结构化程序设计语言
VisualBasic是在BASIC语言的基础上进展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。
VisualBasic语句简单易明白,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。
VisualBasic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机能够识不的机器指令,并推断每个语句的语法错误。
在设计VisualBasic程序的过程中,随时能够运行程序,而在整个程序设计好之后,能够编译生成可执行文件(.EXE),脱离VisualBasic环境,直接在Windows环境下运行。
事件驱动编程机制
VisualBasic通过事件来执行对象的操作。
一个对象可能会产生多个事件,每个事件都能够通过一段程序来响应。
例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击“(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。
在用VisualBasic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。
这些过程分不面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,如此能够方便编程人员,提高效率。
访问数据库
VisualBasic具有强大的数据库治理功能,利用数据控件和数据库治理窗口,能够直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。
同时,VisualBasic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都能够用VisualBasic编辑和处理。
VisualBasic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等。
在应用程序中,能够使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。
动态数据交换(DDE)
利用动态数据交换(DynamicDataExchange)技术,能够把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。
当原始数据变化时,能够自动更新链接的数据。
VisualBasic提供了动态数据交换的编程技术,能够在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信。
对象的链接与嵌入(OLE)
对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而能够得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。
OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。
利用OLE技术,能够方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。
动态链接库(DLL)
VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。
但它能够通过动态链接库技术将C/C++或汇编语言编写的程序加入到VisualBasic应用程序中,能够像调用内部函数一样调用其他语言编写的函数。
此外,通过动态链接库,还能够调用Windows应用程序接口(API)函数,实现SDK所具有的功能。
1.3系统的功能简介
本系统要紧能够实现以下的治理功能:
班级治理、学生档案治理、学生交费治理、课程治理、成绩治理等等。
1.3.1项目规划
学生信息治理系统是一个典型的数据库应用程序,由班级治理、学生档案治理、学生交费治理、课程治理、成绩治理等模块组成,特规划如下:
1.3.2系统治理模块(CTRL+O)
该模块的要紧任务是维护系统的正常运行和安全性设置,包括添加用户(快捷键:
CTRL+A)、修改密码(快捷键:
CTRL+B)、重新登录(快捷键:
CTRL+F1)等等。
1.3.3班级治理模块(CTRL+P):
该模块的功能是实现对全校班级的治理工作,包括:
班级巡游、班级添加、班级查询等,这三个功能模块各自独立,完成学校的全部班级的治理。
1.3.4学生档案治理模块(CTRL+T):
该模块的要紧功能是实现对学生的个人信息的治理工作,包括档案添加、档案扫瞄、档案查询等功能,从而方便学校治理部门对学校的差不多情况的快速查询和了解。
1.3.5课程治理模块(CTRL+R):
该模块对各个班级的课程进行设置,并可在其中设置各门课程的教材选用情况,方便了学校教材治理部门和教务处的教学治理人员的工作。
该模块包括差不多课程设计和班级课程设置两个模块。
1.3.6成绩治理模块(CTRL+F):
学校的成绩治理工作是检验学生学习情况的一个要紧手段,本模块包括考试类型设置,共有期中考试和期未考试两种类型,还设置了成绩添加、成绩巡游、成绩查询等功能模块。
1.4系统开发的目标
出于本系统是学校学生治理的一个综合性的系统,本系统的设计目标将最终定位于完成以上所述的系统要紧业务的差不多模型上。
2.系统分析
2.1业务流程分析
班级治理业务流程图:
档案治理业务流程图:
课程治理业务流程图:
成绩治理业务流程图:
2.2数据流程分析:
2.2.1数据流程图:
由于本系统的数据模块较多,下面仅以学生成绩治理模块为例来进行编制。
学生成绩治理系统0层数据流程图
学生成绩治理系统1层数据流程图
2.3数据存储分析:
实体联系图
1、数据模型设计。
首先来做出学生成绩治理系统的E-R图,分析那个问题的实体,从系统分析能够明白,学生的成绩是由任课教师按照课程给出的,学生、课程、教师组成了那个系统的三个实体。
2、再分析三个实体之间的联系。
首先,这三个实体不是一个统一体,学生成绩与教师没有内在联系,教师必须通过课程实体才能与学生建立联系,因而先不考虑。
课程与学生这两个实体是多对多联系;
一位学生要学习多门课程,一门课程有多位学生共同学习。
而学习成绩是这两个实体“学生”和“成绩”共有的属性,应填在二者的联系“学习”边。
因为成绩既不是学生独有的,也不是课程独有的;
“学生甲70分”或“英语70分”是不完全的,讲“学生甲英语70分”才是正确的,因为70分是学生甲和英语课二者共有的。
那个E-R图可画成下图。
学生成绩治理系统中学生与课程的E-R图
教师与课程这两个实体之间,是一对多联系;
一位教师能够都多门课程,而一门课程关于学生成绩来讲只能有一位教师(英语、高等数学有多位教师教,但对某个固定的学生来讲只能有一位教师)。
其E-R图,如下所示。
教师与课程的E-R图组合到一起,得到最后的E-R图,有了E-R图,就能够设计数据库。
下图为数据模型图。
2.4功能分析:
功能层次图
学生信息治理系统
登录
系统治理
班级治理
档案治理
打印报表
课程治理
成绩治理
差不多课程设置
学生缴费扫瞄
班级课程设置
学生缴费添加
差不多学费设置
学生缴费查询
修改密码
添加班级
档案扫瞄
添加用户
复新登录
班级扫瞄
班级查询
档案添加
档案查询
3.系统设计
3.1软件模块结构设计
3.1.1系统方案确定
通过对系统的调研与分析,系统要紧应完成的功能有:
班级治理、学生成绩治理、学生交费治理、课程治理、成绩治理、系统治理等功能。
3.1.2软件结构设计
本系统在执行时,先依照不同的操作人员的需要来进行相应的模块,然后能够输入数据或者进行其它的查询或扫瞄等操作;
总体来讲,本系统属于一个事务型治理系统。
3.2数据库设计
数据库采纳了Microsoft推出的Access数据库,这是微软集成到Office中的一个桌面数
据库,能够快速方便的和Office的其他套件综合使用。
由于Access具有显著的简易性和有效性,大量的桌面数据库系统都采纳Access作为后台数据库。
使用Access的好处还在于,假如你的系统扩展到Client/Server模式的时候,能够使用Microsoft的数据库服务器软件SQLServer,现在,程序只需要简单的修改一下链接(ADO的数据源)就能够,如此,为程序的平滑扩展提供了特不有力的条件。
3.2.1本系统中所涉及到的要紧实体共有九个数据表:
allkecheng表:
{课程名称,教材}
cj表:
{学号,学期,类型,课程名称,分数}
class表:
{年级,班级,教室,年制,专业,班主任,备注}
classkecheng表:
{年级,专业,年制,学期,课程名称}
jf表:
{学号,学期,交费,欠费,日期,操作员}
kaoshileixing表:
{类型}
use表:
{username,password,admin,readonly,qx1,qx2,qx3,qx4}
xj表:
{学号,姓名,性不,班级,出生年月,家庭住址,邮政编码,联系电话,入学时刻,备注}
suefei表:
{年级,专业,年制,学期,学费}
3.2.2各表的物理结构如下:
字段名称
类型
宽度
小数位
课程名称
文本
20
教材
30
Cj表:
学号
10
学期
50
16
分数
单精度型数字
自动
Class表:
年级
班级
教室
5
年制
8
专业
班主任
备注
Classkecheng表:
12
Jf表:
交费
货币
欠费
日期
日期/时刻
操作员
Kaosileixing表:
Use表:
username
password
Admin
2
Readonly
Qx1
Qx2
Qx3
Qx4
9
姓名
性不
出生年月
家庭住址
邮政编码
数字(长整型)
联系电话
入学时刻
xuefei表:
40
学费
4.系统的功能
本部分要紧内容为本系统的运行界面以及要紧界面的源代码。
4.1系统登陆界面:
本界面的要紧功能是为了对系统进行安全性治理,本系统的用户名和密码保存在USE表中,本系统依照不同的用户而设置了不同的权限,能够用909;
909为用户名和密码来登陆本系统。
PrivateSubCommand1_Click()
DimmrcAsADODB.Recordset
txtsql="
selectusernamefromusewhereusername='
"
&
Trim(Text1.Text)&
"
'
Setmrc=ExecuteSQL(txtsql)
Ifmrc.EOF=TrueThen
MsgBox"
用户名错误!
vbExclamation+vbOKOnly,"
警告"
Text1.SetFocus
Text1.SelStart=0
Text1.SelLength=Len(Text1.Text)
ExitSub
EndIf
username=mrc.Fields(0)
txtsql2="
selectusernamefromusewherepassword='
Trim(Text2.Text)&
Setmrc=ExecuteSQL(txtsql2)
密码错误!
Text2.SetFocus
Text2.SelStart=0
Text2.SelLength=Len(Text2.Text)
andpassword='
用户名称和密码不匹配!
MDIForm1.Show
frmcpass.Text1.Text=Text1.Text
UnloadMe
EndSub
PrivateSubCommand2_Click()
PrivateSubForm_Load()
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
IfKeyAscii=13Then
Text2.SetFo