文档库 最新最全的文档下载
当前位置:文档库 › .Net学生成绩管理系统-毕业论文

.Net学生成绩管理系统-毕业论文

专科毕业设计论文题目:学生成绩管理系统

站点:陕西新华电脑软件学校

学科专业:软件技术

学生: xxxxxxxxxx

学号: xxxxxxxxxxxxxxx

指导教师: xxxxxxxxx

2012年05月

摘要

本系统依据开发要求主要应用于教育系统,完成对日常的教育工作中学生成绩档案的数字化管理。开发本系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部门关于信息化的步伐,使各项管理更加规范化。

目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的系统是很有必要的。

关键字:成绩管理、https://www.wendangku.net/doc/279964391.html,程序设计、C#、Sql Server 2005

引言

学生成绩管理是学校管理中异常重要的一个环节,作为学校,除了育人,就是育知,学生成绩管理的计算机化是整个学校教务管理中的重要一部分,能否实现这一步关系到学校办学整体效率的高低,介于它的重要性,学生成绩管理系统的开发与应用就逐渐提入议程,并占着越来越重要的份量。

运用学生成绩管理系统可以减轻学院教学人员的工作量,缩小开支,提高工作效率与准确率,能够合理安排时间,能够尽快的知道自己的考试成绩,投入新的课程的学习或复习这次没有考过的课程,为教师提供全面方便的管理模式,并在一定程度上提高了教学人员决策的科学化。

在现代,高科技的飞跃发展,人们工作习惯的改变,特别是电脑的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。学生成绩管理是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,不好管。对于一个学校而言,更应该运用一些本地资源,提高管理的力度。

目录

1.开发环境概述 (1)

1.1 https://www.wendangku.net/doc/279964391.html, 概述 (1)

1.1.1 https://www.wendangku.net/doc/279964391.html,的优势介绍 (1)

1.1.2 https://www.wendangku.net/doc/279964391.html,的特点 (1)

1.2 SQL Server 2005概述 (2)

2. 需求分析 (3)

2.1 教育系统学生成绩管理现状分析 (3)

2.1.1 学校工作流程分析 (3)

2.1.2 学校具体需求分析 (3)

2.1.3 系统设计思想 (4)

2.1.4 系统设计分析 (4)

2.1.5 系统功能分析 (4)

3. 数据库设计与实现 (5)

3.1 班级表 (5)

3.2 成绩表 (5)

3.3 成绩统计表 (6)

3.4 授课老师表 (6)

3.5 补考表 (7)

3.6 专业表 (7)

3.7 科目表 (8)

3.8 学生信息表 (8)

3.9 用户信息表 (8)

4.技术简介 (9)

4.1 基于B/S结构技术的应用 (9)

4.1.1 B/S结构技术发展简述 (9)

4.1.2 动态网站开发技术比较 (9)

5. 成绩管理系统详细设计 (10)

5.1 项目结构设计 (10)

5.1.1总体结构 (10)

5.1.2 Dal 示图 (10)

5.1.3 Bll示图 (11)

5.1.4 Model示图 (11)

5.1.5 UI示图 (11)

5.2 用户登录 (13)

5.2.1 用户登录页面图 (13)

5.2.2用户名、用户密码验证逻辑 (14)

5.3 系统设计业务目标(业务逻辑层) (15)

5.3.1系统设计目标概述 (15)

5.3.2 用户(角色) (15)

5.3.3 管理功能结构图 (15)

5.4 模块管理 (15)

5.4.1 用户管理模块 (17)

5.4.2 专业管理模块 (23)

5.4.3 班级管理 (28)

5.4.4 授课老师管理 (28)

5.4.5 学生管理 (29)

5.4.6 科目管理 (29)

5.4.7 成绩管理 (29)

5.5 技术总体目标 (29)

5.5.1系统技术性能要求 (29)

5.5.2 精度 (30)

5.5.3 数据管理能力要求 (31)

5.5.4 时间特性要求 (31)

5.5.5 故障处理要求 (31)

5.5.6 UI要求设计要求 (31)

6. 系统测试与发布 (33)

6.1 https://www.wendangku.net/doc/279964391.html, 硬件要求 (33)

6.2 https://www.wendangku.net/doc/279964391.html, 软件要求 (33)

致谢 (36)

参考文献 (37)

1.开发环境概述

1.1 https://www.wendangku.net/doc/279964391.html, 概述

1.1.1 https://www.wendangku.net/doc/279964391.html,的优势介绍

https://www.wendangku.net/doc/279964391.html,是https://www.wendangku.net/doc/279964391.html,的一部分,作为战略产品,不仅仅是 Active Server Page (ASP) 的下一个版本;它还提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。https://www.wendangku.net/doc/279964391.html, 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 https://www.wendangku.net/doc/279964391.html, 功能,随时增强 ASP 应用程序的功能。

https://www.wendangku.net/doc/279964391.html, 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C# 和 JScript .NET.)创作应用程序。另外,任何 https://www.wendangku.net/doc/279964391.html, 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。

https://www.wendangku.net/doc/279964391.html, 可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。

微软为https://www.wendangku.net/doc/279964391.html,设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。

1.1.2 https://www.wendangku.net/doc/279964391.html,的特点

https://www.wendangku.net/doc/279964391.html,的新性能

https://www.wendangku.net/doc/279964391.html,提供了稳定的性能、优秀的升级性、更快速的开发、更简便的管理、全新的语言以及网络服务。贯穿整个https://www.wendangku.net/doc/279964391.html,的主题就是系统帮用户做了大部分不重要的琐碎的工作。

全新的构造

新的https://www.wendangku.net/doc/279964391.html,引入受管代码(Managed Code)这样一个全新概念,横贯整个视窗开发平台。受管代码在NGWS Runtime下运行,而NGWS Runtime是一个时

间运行环境,它管理代码的执行,使程序设计更为简便。

高效率

对于一个程序,速度是一件非常令人渴望的东西。一旦代码开始工作,接下来你就得尽可能地让它运作得快些快些再快些。在ASP中你只有尽可能精简你的代码,以至于不得不将它们移植到一个仅有很少一点性能的部件中。而现在,https://www.wendangku.net/doc/279964391.html,会妥善地解决这一问题。

1.2 SQL Server 2005概述

SQL Server 2005是由Microsoft公司开发的SQL Server 产品中变化最大的版本[14]。Microsoft SQL Server 2005扩展了Microsoft Server 7.0版的性能,包括可靠性,质量和易用性。Microsoft SQL Server 2005增加了几种新的功能,由此成为大规模联机事务处理(OLTP)、数据仓库和电子商务应用程序的优秀数据库平台。其特性主要表现在以下几个方面:

(1)Internet 集成 SQL Server 2005数据库引擎提供完整的XML支持。它还具有构成最大的Web站点的数据存储组件所需[5]的可伸缩性、可用性和安全功能。

(2)可伸缩性和可用性同一个数据库引擎可以在不同的平台上使用,从运行Microsoft Windows 98的便携式计算机,到运行Microsoft Windows 2000数据中心版的大型处理器服务器。

(3)易于安装、部署和使用 SQL Server 2005中包括一系列管理工作和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用SQL Server的过程。

2. 需求分析

2.1 教育系统学生成绩管理现状分析

2.1.1 学校工作流程分析

学校工作总体规划由教务人员在学生信息管理系统中完成对运行教务处所需的基本数据的维护,包括这些信息的增加、修改及对各项信息的变动都将在这进行操作。

新的学年,教务人员首先加入年级信息,然后编排班级,再对来校学生进行基本的信息录入,新生入学后由教务人员在学籍系统中完成新学生信息的维护。

在每个学期开始,教务处根据班级的情况,以班为单位,为每个班级安排一个班主任及对此年级安排一个年级组长。并对各科老师进行安排。

每举行一次考试后由任课老师对成绩进行录入。班主任对本班的成绩汇总。并进行排名,然后年级组长再进行汇总,并对本年级各科成绩及总成绩进行排名。

教务处、班主任及任课老师跟据实际情况对录入的成绩进行维护,各位同学对以上录入的信息可以跟据自己的需要进行适当的查询。

2.1.2 学校具体需求分析

学生:对各科成绩的查询及查看本班成绩排名等情况。

任课老师:输入并维护所教科目的学生成绩,计算本科的成绩排名、本科成绩在班上的排名。

班主任:输入并维护本班的基本信息,对本班的各科成绩汇总,计算各科成绩的总分,排名,本班平均分等需求。

输出学生的基本信息,各科的成绩及各科成绩的部分,各科成绩的排名,总分的排名情况。

教务处:学校全体成员的信息管理,对考试科目,时间及对所考科目的编号等进行具体的管理,并对任课老师,班主任等输入的信息进行存库,对学生的信息进行必要的维护,可打印学生的成绩信息。

2.1.3 系统设计思想

(1).采用现有的资源,先进的管理系统开发方案,充分利用学校现有的资源,减少开发中的时间和财力、物力、提高系统开发的水平和应用效果。

(2).系统需满足学校的需求,例如学生信息的录入、查询、更新等。

2.1.4 系统设计分析

本系统性能力求易于使用,具有较高的扩展性和可维护性。其功能主要分为七大类:

(1)用户管理:用于对用户的添加,修改、删除及查询。

(2)科目管理:用于对各学期课程的开设和修改。

(3)成绩管理:用于对成绩的输入、修改、汇总及排名。

(4)学生信息管理:添加,删除,修改学生信息等。

(5)授课老师管理:对授课教师及所授班级、科目等信息的添加,维护等。

(6)学生信息管理:对学生基本信息的维护和查询。

(7)专业管理:添加、删除、查询、修改专业信息。

2.1.5 系统功能分析

权限功能:系统具有动态的权限分配功能,可按用户权限对用户进行分组。可分为管理员、教师用户、学员用户。学员用户和教师用户只是查询不能修改,教师用户若用成绩录入权限则可以录入学员成绩(主要为授课老师提供成绩录入功能),管理员可以修改、删除所有信息。

录入功能:有录入权限的教师用户可录入学员成绩,管理员可录入所有信息。

查询功能:为所有用户提供查询的功能,可查询允许范围内的所有信息(用户信息查询仅限管理员)。

维护功能:学员用户和教师用户没有删除和修改权限,管理员可删除、修改相应信息。

退出功能:结束并注销用户登录。

3. 数据库设计与实现

本系统数据库(GradeManage)表有如下9个:

3.1 班级表

表名Classes 主键字段ClassesName

中文表名及(功能) 班级表(班级数据的有关信息)

字段字段名称字段类型长度主外键关联允许空备注ClassesName 班级名称varchar 50 否SpecialtyName 所属专业varchar 50 是TeacherName 班主任姓名nvarchar 50 是StudentNumber 学生人数int 是

图3.1 班级表

3.2 成绩表

表名ComputerScore 主键字段ID

中文表名及(功能) 成绩表(成绩数据的有关信息)

字段字段名称字段类型长度主外键关联允许空备注ID 编号int 否

StudentID 学号varchar 50 否StudentName 学生姓名nvarchar 50 否ClassesName 班级名称varchar 50 是SubjectName 科目名称varchar 50 是TheoryGrade 理论成绩varchar 50 是PracticeGrade 实践成绩varchar 50 是

SumGrade 总成绩varchar 50 是

DateTime 时间datetime 是TeacherName 授课老师varchar 50 是

图3.2 成绩表

3.3 成绩统计表

表名ComputerRecord 主键字段ID

中文表名及(功能) 成绩统计表(成绩统计的数据的有关信息)

字段字段名称字段类型长度主外键关联允许空备注ID 编号varchar 50 否ClassesName 班级名称varchar 50 是SubjectName 科目名称nvarchar 50 是ShouldNumber 应考人数int 是RealNumber 实考人数int 是FewNumber 缺考人数int 是PassNumber 及格人数int 是

FailNumber 不及格人数int 是

TheoryAvg 理论平均分float 是TheoryPass 理论通过率varchar 50 是PracticeAvg 实践平均分varchar 50 是PracticePass 实践通过率varchar 50 是

SumAvg 总平均分float 是

SumPass 总通过率varchar 50 是TeacherName 授课老师varchar 50 是

DateTime 时间varchar 50 是

图3.3 成绩统计表

3.4 授课老师表

表名GiveLessons 主键字段ID

中文表名及(功能) 授课老师表(授课老师信息的有关信息)

字段字段名称字段类型长度主外键关联允许空备注ID 班级名称int 否TeacherName 所属专业nvarchar 50 是SubjectName 班主任姓名varchar 50 是ClassesName 学生人数varchar 50 是

图3.4 授课老师表

3.5 补考表

表名ReExam 主键字段ID

中文表名及(功能) 补考表(补考信息的有关信息)

字段字段名称字段类型长度主外键关联允许空备注ID 编号int 否

StudentID 学号nvarchar 50 是StudentName 学生姓名varchar 50 否ClassesName 班级姓名varchar 50 是SubjectName 科目姓名varchar 50 是

Type 类型varchar 50 是

Score 成绩float 是

ExamTimes 补考次数int 是

ExamDate 补考时间datetime 否

图3.5 补考表

3.6 专业表

表名Specialty 主键字段SpecialtyName

中文表名及(功能) 专业表(专业的有关信息)

字段字段名称字段类型长度主外键关联允许空备注ID 班级名称int 否SpecialtyName 所属专业varchar 50 是

图3.6 专业表

3.7 科目表

表名Subject 主键字段ID

中文表名及(功能) 科目表(科目的有关信息)

字段字段名称字段类型长度主外键关联允许空备注ID 班级名称int 否SpecialtyName 所属专业varchar 50 是SubjectName 科目名称varchar 50 否SubjectType 所属类型nchar 10 是

图3.7 科目表

3.8 学生信息表

表名StudentMessage 主键字段SpecialtyName

中文表名及(功能) 学生信息表(学生信息的有关信息)

字段字段名称字段类型长度主外键关联允许空备注StudentID 学号varchar 50 否StudentName 学生姓名varchar 50 否ClassesName 班级姓名varchar 50 是

图3.8 学生信息表

3.9 用户信息表

表名UserMessage 主键字段UserID

中文表名及(功能) 用户表(用户信息的有关信息)

字段字段名称字段类型长度主外键关联允许空备注UserID 用户编号int 否

UserName 用户姓名varchar 50 否

UserPwd 用户密码varchar 50 否

UserType 用户类型varchar 50 否

IsAdd 能否添加bit 否

图3.9 用户信息表

4.技术简介

4.1 基于B/S结构技术的应用

4.1.1 B/S结构技术发展简述

随着IT技术的高速发展, 互联网几乎已经渗透到人们生活的每一个角落。而网络技术与数据库技术的应用,则大大改变的人们的学习、生活与工作的方式,提高并丰富了人类生活。互联网的发展应用促使网页技术的产生。但在不久后,人们对静态页面并不满足,随后出现了采用CGI(Common Gateway Interface 通用网关接口)和ISAPI(Internet Server Application Program Interface互联网服务器应用程序接口)来编写网页,但它们的编程比较复杂,用Perl或者是VC进行编写,将HTML标识嵌入代码中,维护相当困难。

此后,随着技术日新月异的发展,相断出现了ASP,PHP,JSP等网站开发技术,它们给网站开发带来了一阵狂潮。ASP是一个Web服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的Web服务应用程序,ASP支持VBScript,JavaScript等多种脚本语言。PHP是一种跨平台的服务器端嵌入式脚本语言。其大量地借用C,Java和Perl语言的语法,并耦合PHP自身的特性,使Web开发者能够快速地生成动态页面,PHP是完全免费的,而且可以不受限制地获得源代码,甚至可以按用户需要进行个性化设计。JSP是Sun公司推出的新一代网站开发语言,具有很强的多平台支持和极大的伸缩能力,JSP可在Serverlet和JavaBean的支持下,建立功能强大的Web应用程序。

4.1.2 动态网站开发技术比较

现在,在互联网中流行着多种动态网页实现技术,例如ASP、JSP、CGI、PHP等。对应于这些动态网页技术,也存在有多种多样的Web服务器系统,例如Microsoft IIS、Apache、Cold Fusion等。而对于这些实现动态网页的技术,https://www.wendangku.net/doc/279964391.html,技术可以说是现在最为流行和应用最为广泛的一种。https://www.wendangku.net/doc/279964391.html,向世界展现了一种更为领先的技术,这正是它推出不久就深受开发人员青睐的原因。

WEB开发与数据库是密不可分的。目前流行的数据库有Microsoft公司的SQL Server 2005,IBM公司的DB2,开源的MySQL,以及Oracle公司的Oracle 9i等。在https://www.wendangku.net/doc/279964391.html, Web开发最受青睐的是Microsoft公司的SQL Server 2005。

5. 成绩管理系统详细设计

5.1 项目结构设计

5.1.1总体结构

如图5.1

图5.1.1

该系统采用三次三层架构思想。其中Bll属于业务逻辑层、Dal属于数据访问层、UI属于表现层、Model属于模型层(数据库对象模型)。

5.1.2 Dal 示图

如图5.2

图5.1.2

该层为Bll层提供数据访问的一些方法。DalService.cs提供数据的增删改查操作的方法。DbHelp.cs为DalService.cs提供数据库连接、sql命令执行等对象,方法。ExecelMange.cs提供数据的打印、导入、导出的处理。Paging.cs 提供数据的分页处理。

5.1.3 Bll示图

如图5.3

图5.1.3

该层调用Dal层提供的数据访问的一些方法。BllService.cs提供调用数据层的增删改查操作的方法和一些业务逻辑的处理。

5.1.4 Model示图

如图5.4

图5.1.4

5.1.5 UI示图

如图5.5

模型层包含一些数据库表的对象。为数据的操作和传递起到方便快捷的作

用。

图5.1.5

表现层主要存放用户访问的页面和一些图片资源。其他Common里存放css 样式、Js、Images等文件,Errormsg里包含错误页,Excel用于存放用户导入导出时产生的临时excel文件。

Master存放模板文件,User存放页面文件。

三层架构图例:

如图5.1.6

图 5.1.6 三层架构图

三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的

目的即为了“高内聚,低耦合”的思想。

5.2 用户登录

5.2.1 用户登录页面图

如图5.2.1

图5.2.1

管理员账号:admin

管理员密码:123456

(1)用户登录验证关键代码:

if(this.TB_Check.Text.ToLower()!=Request.Cookies["CheckCode"].Value) {

this.Lbl_Check.Text = "验证码错误";

}

else if (BllService.CheckUsers(UserName, UserPwd) == false) {

this.Lbl_Check.Text = "用户名或密码错误";

}

else

{

Session["UserName"] = UserName;

Session["Logined"] = "true";

Response.Redirect("~/index.aspx");

}

(2)用户名,用户密码验证关键代码:

///

/// 登录验证

///

/// 用户名

/// 密码

/// INT

public static int CheckUser(string UserName, string UserPwd) {

string sql = "select count(*) from UserMessage where UserName = '" + UserName + "'and UserPwd = '" + UserPwd + "' ";

SqlConnection conn = new SqlConnection(DBHelp.ConnectionString);

conn.Open();

SqlCommand cmd = new SqlCommand(sql, conn);

int i = (int)cmd.ExecuteScalar();

conn.Close();

return i;

}

5.2.2用户名、用户密码验证逻辑

当用户单击登录按钮时先验证用户输入的验证码的正误,如果验证码正确在验证用户名和密码的正误,如果验证码不正确则提示用户验证码有误;如果用户名和密码正确,则把用户导向主页index.aspx;如果用户名密码不正确则提示用户用户名或密码不正确。

相关文档