1、山西师范大学本科毕业论文(设计)基于ASP.NET的学生成绩管理系统设计与实现 院 系: 专 业: _年 级:_学 号:_姓 名:_ 指导老师:_ 答辩日期:_ 成 绩: 基于ASP.NET的学生成绩管理系统设计与实现内容摘要:该文将学生成绩管理系统划分为三个用户权限:教务处管理权限,学生权限,教师权限。在SQL server Management 2005中通过新建查询的方式建立数据库,在Visual student 2010环境 下C#语言实现。关键词:ASP.NET 成绩管理 C# SQL数据库Design and implementation of student achievemen
2、t management system based on ASP.NETAbstract: This paper divides the student achievement management system into three user rights: educational administration administrative authority, student authority, teacher authority.In server Management SQL 2005, the database is built by the way of the new quer
3、y, and the C# language is implemented in student Visual 2010 environment.Keywords: ASP.NET score management C# SQL database目录目录一 引言1二 系统开发介绍1(一)系统开发目的1(二) 系统开发目标2(三)系统的开发方法2三 系统分析2(一)系统可行性分析2(二) 系统需求性分析3(1)功能分析3(2)模块划分3三 数据库设计描述9(一)数据模型设计9(二) 实体数据库表的设计10四 系统详细设计与实现13(一) 系统登录界面设计13(1) 用户管理功能设计与其页面设计1
4、6(2) 学生管理功能及其页面设计17(3) 课程管理设计与界面19(4) 成绩管理设计与界面20(5) 报表22(6) 数据备份还原23六 致谢26七 参考文献26基于ASP.NET的学生成绩管理系统设计与实现一 引言随着Internet的迅速发展,人类也飞速进入到信息社会,信息和知识在当代社会中扮演着越来越重要的角色。各个行业部门也随着拥有更加便捷的管理软件来实现即时高效的管理,从而提高了管理效率。教育行业也与时俱进,学校的管理随着国家教育的普及也日趋复杂,单靠手工整理已不能满足,越来越多的学校建立了自己的Web网站,学校通过网站向更多的人展示自己,一个学校最重要的是学生的成绩,而涉及到学
5、生的 成绩的管理我们就要用到学生成绩管理系统,它使我们在管理成绩时更加规范、科学,实现成绩管理无纸化办公,提高学校各部门之间的协作效率和办公质量。基于ASP.NET的学生成绩管理系统设计与实现是关于学生成绩管理的一个很适用的软件,在该学生成绩管理系统中从三类不同的管理者出发设计的,包含教务处管理 教师管理和学生查询,各个的职权范围不同,从而使该系统在学生的成绩管理中更加科学,规范,有效,大大减少了工作人员的工作时间和复杂度,并且更加安全和快速实现功能。二 系统开发介绍(一)系统开发目的 信息时代的飞速发展,学校工作也随之发生了巨大的变化,为了学生全面的发展,我们要更加关注学生,势必要记录学生更
6、多的信息数据,这就在无形中加大了处理学生信息的工作量,人工已经无法满足,这时我们要提高工作效率和办学水平,实现当代学校的高水平管理和运行机制,我们就要引入学生成绩管理系统。学生成绩管理系统是一个学校不可缺少的部分,他的内容对于学校的管理者来说至关重要,它为用户提供充足的信息和快捷的查询手段,随着科学技术的不断提高,其强大的功能已日渐完善,进入到人类社会的各个领域并发挥着越来越重要的作用。在学生成绩管理系统中,将学校 老师 学生紧密联系到了一起。(二) 系统开发目标 (1)完善学生成绩管理系统的建设,实现成绩管理网络化,进一步提高学校的教学效率,工作效率,使学校朝着信息化 现代化 简洁化目标迈进
7、。(2)建立学校数字化成绩管理查询系统,提高办学效率和现代化教学水平。 (3)为学校工作人员以及老师和学生提供快捷方便的成绩信息获取渠道和手段。(三)系统的开发方法 该系统开发过程中采用B/S模式,采用ASP.NET技术,ASP.NET是Microsoft公司推出的基于.NET Framework的Web应用开发平台,是Web开发的主流技术之一,开发效率更高,程序结构更加清晰,开发流程更加简单,缩短开发周期。ASP.NET开发可以用Visual Bisual.NET或者C#程序设计语言,本系统采用C#语言编写,ASP.NET内部具有大量的内置对象,控件等这些技术对于页面布局 创建具有一致外观的
8、网站非常有用,也有利于使站点看起来更专业和有吸引力。数据库采用SQL server Management 2008,SQL server 2008和Vsiual Studio 2010拥有一个统一的开发环境,使得集成于其中的编辑模型能够提供一个整体的解决方案,从而使程序开发语言 产品配置环境和数据操作这3种专业技能紧密地结合起来,对应用程序的可用性、性能、安全性能和可伸缩性带来全面提升。三 系统分析(一)系统可行性分析本系统是从教务处、老师、学生三个方面来管理学生成绩,实现学生的基本信息、个人成绩、班级成绩的录入、修改、查询以及成绩的统计分析,改善数据处理速度,并且更加方便对数据进行处理,减少
9、人力资源的浪费以及工资输出,让学生也参加到管理系统中,加强 学生与老师的互动性,以下从技术、经济、操作、人员方面进行可行性分析:技术可行性:校园具有网络并且正常运行,开发人员掌握开发工具,教务处人员以进行过计算机培训,技术上是可行的。经济可行性:校园具有网络并且正常运行,各部门均配置有电脑,硬件投入不需要很大,另外,学校对学生成绩管理系统的开发大力支持,因此经济上是可行的。操作可行性:学校的管理人员和老师都接受过电脑培训,对于电脑都能上手 ,学生也具备一定的电脑操作技能,因此在技术上是可行的。人员方面可行性:学校配备有专门的电脑管理人员,每个学校工作管理人员和老师学生都可以参加维护工作,因此人
10、员方面是可行的。(二) 系统需求性分析(1)功能分析 学生成绩管理系统应该完成以下两个方面的内容:学生信息的基本管理、学生成绩的基本管理,在这些管理中都要实现添加、查询、修改的功能。学生成绩管理系统中主要分为三个模块,模块的用户分别是教务处,教师和学生,他们的的管理权限不一样。教务处的功能为实现学生的录入、查询、删除,成绩的录入、查询、删除,课程的录入、查询、删除,修改自己的登录密码以及发布一些信息;教师的功能为实现学生信息的查询,学生成绩的发布,可以查询自己所教授学科的课程信息的查询,修改自己的登录密码,和其他一些信息,学生只能查询自己的成绩,修改自己的登录密码和一些其他信息。系统还有报表和
11、数据备份功能。(2)模块划分本系统主要包括四个模块:用户验证模块、教务处管理模块,教师管理模块、学生信息查询模块。用户验证模块。用户验证模块是根据用户输入自己的用户权限、用户名、密码来验证自己的身份来进入自己的账号从而实现自己的功能。开 始输入用户名和密码是否正确登录成功终 止是重新登录否用户验证模块系统图 图1 教务处管理模块。教务处管理模块实现课程的录入、修改和删除;教师信息的管理;学生的录入、修改和删除,成绩的录入、修改和删除;教务处管理系统学生信息管理学生成绩管理修改密码学生学籍信息录入学生信息查看按班级查看成绩录入班级查看学号查看成绩修改 教务处管理系统图2教务处管理系统用户管理课程
12、管理报表数据备份课程录入课程查询班级学生信息教务处管理系统图3(3)教师管理模块主要是实现学生成绩的录入、修改,查自己的信息和修改密码。教师管理系统学 生信息查询课程信息报表修改密码学生信息查询学生成绩查询教授课程查询班级课程查看班级学生信息教师管理系统图4(4)学生管理模块主要是学生查询自己的信息,修改自己的登录密码,查询成绩。学生管理模块实现的功能比较简单,比较容易实现。以下是学生管理模块的流程图:学生管理模块学生信息成绩查询修改密码学生信息查看班级信息查看个人成绩查看班级成绩查看 学生管理模块流程图5根据以上的四个模块的流程图中要实现的各个功能综合到一起,我们得出整个系统的流程图,分别有
13、系统登录整个学生成绩管理系统的安全模块来保证啊、整个系统的安全性,教务处管理模块是学校管理工作人员进行管理,是整个系统中使用权限最高的模块,可以管理学生、教师等模块;教师管理模块主要是实现教师对学生成绩的管理,例如学生成绩的录入;学生管理模块主要是方便学生查询自己的成绩信息,核对自己的学籍信息,来进行管理自己的信息。以下就是整个系统的流程图: 学生成绩管理系统系统设置用户登录教务处管理模块教师管理模块学生管理模块学生管理用户管理课程管理成绩管理修改密码报表用户数据备份学生录入学生查询按班级查看课程录入课程查询成绩录入班级成绩查看学号成绩查看成绩修改班级学生信息学生信息课程查询报表修改密码学生信
14、息查询成绩查询教授课程查询班级课程查询班级信息学生信息成绩查询修改密码个人信息班级信息个人成绩班级成绩 学生成绩管理系统整体ER图6 三 数据库设计描述(一)数据模型设计 在做系统之前,我们要先进行数据模型设计。首先我们来做学生成绩管理系统的ER图,分析问题的实体:学生、教师、课程。学生的成绩是由任课教师按课程给出的。分析这三个实体之间的关系,教师和成绩没有内在联系,必须通过学生这个中间媒介联系起来,学生也必须通过课程跟老师建立联系,学生跟课程是多对多的关系,一个学生可以学习多门课程,一门课程可以由多个学生学习,ER图如下所示:学生课程学习mn图7 学生与课程实体模型教师和学生也是多对多的关系
15、,一个学生学习了多门课程,也就有多个教师教授,一个教授也教授多个学生。E-R图如下所示:学生教师学习mn 图8 学生与教师实体模型课程和教师是一对多的关系,一个教师可以教多门课程,而一门课程只有一位老师,以下是课程与教师的ER图:课程教师学习m1 图9 课程与教师实体模型这三个实体ER图形组合到一起,得到整体ER模型图,以下就是整个数据模型图: 图10 整体设计模型(二) 实体数据库表的设计在实体模型 和数据库建立好后,就要建立其中的数据表,设定数据表中的具体字段,在这个环节最重要的是消除冗余或做到冗余数据最少,从而使得各个表的基本结构明确、清晰。在数据库中我们建立了8个数据表,用户权限表、用
16、户表、学生信息表、院系表、专业表、班级表、成绩表、课程表。这些表组合到一起,相互联系到一起,每个表都设置一个主键,这个主键都是独一无二的的,有这些主键和其他表的外键相关联,构成数据库,以下就是各个表的具体信息。(1)用户权限表(Levelinfo)用户权限表用来存储我们进入学生管理系统时所要选择的权限,例如本系统有三个权限:教务处、教师、学生,我们根据我们所属权限进入可以更好地维护系统的安全性,使管理更加合理、规范。表1 用户权限表字段名称数据类型是否为空说明LevelIDNchar(10)No用户权限ID,主键LevelNamenvarchar(50)No用户权限名Bznvarchar(50
17、)Yes备注(2)用户信息表(Userinfo)用户信息表也是用于系统登录时必须使用的一个表,存储的是用户的信息,用户在注册时的信息都存储在这个表中,也是一个特别重要的表,用户信息表中的信息如下表所示:表2 用户信息表字段名称数据类型是否为空说明Usernamenvarchar(50)No用户名,主键Userwordnvarchar(50)No用户密码UserlevelIDNchar(10)No用户ID(3)院系表(Deparmentinfo)院系表中,存储的是学生的所属学院、系别,是每个学生的基本属性之一,在院系表中的基本信息为院系ID、院系名称,其中院系ID为主键,唯一识别,以下就是院系表
18、的信息:表3 用户信息表字段名称数据类型是否为空说明DeparmentIDNchar(10)No院系ID,主键DeparmentNamenvarchar(50)No院系名称(4)班级表(Classinfo)班级表是对学生的集体管理的统一模式 ,班级表的基本信息为班级号、班级名、备注、班级人数、班级所学的专业名。以下是班级表的具体信息:表4 班级表字段名称数据类型是否为空说明ClassIDnvarchar(10)No班级ID,主键ClassNamenvarchar(50)No班级名称Bznvarchar(50)No备注NumtinyintNo班级人数SpecializeIDNchar(10)No
19、专业ID(5)专业表(Specializeinfo)专业表描述的是学生所学专业的基本信息,包括专业ID、专业名称、专业所属学院的名称。以下就是专业表的具体情况:表5 专业表字段名称数据类型是否为空说明SpecializeIDNchar(10)No专业D,主键SpecializeNameNchar(10)No专业名称DepmentIDNchar(10)No所属院系名称(6)成绩表(Tiny)成绩表是学生成绩管理系统中最重要的表,在学生表中记录学生的各科成绩,还有平时成绩,以及最后的期末成绩,成绩表中包括学期、学号、课程号、考试成绩、平时成绩、期末成绩,下表具体给出了成绩表的具体信息:表6 成绩表
20、字段名称数据类型是否为空说明TermtinyintNo学期,主键Snonvarchar(50)No学号CourseIDNchar(15)No课程号ParTGradetinyintNo考试成绩GradetinyintNo平时成绩ExamGradetinyintNo期末成绩(7)课程表(Courseinfo)课程表是学生参加学校教育活动的重要方式,也是每个班级必不可少的属性,包含课程号、课程名、课程时间、学分,以下就是课程表的具体属性信息:表7 课程表 字段名称数据类型是否为空说明CourseIDNchar(10)No课程ID,主键CourseNameNchar(10)No课程名程CourseHo
21、urNchar(10)No课程时间CreditNchar(10)No学分(8)学生信息表(Studentinfo)学生信息表是所有表的基础,其他的表都实现的是学生的一些属性,其中包含学生号、学生姓名、学生性别、学生照片、入学日期、班级号、电话、宿舍号、专业号、院系号。下表就是学生信息的详细信息。表8 学生信息表字段名称数据类型是否为空说明Snonvarchar(50)No学号ID,主键Snamenvarchar(50)No学生真实姓名Ssexnvarchar(10)No学生性别SpotoimageNo学生照片RegdatedateNo入学日期ClassIDnvarchar(10)No班级号Te
22、lNchar(15)No电话DormitoryIDNchar(10)No宿舍号SpecializeIDNchar(10)No专业号DepartmentIDNchar(10)No院系号四 系统详细设计与实现(一) 系统登录界面设计 登录界面主要是为了维护学生成绩管理系统的安全性,根据不同的用户设置不同的登录权限,分别保存在用户权限表和用户表中。该系统输入用户名为:娄茜密码:111111即可登录进入学生成绩管理系统,当输入错误的用户名和密码时登录不了该系统。系统登录页面是由页面Login.aspx实现,它的代码隐藏文件为Login.aspx.cs系统主界面如下图所示: 图11 系统登录页面Logi
23、n.aspx的设计实现本模块的主要代码为: (二) 系统主页面设计以下是用户类型为教务处的登录成功后的系统主页面,系统主页面是由页面Main.aspx实现,它的代码隐藏文件为Main.aspx.cs。其中的功能如下图所示,分别有用户管理、学生管理、课程管理、成绩管理,修改密码、教师管理、报表、数据备份还原功能。图12 系统主页面Main.aspx的设计(1) 用户管理功能设计与其页面设计 用户管理功能是查看所有用户的用户名、用户权限的设计,这个功能实现较为简单,下图是用户管理页面及其所显示的用户信息。页面是由页面Userlist.aspx实现,它的代码隐藏文件为Userlist.aspx.cs
24、.其登陆密码都为111111.下图为用户管理界面:图13 系统主页面Main.aspx的设计(2) 学生管理功能及其页面设计 教务处使用该功能实现对学生的录入、修改、删除等功能,是学生成绩管理系统最基本的功能,其他功能都是建立在其基础之上。下图为学生录入和查询功能的设计页面及其实现代码:图14 学生录入界面Stuentinput.aspx图15 学生信息管理界面studentsearch.cs其实现代码如下: (3) 课程管理设计与界面 课程管理实现的是课程的录入、查看的功能。是学生成绩必不可少的联系体,课程录入页面是由页面Courseinput.aspx实现,它的代码隐藏文件Coursein
25、put.aspx.cs;.课程查看页面是由页面Coursesearch.aspx实现,它的代码隐藏文件Coursesearch.aspx.cs;.以下是课程录入、查看的界面: 图16 课程录入Courseinput.aspx界面图17 课程查询Coursesearch.aspx界面(4) 成绩管理设计与界面成绩管理包括成绩录入、个人查看、班级查看三个功能,都是关于成绩的功能,在学生成绩录入栏中选择班级、课程和该学生的学号,然后输入该生正确的成绩,即可修改学生的成绩;而个人查看只需要输入该生的学号即可查看成绩,班级查看时批量查看学生成绩。成绩录入页面是由页面Scoreinput.aspx实现,它
26、的代码隐藏文件Scoreinput.aspx.cs;.成绩查看页面是由页面ScoreQuery.aspx实现,它的代码隐藏文件CourseQuery.cs;. 成绩查看页面是由页面ClassGradeBrowse.aspx实现,它的代码隐藏文件ClassGradeBrowse.aspx.cs;.,以下是成绩录入、个人查看、班级查看的界面设计及实现代码。图18 成绩录入Scoreinput.aspx实现界面图19 学号查看成绩Snoscorelook. aspx实现界面图20 班级成绩查看ClassGradeBrowse.aspx其代码如下所示:(5) 报表 报表是显示全班学生的信息的一张表,分
27、班学生信息表只需要选择班级即可查看该班的信息,成绩录入页面是由ClassStudent.aspx实现,它的代码隐藏文件ClassStudent.aspx.cs;其设计页面如下所示:图21 分班学生信息报表(6) 数据备份还原数据备份还原是备份信息的一种工具,为我们的工作提供了很大的便利,可以有效地保存现在的信息;数据还原也为我们提供了很大的便利,节省了我们大量的时间去还原信息,成绩录入页面是由Databackstor.aspx实现,它的代码隐藏文件Databackstor.aspx.cs;其设计页面如下所示:图22 数据备份与还原Databackstor.aspx设计图其实现代码如下所示: 五
28、 结束语在学生成绩管理系统的毕业设计中,我运用了Web系统的开发,使用了Visual Studio进行编程,从开始的迷茫不知所措到现在的总体收尾,回顾整个设计历程,历时两个多月,在这期间接受到了老师及同学们的巨大帮助,我觉得感受颇多。 首先来说这次毕业设计让我学到了很多的知识,毕业设计不仅是对我们四年所学知识的检验,看你是否掌握了所学的知识,也锻炼了自己的实践能力,更是对知识系统的升华,让我们明白知识运用的重要性、必要性。在设计过程中我们会遇到各种各样的问题,自己不能有效地解决,因此进程缓慢,而出现的各种问题就是我们学习中的漏洞与不足,需要我们进行学习和巩固,来使我们的基本功扎实,问题随着知识
29、的提高而解决,更加全面地掌握知识。同时也学到了课本上没有的知识,扩大了我们的知识面,为以后的工作打下有益的基础。通过本次设计学生成绩管理系统来说,我进一步认识到了成绩管理的构造,熟悉了其功能,相对于开始有了质的飞跃,对于系统的设计有了很大的认识,不过还有很多的不足需要去完善,向设计过程中提供给我巨大帮助的同学和老师献以最诚挚的感谢。六 致谢七 参考文献 1郭洪涛,陈明华等著.ASP.NET 2.0(C#)大学实用教程.电子工业出版社,20092萨师煊,王珊著.数据库系统概论.高等教育出版社,20003黄维通,刘艳民编著.SQL Server数据库应用.高等教育出版社,20084谭桂华,魏亮等编著 Visual C# 高级编程范例.清华大学出版社,20045关敬敏,SQL Server 2005 数据库应用教程,清华大学出版社,20056许宾,胡勇辉,凌志勇 著ASP.NET2.0(C#)应用开发技术与典型实例.清华大学出版社,2008 26