学生成绩管理系统ER图+流程图+组织结构图-课程设计学生成绩管理系统分析与设计
一、系统概述
1.1、现状分析
目前在中小学中,学生的成绩管理主要以班级为单位,由各班班主任以表格的形
式直接输入电脑中,故就整个学校而言对于学生成绩的管理较为分散,涉及的人
员较多且不利于相关的统计工作,学生的成绩信息也得不到长久的保存。现行系统业务流程图如下:1.2、系统目标
总体目标:实现学校对所有班级、学生的成绩信息进行系统的管理,便于操作,
便于查询。
具体目标:1、管理员能够方便地对信息进行添加、编辑、删除、查询等操作。
2、教务人员可以方便地查询所需的成绩信息,并得到相应的统计报
表。
3、简化现有系统的流程,使之更加便捷、高效。 1.3、系统开发方法
客户端采用Visual http://www.77cn.com.cn,后台采用SQL server 2000。 1.4、开发计划
1、初步调查:以询问、查询资料的形式,对学校现行的学生成绩管理方式进行
调查,确定现行方式所存在的问题以及相关需求并进行分析。 2、可行性分析:根据初步调查的情况,从技术上、经济上、管理上进行开发的
可能性和必要性分析。
3、详细调查:详细了解情况并绘制组织结构图和业务流程图。
4、系统的设计:根据对所调查情况的分析,进行系统的各种设计。二、系统分析
2.1、系统需求分析
功能需求简述:
为了掌握学生的各门课程的成绩情况,将信息保存在一个本地的数据库中,并通
过一定的统计功能,实现对全部学生成绩的统计分析,满足教务人员对成绩信息
的管理和查询需求,提供一个电子化的成绩管理平台。系统目标:
对于本系统,我们需要实现以下一些基本功能:
1、掌握每位学生每一门课程的成绩信息,并记录在数据库中。
2、可以按不同的方式对成绩进行管理
(1)、按课程,对学习每门课程的每位学生进行添加、删除和修改。(2)、按学生,对每位学生学习的每门课程的成绩进行添加、删除和修改。 3、可以针对不同的需求,提供相关的报表打印功能。 2.2、业务流程分析
2.3、数据流程分析
第一层数据流程图:信息数据库成绩单
相关信息
第二层数据流程图:
信息数据库
成绩单
学生信息2.5、系统测试计划 1、硬件测试:检测计算机是否提供了相应的配置。
2、网络测试:若是单机环境,不需要检测网络;若是在局域网或在广局域网运
行,需测试网络设备,然后与硬件、软件等一起进行系统测试:网络设备的外观
检查、硬件测试、网络连同测试。 3、软件测试:
(1)、单元测试:对源程序中的每一个程序清单进行测试,验证每个模块是否
满足系统设计说明书的要求。(2)、组装测试:将已测试过的模块组合成子系统,重点测试各模块之间的接
口和联系。
(3)、确认测试:对整个软件进行验收,根据系统说明书来考察软件是否满足
要求。
(4)、系统测试:将软件、硬件、网络等系统各个部分连接起来,对整个系统
进行总的功能、性能等方面的测试。三、系统设计
3.1、模块结构设计
(1)组织结构图
学生成绩管理系统分析与设计的组织结构图:
系统名称:学生成绩管理系统
3.2、代码设计
1、代码设计原则:
在数据库中的关键字数据元素通常其代码都有特定含义,必要时还带有校验码。
例如成绩表中学号编码,由8个字符组成,前四个字符表示入学年份,后四个是按顺序递增的流水号。
2、校验码计算公式:
对每一个带有校验码的关键字代码,都要有一张代码设计说明书,校验码计算公
式可以相通,也可以不同。 3.3、数据库设计
1、数据库总体结构
本系统采用关系型数据库模式,因此数据库由若干个二维表(数据文件)组成,
每个数据文件均设计成第三范式。表名用含有实际意义的大写拼音首字母表示,
如学生成绩表:chengji
2、数据库结构
每一个数据文件均有一张定义表:成绩表(chengji)
字段名字段说明类型字段大小 xuehao 学号文本 8
xingming 姓名文本 10
kemubianhao 科目编号文本 4 kemufenshu 科目分数文本 3 banjimingcheng 班级名称文本 20 ID ID号自动编号长整型学生表(xuesheng)
字段名字段说明类型字段大小 xuehao 学号文本 8
xingming 姓名文本 10
xingbie 性别文本 2
banji 班级文本 20
nianling 年龄文本 2
dianhua 电话文本 18
zhuzhi 住址文本 40
班级表(banji)
字段名字段说明类型字段大小 banjibianhao 班级编号文本 6 banjimingcheng 班级名称文本 20 科目表(kemu)
字段名字段说明类型字段大小 kemumingcheng 科目名称文本 20 kemubianhao 科目编号文本 4 3.4、输入输出设计323
输入输出设计在信息系统中占据重要地位,因为输入和输出是用户与系统的接口,
是用户与系统关系最密切的两部分,它对于保证今后用户使用系统的方便性及系
统的安全可靠性来说十分重要。
系统设计时,应先进行输出设计,再进行输入设计,因为输入信息只有根据输出
要求才能确定。
1、输出设计
输出设计的目的是使系统能输出满足用户需求的有用信息,用户所需要的各种管
理业务和经营决策等方面的信息都是由系统的输出部分完成的。
(1)输出方式
本系统采用屏幕输出和打印机打印输出。(A)屏幕显示输出:学生登录系统查询成绩时用人机对话方式在显示屏上输出
信息,以及用户通过功能按钮、输入组合条件等方式让系统显示信息,该种方式
的优点是实时性强,但输出的信息不能保存。(B)打印机输出:需要统计分析成绩时输出的信息需要长期保存或在较广泛的
范围内传递时,将信息打印输出。
(2)输出介质
本系统输出设备有显示终端、打印机等,介质是纸张。 2、输入设计
输入设计的根本任务就是确保数据快速、正确地输入系统,本系统选用键盘输入
3.5、模块测试计划
1、测试内容:教务人员进入系统后对信息的录入、修改、删除及学生成绩的关
联查询
2、进度安排:数据库表结构设计好就设计相应测试用例,待相应模块代码编完
随即测试。
3、测试所需的环境和设备:本系统开发版基于单机Windows XP,后台数据库采用SQLServer2000,测试人员由开发者本人兼任。
4、实施测试
5、生成测试报告
四、系统实现
4.1、开发工具
本系统代码采用Visual http://www.77cn.com.cn编写,后台数据库使用SQL server 2000。
4.2、软件相关界面
4.2.1 用户启动界面
4.2.2 关于界面
4.2.3 课程管理界面
4.2.4 学生管理界面
4.3、系统测试结果
通过相关测试,结果满足设计要求,测试正常。五、收获和体会
通过对学生成绩管理系统的分析和设计,充分了解了开发一个系统的主要流程,
即系统需求分析、系统功能设计、系统模块设计、数据库设计、系统详细设计、
系统调试等,体会到开发一个系统的真正目的是为了满足用户的需求。
关键代码程序清单:
学生成绩管理系统
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myview As DataView
myview = New DataView(DataSet31.chengji, "kemubianhao ='" & ComboBox1.Text & "'", "xuehao", DataViewRowState.CurrentRows) Dim rowindex As Integer = myview.Find(TextBox1.Text)
If rowindex = -1 Then
MsgBox("数据库中未找到与此纪录重复的数据,可以存入!")
Dim str As String = "insert into chengji(xuehao, xingming, kemubianhao, kemufenshu, banjimingcheng) values (@xuehao, @xingming, @kemubianhao, @kemufenshu, @banjimingcheng)"
Dim com As OleDbCommand = New OleDbCommand(str, mycon)
com.Parameters.Add("@xuehao", OleDbType.VarChar).Value = TextBox1.Text
com.Parameters.Add("@xingming", OleDbType.VarChar).Value = TextBox2.Text
com.Parameters.Add("@kemubianhao",
OleDbType.VarChar).Value = ComboBox1.Text
com.Parameters.Add("@kemufenshu", OleDbType.VarChar).Value = TextBox3.Text
com.Parameters.Add("@banjimingcheng", OleDbType.VarChar).Value = ComboBox2.Text
mycon.Open()
com.ExecuteNonQuery()
mycon.Close()
MessageBox.Show("信息已成功存入数据库", "恭喜",
MessageBoxButtons.OKCancel, http://www.77cn.com.cnrmation)
DataSet31.Clear()
OleDbDataAdapter3.Fill(DataSet31)
Else
Beep()
MsgBox("数据库中次纪录已存在,请重新输入!")
End If
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
ComboBox1.ResetText()
ComboBox2.ResetText()
End Sub
}
// 个人信息录入代码
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox2.Text = "" Then
MessageBox.Show("必填项目不得为空!", "警告",
MessageBoxButtons.OK, MessageBoxIcon.Warning)
Exit Sub
End If
Dim myview As DataView
myview = New DataView(DataSet51.xuesheng, "", "xuehao", DataViewRowState.CurrentRows)
Dim rowindex As Integer = myview.Find(TextBox1.Text)
If rowindex = -1 Then
Beep()
MsgBox("数据库中未找到与此记录重复的数据,可以存入!")
Dim str1, str2 As String
str1 = "insert into xuesheng(xuehao, xingming, xingbie, banji, nianling"
str2 = "values('" & TextBox1.Text & "','" & TextBox2.Text &
"','" & ComboBox1.Text & "','" & ComboBox2.Text & "','" & TextBox3.Text
& "'"
If TextBox4.Text <> "" Then
str1 = str1 & ",dianhua"
str2 = str2 & ",'" & TextBox4.Text & "'"
End If
If TextBox5.Text <> "" Then
str1 = str1 & ",zhuzhi"
str2 = str2 & ",'" & TextBox5.Text & "'"
End If
str1 = str1 & ")" & str2 & ")"
Try
Dim com As New OleDbCommand(str1, mycon)
mycon.Open()
com.ExecuteNonQuery()
mycon.Close()
MessageBox.Show("信息已成功存入数据库", "恭喜",
MessageBoxButtons.OKCancel, http://www.77cn.com.cnrmation) DataSet51.Clear()
OleDbDataAdapter2.Fill(DataSet51)
Catch
mycon.Close()
MessageBox.Show(Err.Description, "", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning)
End Try
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
ComboBox1.ResetText()
ComboBox2.ResetText()
Else
MsgBox("数据库中此记录已存在,请重新输入!")
End If
End Sub
End Class
成绩打印代码
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
ComboBox1.SelectedIndexChanged
Label2.Text = "科目编号为" & ComboBox1.Text & "的课程全体学生
的成绩为:"
With Me.CrystalReportViewer2
If http://www.77cn.com.cnboBox1.SelectedItem(0) Is System.DBNull.Value Then
.SelectionFormula = "isnull ({chengji.kemubianhao})"
Else
.SelectionFormula = "{chengji.kemubianhao}='" & http://www.77cn.com.cnboBox1.SelectedItem(0) & "'"
End If
.RefreshReport()
End With
End Sub
学生成绩管理系统ER图+流程图+组织结构图-课程设计相关文章:
★ 学生成绩单评语
★ 中学生成绩单评语