ASP.NET学生成绩管理系统

摘要

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

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

本系统在开发过程中,注意使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。在开发方法的选择上,选择了生命周期法与原型法相结合的方法,遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,而在具体的设计上,采取了演化式原型法,随着用户的使用及对系统了解的不断加深,对某一部分或几部分进行重新分析、设计、实施。本论文主要从系统分析、系统设计、系统实施与使用等几个方面进行介绍。

【关键词】成绩管理信息系统 信息化 数据库 Asp.net

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

2.1.1 学校工作流程分析

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

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

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

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

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

2.1.2 学校具体需求分析

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

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

输出本班科目的成绩及排名情况。

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

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

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

4.1 系统结构

本系统从功能上划分可分为以下几大模块:功能模块管理,组权限管理,学生信息管理,课程信息管理,学生成绩管理,授课信息管理,学生信息查询,学生成绩统计等几大模块。以下将对各子模块进行说明。

功能模块管理:将系统功能模块保存到数据库中以便于动态地进行不同用户组权限的分配等操作。本模块包括功能模块的添加,删除,修改等。

组权限管理:对用户进行分组,并将权限设置到不同的用户组。

学生信息管理模块:输入学生基本信息,并可以对学生信息进行添加、查询、修改、删除。还可以关键字查询并从数据库里调出的学生基本信息.输出学生基本信息,学号、班号、姓名查询的信息结果。

课程信息管理:设置课程号,课程名,先修课等课程信息。

成绩信息管理模块:输入成绩信息,并可以对成绩信息进行添加、查询、修改、删除。还可以用关键字查询并调出数据库里的学生基本成绩信息的修改、删除等。输出查询的学生成绩信息。

授课信息管理:对教师授课信息的调度,安排等信息的管理。

学生信息查询:本模块是可对学生成绩进行查询,可按学号,姓名,年龄,所在院系,入学年份等不同条件独立查询或进行模糊查询。

学生成绩统计:对学生成绩总分,平均分等进行统计。

系统模块图:

(图9)

4.7 主要求程序设计说明

4.7.1 管理用户登录模块

登录模块图示如下:

页面程序说明

|---------|------------------------------------------|
| 程序名称 | |
| 程序文件 | Login.aspx |
| 页面传入参数 | Username,password |
| 页面提交URL | |
| 页面传出参数 | Session["username"] Session["group"] |
| 功能说明 | 登录系统 |
| 特殊注解 | |

处理程序说明

|------|----------------------------------------------------|
| 程序名称 | |
| 程序文件 | Login.cs |
| 页面转向 | 转向条件:管理员 转向页面: Main.aspx 转向条件:普通用户 转向页面: Main.aspx |
| 功能说明 | 判断系统登录条件 |
| 特殊注解 | 在此处系统实际只进入Main.aspx |

处理逻辑说明

通过URL链接至服务器端的入口Login.aspx,点击"登录"系统将页面的参数"用户名称和用户口令"通过Codebehind技术设置处的Codebehind="Login.aspx.cs" 及Inherits="GradeMis.Login"文件中对应的类取得传至后台的参数,根据Login类中的UserLogin方法执行结果返回的转向参数调用下一页面Main.aspx。

Main.aspx依据Login.aspx传过来的userid反查确定用户类,而已输出不能的用户可操作的功能模块链接。

参照主要类

|-----------------------------|-----------------|----|
| 名称 | 功能 | 备注 |
| System.Web.SessionState; | Web应用程序session类 | |
| System.Web.UI; | 系统UI类 | |
| System.Web.UI.HtmlControls; | 系统Html控件类 | |
| System.Web.UI.WebControls; | 系统Web控件类 | |
| System.Data.SqlClient; | 系统sql数据操作类 | |
| System.Web.Security; | 系统安全策略类 | |
| AirMis.Login | 用户登录处理类 | |

用户退出系统页面

页面程序说明

|---------|---------------|
| 程序名称 | |
| 程序文件 | LoginOut.aspx |
| 页面传入参数 | 无 |
| 页面提交URL | 无 |
| 页面传出参数 | 无 |
| 功能说明 | 退出系统 |
| 特殊注解 | |

处理程序说明

|------|----------------------------|
| 程序名称 | |
| 程序文件 | LoginOut.aspx |
| 页面转向 | LoginOut.aspx->Login.aspx |
| 功能说明 | 退出系统 |
| 特殊注解 | |

处理逻辑说明

通过URL链接至服务器端的出口LoginOut.aspx,点击"退出"系统,将在Page_Load()中调用 Session.Abandon()清除当前登录用户的Session信息并将页面引导向login.aspx;

4.7.2 类设计说明

类设计是基于OO的设计方法,采用三层体系结构方式,如下图所示:

4.7.3 管理功能模块设计

管理功能模块的实现是将系统里的各个功能模块类(具体是有.cs文件生成类,对于具有前台页面的文件由.aspx表现在浏览器中)组织保存到数据库中,由此来进行系统功能的动态添加,并且这是对用户进行权限分组的一个前提。

  1. 取得系统功能模块信息并绑定到DataGrid控件上。

string sql = string.Empty;

sql = string.Format("select * from AdminUrl");

SqlDataAdapter da = new SqlDataAdapter(sql,conn);

DataSet ds = new DataSet();

try

{

da.Fill(ds,"t");

this.DataGrid1.DataSource = ds.Tables["t"];

this.DataGrid1.DataBind();

}

catch

{}

取得功能模块信息后,将对功能模块的删除编辑等操作绑定到aspx页面上.

  1. 功能模块管理前台页面代码如下所示:
相关推荐
海绵波波1071 小时前
flask后端开发(10):问答平台项目结构搭建
后端·python·flask
网络风云3 小时前
【魅力golang】之-反射
开发语言·后端·golang
Q_19284999063 小时前
基于Spring Boot的电影售票系统
java·spring boot·后端
运维&陈同学4 小时前
【Kibana01】企业级日志分析系统ELK之Kibana的安装与介绍
运维·后端·elk·elasticsearch·云原生·自动化·kibana·日志收集
Javatutouhouduan6 小时前
如何系统全面地自学Java语言?
java·后端·程序员·编程·架构师·自学·java八股文
后端转全栈_小伵7 小时前
MySQL外键类型与应用场景总结:优缺点一目了然
数据库·后端·sql·mysql·学习方法
编码浪子7 小时前
Springboot高并发乐观锁
后端·restful
uccs8 小时前
go 第三方库源码解读---go-errorlint
后端·go
Mr.朱鹏8 小时前
操作002:HelloWorld
java·后端·spring·rabbitmq·maven·intellij-idea·java-rabbitmq
编程洪同学9 小时前
Spring Boot 中实现自定义注解记录接口日志功能
android·java·spring boot·后端