张利群 张述耀 罗旋辉
[摘 要] 分析高校教务管理系统现状,基于高校教务管理,结合高校教务工作的实际情况,设计了一套高效的高校教务信息管理系统。系统采用B/S的体系结构及.NET技术,改变以往高校教务管理系统的封闭状况,实现教务信息管理的网络化、数字化、自动化,使教务信息管理工作有序高效地进行。
[关键词] .NET架构; 教务信息管理
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2014 . 10. 075
[中图分类号] G64 [文献标识码] A [文章编号] 1673 - 0194(2014)10- 0107- 04
目前我国高校规模不断扩大,学生不断增多,且随着时间增加,学生以及批次更新,高校教务管理的逻辑也越趋复杂,传统的C/S模式的高校教务系统暴露出客户端与服务器端负担过重现象[1]。由于这类系统数据非常独立,用户只能通过系统客户端进行访问,大量有价值的信息无法提供给领导层做出决策,也无法提供给学生指导学习。
随着互联网技术应用的快速兴起和发展,特别是高校教学改革的深入,建立基于Web的高校教务管理系统可以通过网络把采集信息工作整合到行政人员的日常的事务处理中去;充分发挥处、系、室、部和校区的教学管理职能,提升各级部门单位的教学管理质量、水平、效率;可以有效解决教务信息管理的信息量大、信息准确性低、信息采集难、信息反馈滞后等问题,从而全面实现教务信息管理的网络化、数字化、自动化,使教务信息管理工作有序、高效地进行。
1 基于.NET信息系统架构
.NET的三层架构是指数据访问层(DAL)、用户界面层(UI)和业务逻辑层 (BLL)。基于.NET三层架构的Web系统是一个繁杂的分布式的系统。典型的Web信息系统主要是由数据访问层、业务逻辑层和数据表示层组成的[2],如图1所示。
1.1 用户界面层
在ASP.NET中,用户界面层主要是由.aspx文件作用的,本层的主要功能是:把页面提交的数据,经过基本的校验(比如是否数字、字符长度和是否符合某规则表达式等),发送到应用程序层,再从应用程序层送回数据,最后由页面来呈现。
1.2 业务逻辑层
业务逻辑层是从用户界面层获得数据,并创建一个业务所需的全部查询、插入、变更及删除等业务运作,然后把操作的指示命令传送给数据访问层,并从数据访问层送回数据,送回到用户界面层。一个业务逻辑便可能包括多个查询、插入、变更和删除等操作。
1.3 数据访问层
接受来自业务逻辑层的查询、插入、变更和删除等命令,依据通用数据库的访问模块对数据库进行处理操作,把从数据库中返回来的数据,重新返回到业务逻辑层。每一个操作均不能够再细分。[3]
基于.NET的分层式结构的优越性在于:
(1)开发人员可以仅仅关注整个结构中的某一层;
(2)可以很轻易地用新的实现替代旧的层次的实现;
(3)可以较小层与层之间的关联;
(4)利于规范化;
(5)有利于各层逻辑的反复使用。
2 系统设计思路分析
本文设计研究和开发的是基于网络的高校教务管理系统,主要是通过对教育教学活动的管理(如课程的安排、课程信息和教学的过程评估)来实现教务人员的教学管理活动及其教学信息资源科学化动态的管理。
如图6所示,高校教务管理系统由系统管理、教师管理、教学管理、学生管理、公共信息管理等6个子系统组成。各个子系统根据功能的不同进行详细的划分:系统管理的子系统包含有用户权限和系统维护功能;教师管理的子系统包含有教师管理和教务信息查询功能;教学管理的子系统包含有教学计划管理、考试管理、选课管理及课程管理等功能;学生管理的子系统包含有学籍管理、注册收费管理、成绩管理及选课管理等功能;公共信息管理的子系统包含有课程信息管理、系别专业信息管理、班级信息管理及学年学期信息等功能。
4 系统的实现
基于对高校教务管理业务了解分析及系统的总体规划,本系统为了解决教务信息管理用户集中、处理数据大的问题,同时能够使得学生最大范围地使用该系统的问题,设计上以SQL Server 2005作为后台数据库,采用了.NET编程技术,而整个系统架构为B/S架构[4]。
本系统运用三层结构研发,能够合理划分各阶层功能,使之在逻辑上能够保持相对的独立性,从而使整个系统的逻辑结构上更为明了清晰,提高了系统的可扩展性和可维护性;规范写出程序代码,提高了重用度,减少耦合度;充分利用了业务逻辑层,并有效地分离开表示层和数据层,未经授权的用户很难绕过中间层请求数据层[5]。诸如在学生管理子系统中的学生信息列表,页面以分页导航的方式进行学生记录的查询,每页显示10条学生信息,在页面的上方提供查询条件,可以让用户有选择地根据条件进行查阅,筛选条件有学生编号、学生姓名、身份证号、隶属专业、隶属班级等,条件为组合查询,用户通过组织不同的筛选条件来进行信息的查阅。如果所有的筛选条件都为空的情况下,则默认以分页模式展现全部记录,改页面上提供新增学生和删除学生信息。逻辑代码示例如图7所示。
//搜索学生信息
string strs = ((TextBox)sender).Text;
((TextBox)sender).Text = string.Empty;
int StuId = Stu.HW_StrToInt32(hifstuId.Value);//学生id
int PushId = 0;//推送Id
string shareState;//当前状态
int ClassId = 0;//班级id
//分割数组分别赋给以上变量
string[] arr = strs.Split('|');
if (arr.Length == 3)//有3个值才是确定的
{
PushId = Convert.ToInt32(arr[0].ToString());
ClassId = HWF.HW_StrToInt32(arr[1].ToString());
shareState = arr[2].ToString();
if (shareState == "1")
{
Model.T_ StuIdPushM workPush = new Model.T_ StuIdPushM()
{
StuId = StuId,
ClassId = ClassId,
WorkPcnt = 0//分组提示率 默认80%
};
bllStuIdPush.QueryStuPush(stuPush, stuId);
InitClass();
}
同样的,整个系统的功能都采用上述设计模式和设计方法来实现,在此就不一一列举。
5 结 语
高校教务管理系统是高校教务管理工作中的重要的信息化平台,实现了对学校招生、培养、毕业信息管理以及日常行政工作辅助支持的重要功能。系统的实现提高了高校教务信息管理工作的开放,减少了教务管理工作人员的压力,为教师和学生均提供快速、方便及开放式的服务,为高校的教务管理工资提供了高效的决策支持。
主要参考文献
[1]管岭.基于B/S结构的教务管理信息系统设计与实现[D].成都:电子科技大学,2006.
[2]梁文娟,郑逢斌,杜莹,等.抽象ZT模式在.NET多层分布式程序中的应用[J].计算机时代,2006.
[3]喻翔玮.基于.NET的高校教务管理系统中的一些关键技术的研究与实现[D].苏州:苏州大学,2007.
[4]刘振华.B/S模式高职学生管理系统研究与设计[D].天津:天津大学,2006.
[5]季丽萍.浅谈.NET二层结构及其应用[J].福建电脑,2009(6).