学生成绩数管理系统.docx

上传人:b****4 文档编号:4343330 上传时间:2022-11-30 格式:DOCX 页数:19 大小:793.79KB
下载 相关 举报
学生成绩数管理系统.docx_第1页
第1页 / 共19页
学生成绩数管理系统.docx_第2页
第2页 / 共19页
学生成绩数管理系统.docx_第3页
第3页 / 共19页
学生成绩数管理系统.docx_第4页
第4页 / 共19页
学生成绩数管理系统.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

学生成绩数管理系统.docx

《学生成绩数管理系统.docx》由会员分享,可在线阅读,更多相关《学生成绩数管理系统.docx(19页珍藏版)》请在冰豆网上搜索。

学生成绩数管理系统.docx

学生成绩数管理系统

 

东华大学

课程设计报告

课程名称《面向对象程序设计》课程设计

设计题目学生成绩管理系统

专业计算机科学与技术

班级

学号

姓名

完成日期2013.1.10

 

课程设计任务书

设计题目:

学生成绩管理系统

设计内容与要求:

建立学生成绩数管理系统,数据信息文本文件存储,也可以采用数据库存储。

(1)学生信息按照行政班级组织;

(2)提供学生成绩的查询功能,输入学生的学号或姓名,能查找出该生各学期各门课程的成绩。

(3)能对成绩数据进行添加、删除、修改等基本操作,并能进行一般的统计计算(如计算学生的总分和平均分,课程的平均分等)

(4)其它辅助管理功能,如统计具有各等级奖学金资格的人数。

(5)用户权限控制,一般用户只能查询,管理员用户可以修改数据库的内容。

(6)根据以上功能,设计数据结构和WindowsUI界面,完成程序设计。

指导教师:

2013年1月10日

课程设计评语

 

成绩:

指导教师:

_______________

年月日

目录

第1章项目概要1

1.1功能描述1

1.2开发环境与关键技术1

1.3开发进度计划2

第2章总体设计3

2.1系统结构与模块功能3

2.2数据库逻辑级设计3

第3章详细设计与实现5

3.1界面效果图5

第4章测试12

4.1基础信息设置测试12

总结15

参考文献16

第1章项目概要

1.1功能描述

学生成绩管理系统主要包括管理员管理、教师管理、学生管理等三个功能模块。

1管理员管理系统

管理员管理系统包括课程信息管理、教师信息管理、学生信息管理、学生成绩统计、奖学金获得情况等功能。

(1)课程信息管理包括对课程信息的添加、删除、修改等操作。

(2)学生信息管理包括对学生信息的添加、删除、修改等操作。

(3)学生成绩统计包括对学生总分和平均分,课程的平均分等计算操作。

(4)奖学金获得情况主要是实现统计具有各等级奖学金资格的人数。

2教师管理系统

教师管理系统包括查询学生名单、录入成绩等功能。

(1)查询学生名单就是查询学习所教课程的学生信息。

(2)录入成绩就是为所学的这门课的学生录入成绩,同时能够对成绩进行修改操作。

3学生管理系统

学生管理系统包括查询学生成绩、选修课程、网上评教等功能。

(1)查询学生成绩功能实现查询所学课程的全部成绩。

(2)选修课程功能可以实现对课程的选修操作。

(3)网上评教功能可以对老师所教的课程进行评教。

1.2开发环境与关键技术

1开发环境

OS:

MicrosoftWindowsXPSP2

开发环境:

MicrosoftVisual Studio2010

其它软件:

Office、MSDNLibrary

2关键技术

面向对象分析与设计

数据库编程

1.3开发进度计划

表1-1预计开发时间

时间(工作日)

阶段

成果

1

项目计划与需求分析

需求描述及用例图(或数据流图)

1

概要设计与详细设计

系统模块结构图、程序流程图

2

编码与测试2天

源程序、测试用例

1

项目总结与答辩

课程设计报告

第2章总体设计

2.1系统结构与模块功能

系统包含三个模块:

1管理员管理模块。

包括2个子模块:

(1)课程信息管理;

(2)学生信息管理。

2.教师管理模块。

包括2个子模块:

(1)查询学生名单;

(2)录入成绩。

3.学生管理模块。

包括3个子模块:

(1)查询成绩;

(2)选修课程;(3)网上评教。

系统的模块图如图2-1所示:

图2-1系统结构图

2.2数据库逻辑级设计

根据数据需求分析,可以为5类对象:

学生信息、课程信息、教师信息、选课、评教分别设计5个基本数据表,如表2-1至2-5所示。

表2-1学生信息表

字段名

字段描述

类型

可否为空

备注

sno

学号

Nvarchar(50)

主键

sname

姓名

Nvarchar(50)

ssex

性别

Nvarchar(50)

ssage

年龄

Smallint

classnum

班号

Nvarchar(50)

scholarship

奖学金情况

Nvarchar(50)

表2-2课程信息表

字段名

字段描述

类型

可否为空

备注

cno

课程号

Nvarchar(50)

主键

cname

课程名

Nvarchar(50)

ccreat

学分

smallint

ctime

课时

Nvarchar(50)

nature

课程性质

Nvarchar(50)

表2-3选课表

字段名

字段描述

类型

可否为空

备注

cno

课程号

Nvarchar(50)

cno和sno都是成绩表的外键,(cno,sno,semester)作主键

sno

学号

Nvarchar(50)

grade

成绩

smallint

technum

教师编号

Nvarchar(50)

semester

学期

Nvarchar(50)

表2-4教师信息表

字段名

字段描述

类型

可否为空

备注

technum

教师工号

Nvarchar(50)

主键

technam

姓名

Nvarchar(50)

cno

课程号

Nvarchar(50)

表2-5评教表

字段名

字段描述

类型

可否为空

备注

cno

课程号

Nvarchar(50)

cno和sno都是评教表的外键,(cno,sno)作主键

sno

学号

Nvarchar(50)

score

成绩

smallint

technum

教师编号

Nvarchar(50)

第3章详细设计与实现

开发系统的要求来自对传统管理模式的不满,不管是手工系统还是正在运行的计算机系统。

由于存在的问题充斥各个方面,内容分散,甚至含糊不清,这就要求作者进行详细分析,并在原管理模式的基础上提出系统开发方案。

3.1界面效果图

1.登录界面如图3-4所示。

操作员在进入系统时是需要通过密码验证,方可进入系统主界面。

图3-1学生成绩管理系统登录界面

代码如下:

if((string)comboBox1.SelectedItem=="教师")

{

SqlConnectioncon=newSqlConnection();

con.ConnectionString="server=.;database=studentsystem;Integratedsecurity=true";

con.Open();

SqlCommandcom=newSqlCommand("select用户名,注册密码fromtechregister",con);

SqlDataReaderdt=com.ExecuteReader();

while(dt.Read())

{

if(Equals(textuser.Text,dt["用户名"].ToString().Trim())&&Equals(paswd.Text.Trim(),dt["注册密码"].ToString().Trim()))

{

MessageBox.Show("登录成功!

");

TechFormtechform=newTechForm();

techform.Struse=getuser();

DialogResultdialogresult=techform.ShowDialog();

break;

}

}

while(dt.Read())

{

if(Equals(textuser.Text,dt[0].ToString().Trim())&&Equals(paswd.Text,dt[1].ToString().Trim()))

{

MessageBox.Show("登录成功!

");

paswd.Clear();

this.Hide();

struser=this.textuser.Text;

Stuformstuform=newStuform();

stuform.strsno=this.textuser.Text;

DialogResultdialogresult=stuform.ShowDialog();

break;

}

}

this.Show();

图3-2管理员管理流程图

学生信息管理代码和课程信息管理代码类似。

学生成绩统计和奖学金获得情况也就不一一列举了。

3教师管理主界面如图3-6所示。

图3-3教师管理主界面

教师管理代码如下:

privatevoidtoolStripMenuItem1_Click(objectsender,EventArgse)

{

CheckFormcheckform=newCheckForm();

checkform.Strtec=this.Struse;

checkform.MdiParent=this;

checkform.Show();

}

privatevoidtoolStripMenuItem2_Click(objectsender,EventArgse)

{

LogFormlogform=newLogForm();

logform.Struse=this.Struse;

logform.MdiParent=this;

logform.Show();

}

录入成绩代码如下:

privatevoidbutton1_Click(objectsender,EventArgse)

{

Form1gainuser=newForm1();

stringstrtechnum=gainuser.Struser;

strtechnum=this.Struse;

stringstrcno=texcno.Text.Trim();

SqlConnectioncon=newSqlConnection();

con.ConnectionString="server=.;database=studentsystem;Integratedsecurity=true";

con.Open();

SqlCommandcom=newSqlCommand("select*fromsmcoursewheretechnum='"+strtechnum+"'andcno='"+strcno+"'",con);

SqlDataReaderda=com.ExecuteReader();

dgviewinitial();

while(da.Read())

{

introwIndex=dgviewlog.Rows.Add();

dgviewlog.Rows[rowIndex].Cells["cno"].Value=da["cno"].ToString().Trim();

dgviewlog.Rows[rowIndex].Cells["sno"].Value=da["sno"].ToString().Trim();

dgviewlog.Rows[rowIndex].Cells["grade"].Value=da["grade"].ToString().Trim();

dgviewlog.Rows[rowIndex].Cells["technum"].Value=da["technum"].ToString().Trim();

}

dgviewlog.Focus();

introwindex=dgviewlog.CurrentRow.Index;

if(dgviewlog.Rows[rowindex].Cells["cno"].Value==null)

{

MessageBox.Show("没有此课程,请重新输入");

}

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

introwIndex=dgviewlog.CurrentRow.Index;

DataGridViewRowrowObj=dgviewlog.Rows[rowIndex];

if((string)rowObj.Cells["grade"].Value!

="")

{

MessageBox.Show("成绩已经录入,不要重复录入");

}

else

{

rowObj.Cells["grade"].Value=texgra.Text;

SqlConnectioncon=newSqlConnection();

con.ConnectionString="server=.;database=studentsystem;Integratedsecurity=true";

con.Open();

SqlCommandcom=newSqlCommand();

com.CommandText="updatesmcourseset"

+"grade='"+texgra.Text+"'"

+"wheresno='"+rowObj.Cells["sno"].Value+"'andcno='"+rowObj.Cells["cno"].Value+"'";

com.Connection=con;

intintemp=com.ExecuteNonQuery();

if(intemp==1)

{

MessageBox.Show("录入成功");

}

}

}

privatevoidbutton3_Click(objectsender,EventArgse)

{

SqlConnectioncon=newSqlConnection();

con.ConnectionString="server=.;database=studentsystem;Integratedsecurity=true";

con.Open();

SqlCommandcom=newSqlCommand();

com.CommandText="Updatesmcourseset"

+"grade='"+texgra.Text+"'"

+"wheresno='"+rowObj.Cells["sno"].Value+"'andcno='"+rowObj.Cells["cno"].Value+"'";

com.Connection=con;

intintemp=com.ExecuteNonQuery();

if(intemp==1)

{

MessageBox.Show("修改成功");

}

}

}

图3-4教师管理流程图

4学生管理主界面如图3-5所示。

图3-5学生管理主界面

}

图3-6学生管理流程图

第4章测试

4.1基础信息设置测试

对每一个系统功能设计若干测试用例,

表4-1登录界面测试

用例编号

TC01

测试点

登录系统

步骤

(1)进入用户登录界面;

(2)选择不同用户,例如:

管理员

(2)在选择菜单里选择“刘振”,密码:

123;(如果密码错误,会有密码错误的提示,然后重新输入)

(3)回车或者点击确定。

预期结果

通过身份验证,进入管理员管理系统主界面。

实际结果

如图3-5所示(与预期结果相同)

备注

实现系统登录功能。

表4-2学生信息管理测试

用例编号

TC02

测试点

学生信息管理系统

步骤

(1)选择课程信息管理;

(2)测试

预期结果

能够对学生信息进行添加、删除、修改等操作。

实际结果

如图4-1所示(与预期结果相同)

备注

图4-1学生信息管理图

学生信息管理和课程信息管理类似。

 

表4-2学生成绩统计测试

用例编号

TC03

测试点

学生成绩统计

步骤

(3)选择学生成绩统计;

(4)测试

预期结果

能够计算机学生的总分和平均分。

实际结果

如图4-2所示(与预期结果相同)

备注

图4-2学生成绩统计图

表4-3查询学生名单测试

用例编号

TC04

测试点

查询学生名单

步骤

(5)选择查询学生名单;

(6)测试

预期结果

能够查询到所教授学生的信息

实际结果

如图4-3所示(与预期结果相同)

备注

图4-3查询学生名单图

表4-4网上评教测试

用例编号

TC05

测试点

网上评教

步骤

(7)选择网上评教;

(8)测试

预期结果

能够对教师所教的课程进行评教

实际结果

如图4-4所示(与预期结果相同)

备注

图4-4网上评教图

总结

这次课设,所做的学生成绩管理系统主要实现管理员管理课程信息、学生信息、统计学生成绩、统计各等级奖学金情况,教师查询所教课程的学生信息、录入成绩,学生查询各科成绩、选修课程和网上评教等功能。

这次课设中,每个人都有自己的分工,我所主要负责的是教师所有相关功能实现,其中包括:

查询所教学生的所有信息,对学生成绩的录入以及修改。

但是,我做的还不是很完善,并且离实用性的学生成绩管理系统还有很大的差距。

通过这次课设,我对项目的设计和分析有了一个比较清晰的认识和理解,由于时间关系程序中还有许多需要优化的地方。

通过这次课设,我认为我在做项目方面的能力,提高的不是很多,但是提高比较明显的就是对模块化的设计方法有了更深刻的理解。

在这一个星期的课程设计中,有了很大的收获,例如:

认真上好专业实验课,多在实践中锻炼自己;写程序的过程中要考虑周到,严密;在做设计的时候要有信心,有耐心,切勿浮躁;认真的学习课本知识,掌握课本中的知识点,并在此基础上学会灵活运用。

 

参考文献

[1]王珊.数据仓库技术与联机分析处理[M].北京:

北京科学出版社,2005

[2]InmonWH.数据仓库[M].北京:

机械工业出版社,2008

[3]KimballR.数据仓库管理[M].北京:

电子工业出版社,2007

[4]ImhoffC.数据仓库工具箱[M].北京:

电子工业出版社,2009

[5]ImhoffC.数据仓库设计[M].北京:

机械工业出版社,2006

[6]MattisonR.Web仓库工程与知识管理[M].北京:

清华大学出版社,2005

[7]BainT.SQLServe2000数据仓库与AnalysisServices[D].北京:

中国电力出版社,2005

[8]郑宇军.C#语言程序设计基础[D].北京:

清华大学出版社,2008

[9]郑宇军.SQLServer2005+VisualC#2005专业开发精解[D].北京:

清华大学出版社,2007

[10]郑人杰.软件工程[D].北京:

清华大学出版社,2005

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

当前位置:首页 > 解决方案 > 学习计划

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

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