管理信息系统课程设计学生的系统Word下载.docx
- 文档编号:20960441
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:16
- 大小:162.93KB
管理信息系统课程设计学生的系统Word下载.docx
《管理信息系统课程设计学生的系统Word下载.docx》由会员分享,可在线阅读,更多相关《管理信息系统课程设计学生的系统Word下载.docx(16页珍藏版)》请在冰豆网上搜索。
4.开发出可以运行的管理信息系统,通过上机运行检查.
5.设计说明书要求文档齐备,步骤全整,流程正确,说明详细,具有可操作性.
指导教师评语及成绩
成绩:
指导教师签字:
2012年6月12日
第1章系统分析
1。
1需求分析
学生信息管理系统是对学校学生管理工作进行处理的一个计算机系统。
信息管理是学校管理中最为繁琐的一项工作,因而有必要对此进行简化并用计算机管理来代替人工管理。
本学生信息管理系统模块是为了实现学校人力资源的优化和对学生信息管理的科学管理而设计的,通过运用本系统,可以更加有效的管理学生信息,其中包括学生的基本信息,信息并且具有信息的增加,查询,修改等功能。
1.2系统的可行性分析
1.技术可行性
本系统的开发环境是基于Windows2000的中文操作系统,采用面向对象的编程工具VisualBasic6.0(以下简称VB),后台数据库是SQLServer2000。
考虑到本系统属于小型数据库系统,并且不会有很大的数据量访问,笔者决定采取本地数据库访问和编程方法,以达到对数据库快速方便地访问。
VisualBasic6.0是专门为Microsoft的32位操作系统设计的,可用来建立32位的应用程序。
在Windows9X或WindowsNT环境下,用VisualBasic6。
0的编译器可以自动生成32位应用程序。
这样的应用程序在32位操作系统下运行,速度更快,更安全,并且更适合在多任务环境下运行。
VisualBasic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序.
2.经济可行性
本系统虽然需要有良好的整体规划,而且还需要专业人员进行系统的运行阶段的维护与管理,所以系统开发需要大量的先期投入,但是今后系统的使用会给用户带来很大的方便。
从提高工作效率而避免各种直接或间接的经济损失角度来看,软件实际能够起到的作用会远远大于投入的开发费用。
故从经济上是完全可行的。
总之,这个系统的经济效益远远大于开发成本。
3。
操作可行性
对于用户来说,合理方便的功能设计和快捷的操作,足可以满足各种用户的不同需求,同时也方便了管理员的内部管理.总之,这个系统的经济效益远远大于开发成本。
硬件上,满足要求的计算机的配置不用很高;
软件上,采用Windows系列操作系统,对管理员稍做培训即可掌握,操作上是可行的。
1.3业务流程图
1。
工作流程图:
图1.1系统工作流程图
2。
系统业务流程图:
系统业务流程图业务流程图是系统分析和描述系统的重要工具,是业务流程调查结果的图形化表示,它反映了系统各机构的业务处理过程和它们之间的业务分工与联系,以及连接各机构的物流、信息流的传递和流通的关系。
图1。
2系统业务流程图
4数据流图
画数据流图的基本目的是利用它作为交流信息的工具。
分析员把他对现有系统的认识或对目标系统的设想用数据流图描绘出来,供有关人员审查确认。
由于在数据流图中通常仅仅使用四种基本符号,而且不包括任何有关物理实现的细节,因此,绝大多数用户都可以理解和评价它。
数据流图如图1.3所示:
图1。
3数据流图
5数据字典
数据字典是关于数据信息的集合,也就是对数据流图中包含的所有元素定义的集合。
任何字典最主要的用途都是供人查阅不了解的条目的解释,数据字典的作用也正是在软件分析和设计过程中给人提供关于数据的描述信息.数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。
只有数据流图和对数据流图精确的定义放在一起,才能共同构成系统的规格说明。
由于元素太多我们只对其中主要的元素定义说明。
数据字典的主要用途是作为分子阶段的主要工具。
在数据字典中建立一组严密一致的定义很有助于改进分析员和客户之间的通信,因此将消除很多可能的误解。
数据字典包含的每个数据元素的控制信息是很有价值的.因为列出了使用一个给定的数据元素所有程序,很容易估计改变一个元素将产生的影响,并且能对所有受影响的程序或模块做出相应改变。
数据库数据字典不仅是每个数据库的中心。
而且对每个用户也是非常重要的信息。
用户可以用SQL语句访问数据库数据字典.
由于暂时还没有自动的数据字典处理程序,我们采用卡片形式书写数据字典,每张卡片上保存描述一个数据元素的信息。
这种做法较好的实现了上述要求,特别是更新修改起来很方便,能够单独处理每个数据元素的信息。
每张卡片上包含的信息有:
以下是数据流图中主要元素的数据字典卡片:
表1。
1年级管理信息
数据结构名称:
年级管理信息
别名:
含义说明:
管理年级的添加,查询,删除的信息
数据结构组成:
年级编号+年级名称
位置:
基本信息设置
表1.2班级管理信息
班级管理信息
管理班级的添加,查询,删除的信息
数据项的组成:
年级+班级+教室+年制+专业+班主任+备注
表1.3课程管理信息
课程管理信息
存储用户的基本课程设置以及班级课程设置的信息。
年级编号+班级编号+学期+课程名称
成绩管理信息
负责成绩的添加,浏览等信息。
学号+学期+类型+课程名称+分数
表1。
4成绩管理信息
第2章系统设计
1程序设计
1.概要设计:
学生信息管理分为年级信息管理,学籍信息管理,班级信息管理,成绩信息管理,课程信息管理,查询管理.总体设计功能图如下:
图2。
1整体功能模块图
详细设计:
详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,得出系统的精确描述,直接翻译成用某种程序设计语言书写的程序。
举例说明该系统登录窗体的实现.系统首先进入登陆界面,输入正确的用户名和密码后,正常登陆系统界面,如图所示:
图2.2系统登陆界面图
“确定"
按钮的Click事件代码:
PrivateSubCommand1_Click()
DimmrcAsADODB.Recordset
txtsql="
selectusernamefromuserinfowhereusername='
"
&Trim(Text1。
Text)&"
’”
Setmrc=ExecuteSQL(txtsql)
Ifmrc.EOF=TrueThen
MsgBox”用户名错误!
”,vbExclamation+vbOKOnly,"
警告”
Text1。
SetFocus
SelStart=0
Text1.SelLength=Len(Text1。
Text)
ExitSub
EndIf
username=mrc。
Fields(0)
txtsql=”selectusernamefromuserinfowherepassword=’”&Trim(Text2。
Text)&
"
'
”
Ifmrc。
EOF=TrueThen
MsgBox”密码错误!
vbExclamation+vbOKOnly,”警告”
Text2。
Text2.SelStart=0
Text2.SelLength=Len(Text2。
MDIForm1。
Show
EndSub
2数据库设计
概念设计
在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式.然后再把概念模式转换成逻辑模式。
将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。
利用E—R方法进行数据库的概念设计,可分成三步进行:
首先设计局部E-R模式,然后把各局部E-R模式综合成一个全局模式,最后对全局E-R模式进行优化,得到最终的模式,即概念模式.E—R模型中包括“实体”、“联系”和“属性"
等三个基本成分,下面分别介绍这三个基本成分。
实体:
实体是客观世界中存在的且可相互区分的事物。
实体可以是人也可以是物,可以是具体事物,也可以是抽象概念.例如,学生、课程、老师等都是实体。
联系:
客观世界中的事物彼此间往往是有联系的。
例如,教师与课程间存在“教"
这种联系,而学生与课程间则存在“学”这种联系.联系可分为三种,分别是一对一联系、一对多联系和多对多联系。
属性:
属性是实体或联系所具有的性质,通常一个实体有若干个实体属性来刻画.联系也可能有属性。
E-R模型的“联系"
用于刻画实体之间的关联。
一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。
若有联系,进一步确定是1:
N,M:
N,还是1:
1等.还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,等等。
班级信息表的E—R图包括如下信息:
班号、年级编号、年级名称、班主任编号等.
图2。
3班级E-R图
课程信息的E-R图包括如下信息:
课程编号、课程名称、课程类型、课程描述。
图2.4课程E-R图
成绩信息表的E—R图包括如下信息:
考试编号、学生学号、课程编号、分数。
图2.5成绩E-R图
总体E-R图包括:
学校信息表、学院信息表、教师信息表、学生信息表、课程信息表和成绩表。
5整体E-R图
6总体E-R图
2.逻辑设计
概念设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS支持,为了能够建立起最终的物理系统,我们还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户字模式。
数据库逻辑结构的设计分为两个步骤:
1、将概念设计所得的E—R图转换为关系模型。
2、对关系模型进行优化.
按照关系模型转换的原则和规范化理论的原则,将概念设计所得的E—R图转换为关系模型.
学生(学号,姓名,性别,班级,出生年月,家庭住址,邮政编码,联系电话,入学时间)
在学生的关系模式中,学号为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,用户的名字为这个关系模式的决定因素,而它本身又是关系模式的码。
所以,此关系模式属于BC范式。
班级(班级名称,年级,教室,年制,专业,班主任,备注)
在班级信息的关系模式中,班级名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,班级名称为这个关系模式的决定因素,而它本身又是关系模式的码.因此,此关系模式属于BC范式。
根据规范化理论的要求,一般数据库设计要达到第三范式,而BCNF是对第三范式的修正,比第三范式要求更加严格,能够保证数据库设计的科学性。
课程管理(课程的名称,年级,专业,学期,年制,备注)
在课程管理的关系模式中,课程的名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,课程的名称为这个关系模式的决定因素,而它本身又是关系模式的码。
同样,此关系模式也属于BC范式。
3.物理设计
在数据库中创建索引时,查询所使用的索引信息存储在索引页中.连续索引页由从一个页到下一个页的指针链接在一起。
当对数据的更改影响到索引时,索引中的信息可能会在数据库中分散开来。
重建索引可以重新组织索引数据(对于聚集索引还包括表数据)的存储,清除碎片。
这可通过减少获得请求数据所需的页读取数来提高磁盘性能。
在SQLServer2000中,如果要用一个步骤重新创建索引,而不想删除旧索引并重新创建同一索引,则使用CREATEINDEX语句的DROP_EXISTING子句可以提高效率。
这一优点既适用于聚集索引也适用于非聚集索引。
以删除旧索引然后重新创建同一索引的方式重建聚集索引,是一种昂贵的方法,因为所有二级索引都使用聚集键指向数据行。
如果只是删除聚集索引然后重新创建,则会使所有非聚集索引都被删除和重新创建两次。
一旦删除聚集索引并再次重建该索引,就会发生这种情形。
通过在一个步骤中重新创建索引,可以避免这一昂贵的做法。
在一个步骤中重新创建索引时,会告诉SQLServer要重新组织现有索引,避免了删除和重新创建非聚集索引这些不必要的工作。
该方法的另一个重要优点是可以使用现有索引。
第3章系统实施
1程序实现
程序实现主要是代码在编译器中运行得到的结果,管理员输入学号,考试编号或班号通过与数据库进行连接进行成绩的查询.实现具体功能窗口如图所示:
图3。
1成绩信息查询窗体图
成绩信息查询窗体代码如下:
PrivateSubForm_Load()
SetResultQuery=NewOpenRs
ResultGrid.FormatString=”|学号|姓名|班号|课程编号|课程名称|考试编号|分数"
ResultQuery.rsDK1"
selects。
student_id,student_name,class_no,c.course_no,course_name,exam_no,resultfromresult_inforinnerjoinstudent_infosonr。
student_id=s。
student_idinnerjoincourse_infoconr。
course_no=c。
course_no"
IfResultQuery。
rs1。
EOFThen
ResultGrid.Clear
ResultGrid.FormatString=”|学号|姓名|班号|课程编号|课程名称|考试编号|分数”
Else
SetResultGrid.DataSource=ResultQuery。
rs1
ResultGrid。
FormatString=”|学号|姓名|班号|课程编号|课程名称|考试编号|分数"
EndIf
ResultQuery。
rsDK1"
select*fromclass_info"
WhileNotResultQuery。
EOF
cboClassNo.AddItemResultQuery。
rs1!
Class_no
ResultQuery.rs1。
MoveNext
Wend
rsDK1”selectdistinctcourse_namefromcourse_info"
WhileNotResultQuery.rs1.EOF
cboCourseName。
AddItemResultQuery.rs1!
course_name
ResultQuery。
rs1.MoveNext
EndSub
前台VB与后台SQL数据库的类初始化连接代码如下:
PrivateSubClass_Initialize()
OnErrorGoToDbnotOpen
SetcnSIMS=NewADODB。
Connection
WithcnSIMS
。
Provider=conProvide
.ConnectionString=conString
.ConnectionTimeout=10
.Open
Setrst=NewADODB。
Recordset
EndWith
DbnotOpen:
IfErr=-2147467259Then
SetcnSIMS=Nothing
MsgBox”连接后台数据库失败!
”&vbCrLf&
vbCrLf&
请检查配置是否完好,数据库Sims_four是否存在?
”,vbOKOnly+vbInformation,"
学生信息管理系统"
End
2数据库实现
数据库实现通过数据字段、关系图、存储过程和触发器实现等各部分的功能实现的。
1.数据字段:
通过班级信息表,课程信息表,成绩表可以清楚的了解班级的班号、年级编号、班主任编号、课程名称、课程类型、考试分数等信息。
表3.1班级信息表
序号
TableName(表名)
FieldName(字段)
FieldType(字段类型)
IsPrimaryKey1为主键
1
class_Info
class_No
[char](3)NOTNULL
1
2
grade_No
[char](10)NULL
0
3
user_id
[varchar](10)NULL
表3.2课程信息表
course_info
course_No
[int]NOTNULL
course_Name
[varchar](30)NULL
course_type
[char](20)NULL
4
course_des
[varchar](60)NULL
表3.3成绩信息表
1
gradecourse_info
[char](8)NULL
2
[int]NULL
2.关系图:
以关系型为目标将E-R实体图中概念模型映射为关系模型,如图所示:
图3.2系统关系图
3.存储过程程序及其功能:
存储过程myon作用:
将VB从客户端得到的值通过输入参数传递到存储过程,再通过存储过程将数据写入要修改的表中
Createproceduremyonstudent
(@student_namechar(50)
@student_idchar(8),
@addresschar(200),
@tele_numberint(8),
@minzuchar(20),
@departmentchar(50),
@student_genderbit
(1),
@birth_datedatetime(8))
AS
Insertinto学生基本信息(student_id,student_name,gender,birth_date)values(@student_id,@student_name,@gender,@birth_date)
Insertinto学生更多信息(minzu,birth_date,department)values(@minzu,@birth_date,@department)GO
4。
触发器程序及其功能:
触发器,对于“学生基本信息”表中的插入操作进行计数,从而动态统计学生的人数。
CREATE
TRIGGER
[tr_1]
ON
student
after
INSERT
AS
update
学新人数
set
人数
=
人数+1
Go
当每进行完一次插入操作后,触发器更新人数信息,使其自加一
[tr_2]
student
delete
AS
set
人数-1
当每进行完一次删除操作后,触发器更新人数信息,使其自减一。
程序通过读取表“学生人数“中的数据来得到当前本系统所管理的学生数。
第4章课设总结
本次设计的学生信息管理系统具有界面简洁,容易操作等特点,能够直观明了地通过几项简单的操作实现对于学生信息的各种修改与操作,适合于要求不太复杂的管理模块。
在vb的后台程序中,用到模块的设计,从而解决了对于每一个对象需要不断地重复链接数据库,造成数据库的频繁访问.索引,存储过程和触发器的运用,充分利用到数据库。
在合理的设备条件下,运用VB6.0为前台工具,采用VB语言,以SQLServer2000作为后台数据库,在WindowsXP环境下编写并测试运行了学生信息管理系统。
通过对输入班级编号实现对班级信息的查询,输入课程编号实现对课程信息的查询,输入学号实现对该学生的各科成绩的查询,更深的了解了与掌握了SQLServer2000技术应用,掌握简单的数据库应用程序设计方法和编写方法。
通过本次课程设计,使我对VB的编程与SQL数据库的的掌握和理解,巩固了我在SQLServer课程中所学的基本理论知识和实验技能,使我对SQLServer课程有了更深入的了解,使我认识到数据库的强大功能与在我们的信息管理中所处的不可替代的作用,进一步激发了我对软件工程专业学习的兴趣;
提高了我的实际动手编程能力。
也使我对于vb的编程有了新的理解,通过它与数据库的连接是我从理论的背后认识到了实际的应用与操作.
在设计的过程和设计说明书的撰写过程中,出现了许多问题,经过研究
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 管理信息系统 课程设计 学生 系统