APP下载

中小学分布式学籍管理系统的设计与实现

2013-04-29韩金

教师博览·科研版 2013年9期

韩金

[摘要]一个以J2EE轻量级体系结构为基础的系统框架,以基于MVC设计模式为设计理念,基于B/S架构的分布式存储的中小学学籍管理系统。网络数据传输采用https协议,保证了数据的有效性和安全性。采用统一的JDBC数据访问接口,实现了数据库管理系统的异构,可以支持多种不同的关系型数据库管理系统。采用分布式存储的解决方案,利用WebService的接口调用设计统一的数据访问接口,解决数据存储的分布式和异构性,实现学籍的跨校、跨区异动与审核。

[关键词]教育信息中心;J2EE;MVC;分布式存储;学籍管理系统

一、国内外现状

当前市场上学生学籍管理方面软件较多,但一般都是单机版和单校园网版。而就现在学生学籍信息管理的发展趋势,以及各个省市的教育城域网建设范围的逐步扩大,这种单机版和单校园网版的管理软件并不是很实用。随着学校办学规模的扩大、专业设置和学生人数的逐年增加以及学籍跨校、跨区县异动的复杂性大大增加,原有的学籍管理系统已经很难适应当今广大学校的发展要求,因此急需一套基于网络的分布式解决方案,实现学籍的跨学校、跨区县异动,以及跨区县的多级管理,实现管理信息现代化、规范化和科学化的学籍管理系统是现代学籍信息管理系统的发展趋势。[1]

二、主要相关技术

分布式计算是目前主流的一种软件架构模式,但是市面上还没有推出基于分布式的学籍管理系统。分布式存储具有安全、稳定、高效等诸多优点,是分布式软件系统的一个重要标志,本系统中的数据存储采用了分布式的方式,以实现学籍数据的跨校、跨区异动与审核。分布式具有以上优点的同时也增加了系统开发的复杂性和难度,本系统是利用统一的数据访问接口来实现对数据库的异构式访问。

系统分为中心版和学校版。中心版与学校版通过WebService进行系统间的数据通讯,实现数据的统一汇总与管理,并且保证了数据的一致性。

1.学籍数据的分布式存储与数据交换

系统中的学籍管理信息的框架为EMIF体系结构的多区域结构:EMIF是一个分布式的联网系统,由一个或多个EMIF区域组成,每个区域都由一台区域集成服务器和多个应用程序及其代理组成。这样就可以建立学校与教育局之间的互联系统。如图1所示:

2.实现数据库的异构

系统中不同版本之间的数据通讯采用WebService接口进行操作,实现了不同的版本可以采用不同的数据库管理系统。如图2所示,不同的数据库系统之间通过WebService进行统一的数据交换与管理,实现了对数据库管理系统的异构。中心版因为数据量大,可以采用SQL Server;学校版数据量不大,可以采用Mysql。

3.对学籍管理业务的研究

为了实现对学籍数据的电子化管理,需要详细了解并分析传统方式中学籍管理业务的需求与流程。通过分析,系统需要对学校设置、机构设置、学籍和成绩进行管理,还需要对用户和权限进行系统管理,以及保证不同版本系统间的数据报送。下面部分是系统具体的功能要求和权限设置。

三、系统设计与分析

采用B/S架构进行开发,浏览器是B/S结构(Browser/Server结构)的系统使用的客户端。随着网络技术的发展,通过各种网络浏览器直接作为软件系统的客户端,用于表现用户工作界面成为可能,前端浏览器中实现一部分业务逻辑,更多的业务逻辑放到后台服务器中去实现,形成三层开发结构。[2]这样做可以最大程度地减轻客户端的负载工作量,最大限度地降低系统客户端升级和维护的复杂性和成本。

1.开发中的约定

好的系统设计需要遵循科学的设计方法和理念,更需要良好的开发习惯。本系统的开发遵循了一些统一的开发规则。

2.关于数据的一致性

对于分布式应用来说,不同子系统和数据库中的数据一致性是很重要的一个方面。为了保证这一点,本系统在设计的时候采用每个单位分配唯一编码,单位下的所有数据跟单位唯一编码相关联,这样数据汇总到一起的时候可以通过单位唯一编码来保证唯一性,保证了数据的一致性。

四、系统主要功能

1.系统功能列表

2.功能介绍

教育局注册:设置教育局名称、管理员以及所在地行政区划码。

机构设置:管理教育局内处室、职工信息以及直属学校。

学校信息:查看已经报送数据的学校的所有报送信息,包括学校信息、职工信息、学生信息等。

学校设置:对系统的各项信息进行数据的初始化,包括机构设置、年级设置、班级设置等日常工作的初始化。

学生管理:对学生的各项信息进行管理,包括学生新生入学管理、开学报到入册、学籍异动等。

查询工具:向导式的操作,随需应变的灵活性,根据用户设置的查询条件,可以迅速得到所需信息。

数据报送:利用Web Services实现代理信息的注册后,按照相同的标准进行数据报送。

系统设置:对本系统的子系统和模块进行便捷管理。

权限管理:管理员包括子管理员,可对权限进行分组,可将人员加入到已经创建的权限组。

代码设置:对所有的代码进行管理。

数据导入:提供了一个易用的数据导入工具(利用了Web Start技术),只需简单的操作就可把已经存在的学生及教职工资料迅速地导入到本系统中。

系统设置:对本系统的子系统和模块进行便捷管理。

权限管理:管理员包括子管理员,可对权限进行分组,可将人员加入到已经创建的权限组。

图4展示了系统的登录流程。权限查询标签库:

reverse="Y" scopeKey="<%=key%>" userID="admin">

管理