学生学籍管理信息系统的设计与实现分析.docx

上传人:b****6 文档编号:7484666 上传时间:2023-01-24 格式:DOCX 页数:35 大小:289.73KB
下载 相关 举报
学生学籍管理信息系统的设计与实现分析.docx_第1页
第1页 / 共35页
学生学籍管理信息系统的设计与实现分析.docx_第2页
第2页 / 共35页
学生学籍管理信息系统的设计与实现分析.docx_第3页
第3页 / 共35页
学生学籍管理信息系统的设计与实现分析.docx_第4页
第4页 / 共35页
学生学籍管理信息系统的设计与实现分析.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

学生学籍管理信息系统的设计与实现分析.docx

《学生学籍管理信息系统的设计与实现分析.docx》由会员分享,可在线阅读,更多相关《学生学籍管理信息系统的设计与实现分析.docx(35页珍藏版)》请在冰豆网上搜索。

学生学籍管理信息系统的设计与实现分析.docx

学生学籍管理信息系统的设计与实现分析

 

《数据库系统原理及应用》课程设计

题目:

学生学籍管理信息系统的设计与实现

 

院系:

基础与信息工程学院

专业:

计算机科学与技术

姓名:

年级:

指导教师:

摘要

随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。

管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统,面对大量的学生数据、报表,手工处理方式已经很难跟上现代化的步伐,随着计算机技术及网络通讯技术的飞速发展,许多学校已经有了较好的计算机应用甚至网络硬件基础建设。

因此为提高学校管理工作的现代化、科学化水平,保证信息处理的即时化、准确化,开发一套对学生学籍进行管理的软件是极其重要的。

本文介绍了在MicrosoftVisualBasic和MicrosoftSQLServer环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。

通过分析访客管理的不足,创建了一套行之有效的计算机管理学生的方案。

文章介绍了访客管理信息系统的系统分析部分,包括可行性分析、业务流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计。

 

关键词:

SQLServer、VisualBasic

1设计内容和要求

1.1设计背景

随着我国教育体制改革的深入进行,教育系统得到了前所未有的发展。

学生管理正在逐步迈向管理信息现代化。

但是我国的学生管理信息化水平还处在初级阶段,主要表现在对学生的交费管理、学生的档案管理还是采用原有的人工管理方式。

学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。

由于大学生类别和专业的设置的多样化,大学生的学籍管理历来是非常繁琐和复杂的的工作。

面对庞大的信息量,这时的人工管理几乎无法实现,在这种情况下用数据库进行管理变的尤为必要,这可以发挥计算机的优势,就需要有学生信息管理系统来提高学生管理工作的效率.通过这样的系统,可以做到信息的规范管理,科学统计和快速的查询,从而减少管理方面的工作量和减少人为的错误。

1.2开发环境

本学生学籍管理系统(数据库系统)的开发与运行环境如下:

开发环境:

WindowsXP

辅助工具:

MicrosoftVisualBasic6.0中文版

数据库管理系统:

SQLServer

运行环境:

Windows2000/XP/2003

1.3内容和要求

1.3.1系统目标设计

(1)使得学生的学籍管理工作更加清晰、条理化、自动化。

(2)很容易地完成新生信息的输入、老生信息的备份、毕业学生的信息可以很容易地保存。

(3)当学生需要查询成绩时,可以很简单地将其需要的信息从数据库中查找出来并可以打印查询结果。

(4)随着当今网络技术的发展,提供网络在线查询功能,可以为毕业生提供更多的就业机会。

 

1.4编写目的

学生信息管理系统的开发更方便了老师对学生的查询管理,对学生的基本情况进行了解,再次添加了对学生的考试情况分数的管理,这样更好的让老师对学生的每次考试成绩进行了解比较,了解该学生的近期学习情况。

同时在有权限的老师登录以后可以轻松的查询到要找的学生的具体班级.年所在年级和他们的学号,因此而开发此系统是为了老师更好的管理。

1.5项目背景

a.所建议开发软件的名称:

学生学籍管理系统(studentinformationmanagementsystem)

b.项目的任务提出者:

学校.

c.开发者:

赵鹏、赵丹、李福灿。

d.用户:

学校、学生

e.实现软件的单位:

计算机基础与信息工程学院。

f.项目与其他软件或其他系统的关系:

Studentinformationmanagementsystem是一功能比较完善的数据管理软件,具有数据操作方便高效迅速等优点。

该软件采用功能强大的数据库软件开发工具SQLServer进行开发,具有很好的可移植性,可在应用范围较广的WINDOWS系列操作系统上使用。

在学籍管理中,需要从大量的日常教学活动中提取相关信息,以反映教学情况。

传统的手工操作方式,易发生数据丢失,统计错误,劳动强度高,且速度慢。

使用计算机可以高速,快捷地完成以上工作。

在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范教学管理行为,从而提高了管理效率和水平。

学籍管理信息系统以计算机为工具,通过对学生信息管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。

 

2需求分析

2.1需求规定

该系统面向的用户有:

学校的管理人员,普通用户。

不同的用户可以根据自己的权限对系统数据进行相关操作,比如浏览和修改,系统预先定义好各种用户的权限。

加入网络模块以后,所有操作都可以通过网络进行。

系统要能够抵制来自于网络的非法访问甚至攻击。

2.2系统功能要求

(1)学生学籍的录入

可以在开学的时候利用某些电子装置批量录入,以节约人员加快速度;当在学期中需要增加或减少学籍记录时,可由系统管理员在得到学校相关人员的同意后单独进行操作,要保留操作记录。

       

(2)学生学籍的修改

在得到学校相关人员的同意后,由系统管理员修改记录,系统本身要记录该事件并保存原始数据。

       (3)学生学籍的删除

       在得到学校相关人员的同意后,由系统管理员删除记录,系统本身要记录该事件并保存原始数据。

       (4)学生学籍的查询

用户凭用户名和对应的密码登陆系统,然后可以根据其权限查看对应的相关信息,密码由专门的部门负责,系统对每次用户操作的数据应该在一定的时间段内保留。

       

系统可以方便的进行对学生的基本信息进行添加.修改.以及查询。

帮助学生对学生的考试情况进行更好的管理和了解。

方便了学生对学生的查询管理,更快的知道要查询学生在校的具体班级.学号.姓名.专业等信息情况。

现在采用手工的方式已经无法管理成千上万的学生的学籍信息,好在我们有计算机系统,它可以代替我们完成这项复杂而又枯燥的工作,而且可以保证极好的效率和正确性,这是手工作业所无法比及的。

目前,我国这方面的应用还处于起步阶段,大部分学校还在用纸质材料,这无疑是一种巨大的浪费。

因此,这个系统的广泛应用将会带来巨大的利益,同时,将提高管理的人员的工作效率和质量。

普通人只要学习操作说明,就会使用这个系统。

2.2.1功能要求:

系统管理:

添加用户,删除用户,修改密码,重新登录。

学籍管理:

档案浏览,档案添加,档案删除,档案查询,档案修改。

课程管理:

课程设置,选课设置。

2.3学生学籍管理信息系统特点

(1)采用Windows的操作界面,简单易用,用户可以在使用的同时获得实时帮助。

(2)采用数据库和程序分开设计的方式,他们之间通过驱动程序连接,以使系统达到较高的可靠性和扩展性。

(3)如果有需要,可以给系统加上一个网络模块,用户可以远程登陆,然后根据其拥有的权限执行相应的功能,比如浏览信息或修改信息。

2·4用户平台要求

系统主要使用于高校的局域网,Win98、Win2000、WinNT等环境下,Vb连接数据库,本系统需要DBMS放入学生学籍数据库。

可进行查询,修改、处理等。

3业务逻辑和数据流图

3·1数据流图

添加用户

删除用户当前输入

修改密码

重新登录学生信息

0层数据流图

查询要求

有效的管理要求

有效的查询要求

学籍管理要求

学生情况

无效输入

当前输入

1层数据流图

管理要求

 

 

3.1查询类型处理

3.2学生信息查询

3.3统计处理

学生情况

查询学生情况

数据文件

查询要求

学生情况

统计表

2层数据流图

学生学籍管理系统E-R图

4.数据调查及分析

4·1原始数据

编写说明:

本节描述原始数据调查的结果,列出数据清单。

原始数据的描述:

数据名称:

学生学籍管理信息系统

简述:

系统中随时可以查询。

来源:

每学期考试完毕由各系录入成绩,然后由教务科收集

去处:

学生,老师

组成:

存储学生信息的档案,学生的课程设置等,用于存放学生在校期间的有关信息。

 

登录

成功

选择操作

开始

用户管理

学籍管理

班级管理

退出系统

添加

修改

查询

结束

N

Y

4.2数据字典

4.2.1数据项

数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,数据字典是对系统所用到的所有表结构的描述,学籍管理的主要数据见下表。

专业信息表

学期信息表

学生信息表

 

学生成绩

 

班级课程

 

课程设计

5概念结构设计

概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成独立于具体DBMS的概念模型。

5.1数据流图

数据流图表达了数据和处理的关系,根据用户的需求分析和高校学籍管理系统的需求,得出如下图1-1所示的学籍管理数据流图。

学生信息管理系统

学籍管理功能

课程管理功能

成绩管理功能

学籍添加

学籍修改

学籍查询

课程添加

课程修改

课程查询

成绩添加

成绩修改

成绩查询

系统的功能模块设计图如图所示

5.2系统E-R图

对于学生信息管理,我们可以将学生实体抽象出来,学生属于学院可以将学院作为一个实体,学生所属专业和毕业信息都将可以作为一个实体。

学生实体E-R图

 

专业实体E-R图

在学生信息管理中存在这样的关系:

选择(一个学生只能选择一个专业,而一个专业可以供多个学生选择,故是多对一的关系)、学习(一个学生只能在一个院系学习,而一个院系可以供多个学生学习,故是多对一的关系)。

 

学生关系E-R图

老师关系E-R图

对于学生学籍管理信息管理,我们可以将课程实体抽象出来。

课程实体E-R图

在信息管理中存在这样的关系:

毕业(一个学生拥有一个毕业信息,而一个毕业信息只属于一个学生,故是一对一的关系)、选修(一个学生可以选修多门课程,而一门课程可以被多个学生选修,故是多对多的关系)、开设(一个专业可以开设多门课程,而一门课程可以被多个专业选择,故是多对多的关系)、授课(一门课程可以被多个老师讲授,而一个老师可以讲授多门课程,故是多对多的关系)。

选修管理关系E-R图

以上是本系统中的基本的实体和关系,本系统是将其分步找出来加以描述。

5.3ado的链接技术

代码的实现:

PublictxtsqlAsString

PublicusernameAsString

PublicqxstrAsString

PublicqxstraAsString

'执行相应的SQL命令

PublicFunctionExecuteSQL(ByValsqlAsString)AsADODB.Recordset

DimmyconAsADODB.Connection

DimrstAsADODB.Recordset

Setmycon=NewADODB.Connection

mycon.ConnectionString=connstring

mycon.Open

Dimstokens()AsString

OnErrorGoToexectuesql_error

stokens=Split(sql)

IfInStr("INSERT,DELETE,UPDATE",UCase(stokens(0)))Then

mycon.Executesql

Else

Setrst=NewADODB.Recordset

rst.OpenTrim(sql),mycon,adOpenKeyset,adLockOptimistic

SetExecuteSQL=rst

EndIf

exectuesql_exit:

Setrst=Nothing

Setmycon=Nothing

ExitFunction

exectuesql_error:

Resumeexectuesql_exit

EndFunction

'连接字符串,用户可以根据自己的数据库进行修改相应参数

PublicFunctionconnstring()AsString

connstring="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UID=sa;PWD=;InitialCatalog=StuMIS;DataSource=(local)"

EndFunction

'检查用户的权限

PublicFunctionExecuteqx(ByValtxtAsString)AsString

DimsqlAsString

DimmyconAsADODB.Connection

DimrstAsADODB.Recordset

Setmycon=NewADODB.Connection

mycon.ConnectionString=connstring

mycon.Open

Setrst=NewADODB.Recordset

sql="select标识from用户where用户名='"&username&"'"

rst.OpenTrim(sql),mycon,adOpenKeyset,adLockOptimistic

Ifrst.EOF=TrueThen

MsgBox"非法用户!

",vbExclamation+vbOKOnly,"警告"

Executeqx="nothing"

ExitFunction

EndIf

Ifrst.Fields(0)="1"Then

Executeqx="admin"

ExitFunction

EndIf

Ifrst.Fields(0)="0"Then

Executeqx="readonly"

ExitFunction

EndIf

OnErrorGoToexectuesql_error

exectuesql_exit:

Setrst=Nothing

Setmycon=Nothing

ExitFunction

exectuesql_error:

Resumeexectuesql_exit

EndFunction

5.4概念模型

概念模型是在对用户需求分析之后,通过画出本系统抽象出的E-R图,由概念模型辅助工具VisualBasic进行设计,通过具体地设置和绘图,最后就形成了如下所示的概念模型图,生成的概念结构就能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个真实模型。

6逻辑结构设计

逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。

设计逻辑结构一般分为3步进行:

(1)将概念结构转换为一般的关系、网状、层次模型;

(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;

(3)对数据模型进行优化。

6.1关系模型

将E-R图转换为关系模型实际上就是要奖实体型、实体的属性和实体型之间的联系转换为关系模式,这种转换一般遵循如下原则:

一个实体型转换为一个关系模式。

实体的属性就是关系的属性,实体的码就是关系的码。

对于实体型间的联系则有以下不同的情况:

(1)一个1:

1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

如果转换为一个独立的关系模式,则与该联系相连的个实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的侯选码。

如果与某一端实体对应的关系模式合并,则需要在关系模式的属性中加入另一个关系模式的码和联系本身的属性。

(2)一个1:

n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。

如果转换为一个独立的关系模式,则与该联系相连的个各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

(3)一个m:

n联系转换为一个关系模式。

与该联系相连的个实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。

(4)3个或3个以上实体间的一个多元联系可以转换为一个关系模式。

与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。

(5)具有相同码的关系模式可合并。

将概念结构设计阶段设计好的基本E-R图转换为关系模型,如下所示:

⏹学生(学号,专业号,院系号,姓名,性别,出生日期,入学时间,政治面貌,家庭住址,籍贯,邮政编码,民族),此为学生实体对应的关系模式。

⏹课程(课程号,课程名,学分),此为课程实体对应的关系模式。

⏹开设(专业号,课程号),此为专业开设课程关系对应的关系模式。

7物理结构设计与功能实现

7.1物理结构设计

数据库的物理设计就是为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程。

物理结构设计阶段实现的是数据库系统的内模式,它的质量直接决定了整个系统的性能。

因此在确定数据库的存储结构和存取方法之前,对数据库系统所支持的事务要进行仔细分析,获得优化数据库物理设计的参数

数据库的物理设计通常分为两步:

(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存取结构;

(2)对物理结构进行评价,评价的重点是时间和空间效率。

7.1.1确定数据库的存储结构

由于本系统的数据库建立不是很大,所以数据存储采用的是一个磁盘的一个分区。

7.1.2存取方法和优化方法

存取方法是快速存取数据库中数据的技术。

数据库管理系统一般都是提供多种存取方法。

常用的存取方法有三类。

第一类是索引方法,目前主要是B+树索引方法;第二类是聚簇方法;第三类是HASH方法。

数据库的索引类似书的目录。

在书中,目录允许用户不必浏览全书就能迅速地找到所需要的位置。

在数据库中,索引也允许应用程序迅速找到表中的数据,而不必扫描整个数据库。

在书中,目录就是内容和相应页号的清单。

在数据库中,索引就是表中数据和相应存储位置的列表。

使用索引可以大大减少数据的查询时间。

但需要注意的是索引虽然能加速查询的速度,但是为数据库中的每张表都设置大量的索引并不是一个明智的做法。

这是因为增加索引也有其不利的一面:

首先,每个索引都将占用一定的存储空间,如果建立聚簇索引(会改变数据物理存储位置的一种索引),占用需要的空间就会更大;其次,当对表中的数据进行增加、删除和修改的时候,索引也要动态地维护,这样就降低了数据的更新速度。

7.2功能实现

完成数据库的物理设计之后,设计人员就要用RDBMS提供的数据定义语言和其他实用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,再经过调试产生目标模式。

然后就可以组织数据入库,最后就在此基础上编写各个表相关的触发器和存储过程。

7.2.1触发器

触发器是用户定义在关系表上的一类由事件驱动的特殊过程。

一旦定义,任何用户对表的增、删、改操作均由服务器自动激活相应的触发器,在DBMS核心层进行集中的完整性控制。

由于本系统的触发器比较多,在这里我只写出了其中的一部分触发器。

 

主窗体

 

代码实现:

PrivateSubbjcx_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

班级查询.Show

EndSub

PrivateSubbjkcsz_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

课程设置.Show

EndSub

PrivateSubbjll_Click(IndexAsInteger)

班级浏览.Show

EndSub

PrivateSubbjsc_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

班级删除.Show

EndSub

PrivateSubbjtj_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

班级添加.Show

EndSub

PrivateSubcjll_Click(IndexAsInteger)

成绩浏览.Show

EndSub

PrivateSubcjsc_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

成绩删除.Show

EndSub

PrivateSubcjtj_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

成绩添加.Show

EndSub

PrivateSubcjxg_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

成绩修改.Show

EndSub

PrivateSubcxdl_Click(IndexAsInteger)

登录窗口.Show

UnloadMe

EndSub

PrivateSubdacx_Click(IndexAsInteger)

Ifqxstra="0"Then

MsgBox"你没有权限进行操作!

",vbExclamation+vbOKOnly,"警告"

ExitSub

EndIf

档案查询.Show

EndSub

PrivateSubdall_Click(IndexAsInteger)

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

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1