基于SOA的教育资源管理系统整合设计

2012-12-31 00:00:00易昌松
科技资讯 2012年32期

摘 要:文章对我国高校内部系统建设的现状进行了简要分析,提出了将SOA引入并实现平台整合的构想,对SOA的设计思想、协作关系、基本要素等进行了研究,提出了平台整合的目标和功能需求,最后对体系结构和功能模块进行了设计。

关键词:SOA 教育资源 系统整合

中图分类号:TP3 文献标识码:A 文章编号:1672-3791(2012)11(b)-0176-02

目前国内许多高校内部同时运用着多个教育信息及资源管理系统,如教务系统、图书管理系统、网络课程教学平台、试卷库等。由于开发工具、平台的异构性和紧耦合性等原因,这些系统之间相互独立,资源共享与软件复用性差。

为进一步提高资源的共享性,充分发挥统一平台的优势,我们需要将现有的教育资源系统进行整合。但是,如果选择重新开发新平台来实现系统的整合,实现的周期比较长,投入较大,同时,各种资源又缺乏统一标准,难以保证资源整合的合理性和有效性。如何规避各系统运行平台和开发环境间的差异,在短时间内,以较小的开销,实现现有教育资源系统进行有理整合,已成为高校信息化建设的重要课题。面向服务的软件架构思想(Service-Oriented Architecture,SOA),为解决这些问题提供了一个很好的方案。

1 SOA,面向服务的软件架构思想

1.1 SOA的定义

目前,SOA的定义可以大致分为两类:一类认为SOA仅是一种架构风格;另一类认为SOA是包含运行环境、编程模型和架构风格等在内的一整套分布式软件系统的构造方法和环境。

在面向服务体系结构中,业务逻辑被封装为一系列服务,服务之间相对独立并可以重用,他们之间通过定义好的接口和协议交互,这些接口和协议基于统一的标准进行定义,独立于实现各服务的硬件环境和编程语言。

1.2 SOA的基本要素

在实施SOA的过程中必须满足下四个基本要素。

(1)粗粒度。即SOA中服务的接口应该接近用户的实际操作。

(2)松散耦合。包括服务之间不互相依赖,接口与实现之间松散耦合,业务组件和传输协议之间松散耦合。

(3)位置透明。即无论服务组件的URL如何变化,客户端的调用程序URL都不需要改变。

(4)传输协议透明。即无论服务组件的传输协议如何改变,客户端的调用程序都不需要改变。

1.3 SOA的协作体系

服务请求者根据需要申请服务,利用服务注册中心查找所需的服务,最后使用定义的接口和传输协议与服务进行绑定,从而最终获得服务。服务提供者将业务逻辑封装为服务并发布到服务注册中心,响应来自请求者的服务请求。服务注册中心,即服务代理,负责注册、分类已经发布的服务,并为请求者提供搜索服务的功能。

1.4 SOA的优点

SOA提供了一个非常自由的开发架构模式,开发方法、实现技术得到了解放,开发效率大大提升。具体地讲,SOA有如下一些优点。

(1)对于变化应对自如。服务提供者和使用者之间是松散耦合的,对于系统的表示层只能看到服务接口,而不需要关心接口内部的实现细节,当某个服务的内部发生改变时,不会影响其他服务。

(2)跨平台和重用性好。服务之间可以通过标准接口自由引用,而不用考虑所要引用的服务的实际位置、硬件环境及开发语言等,服务之间松散耦合,系统的重用性好。

(3)维护性和可伸缩性好。服务提供者和使用者之间松散耦合,采用开放的标准,服务提供者可以更新自己所提供的服务以不断满足使用者的新需求。

(4)现有资源利用充分。通过组合现有的各个服务,可以快速地实现资源整合,有效减少开发周期和成本。

2 教育资源管理系统整合需求分析

2.1 系统设计目标

基于SOA的教育资源管理系统整合的目标是:充分利用各个现有系统提供的服务,以较短的周期和成本支出,整合得到一个统一的平台,对各种教育资源进行统一、规范化的管理,构建分布式的、共享的数字教育资源环境。具体来讲,需要实现以下目标。

(1)教育资源有机整合。将现有的各个系统整合到一个平台下,为用户提供统一的接口,充分发挥现有系统的服务功能,从而实现资源的有机整合。

(2)新系统与现有系统功能上独立,新系统的更新不会对原有系统产生影响。

(3)通过统一平台对教育资源进行规范化描述,高效管理各类资源。

(4)整合代价低,系统灵活性强。对现有各系统整合的周期不宜长,代价不宜过高,确保系统的灵活性,能较快适应业务需求的变化,可扩展性好。

2.2 系统功能需求

为实现设计目标,整合的平台系统应具备如下功能。

2.2.1 系统管理功能

(1)用户管理。包括用户注册、维护及角色权限分配等。

(2)数据备份。便捷地对系统的数据进行备份、支持异地备份。

2.2.2 资源管理功能

(l)对各种资源数据的日常维护,包括添加、更新、删除等。

(2)具备功能强大、人性化的资源检索功能。支持精确查询和模糊查询功能,也可以根据分类浏览资源。

(3)资源评价功能。资源的使用者可以查询其他用户对相关资源的评价作为选择资源的参考,同时可对资源进行量化评价,也可以发表评论,供资源管理者作为资源库建设的参考。

(4)资源远程上传和下载。可以通过网络客户端对资源进行上传、上载。

3 教育资源管理系统整合设计

3.1 系统体系结构设计

根据SOA的系统整合架构模型,可将整合平台的体系结构划分为以下五层。

(1)数据层:负责管理平台中数据,提供数据信息。包括现有教务系统、公共教学平台的数据库和本平台的资源库。

(2)数据访问层:负责服务组件层与底层间的数据交换。在不改变现有各服务的前提下封装各自的数据访问功能并通过对外接口供服务组件层调用。

(3)服务组件层:各服务组件均只实现各自单一的功能,可以通过定义SCA来封这些服务的接口,以实现服务的有效整合。

(4)服务层:负责实现系统业务逻辑。通过整合各服务组件,形成松散耦合的服务模块,提供面向业务逻辑的接口。

(5)Web层:包括表示层和控制层,表示层提供了用户与系统的交互界面,控制层负责接收用户请求并调用相应的服务完成相关操作,最后将结果返回Web页面。

3.2 系统功能结构设计

根据整合平台的需求分析,系统的总体上可划分为五个功能模块:系统管理、资源数据管理、资源浏览、统计报表、用户面板。

(1)系统管理。包括用户权限管理、系统的备份、相关文章、信息的维护等。

(2)资源数据管理。负责按照教育资源元数据的标准采集、管理资源数据。包括资源的发布、审核、维护、检索、推荐和评价管理等。

①资源发布。负责按照教育资源元数据的标准采集工作,即有相应权限的用户通过平台录入发布资源。管理员、教师、学生发布资源的权限有所不同,发布的方式也有所不同,如课程教学资源还是公共学习资源等。

②资源审核。普通用户,如学生发布资源时,需要经过管理的审核才能正式发布,供其他用户查询、下载,审核不通过的资源将被删除。具有高级权限的教师或其他管理员可直接发布资源,无需审核。

③资源编辑。具备相应的修改权限的用户,可对资源进行修改、更新,系统管理员或资源管理员可以修改和删除所有资源。普通用户只能修改和删除自己发布且未经审核的资源。

④资源检索。根据用户选择的条件组合或录入的关键词从数据库中查找出符合条件的结果,返回给用户。用户可以查看相应资源的简介和详细信息,也可下载该资源或将该资源添加到个人收藏夹。

⑤资源推荐:管理员、教师甚至学生可以对优质资源进行推荐,推荐的结果也是分类的,显示为管理员推荐、某教师推荐和多少名学生推荐等。

⑥资源评论:管理员、教师、学生可以对相关资源进行评价,评价有量化打分和留言两种方式,评价结果分类显示,包括管理员评价、教师评价和学生评价等。

(3)资源浏览。可根据资源所属学科、资源类型(课程资源、公共学习资源等)、资源级别(精品、推荐等)等浏览资源。用户在浏览的过程中根据需要将相关资源放入平台中的个人收藏夹中或下载到用户电脑中。

(4)统计报表。对各类资源的发布数量、各项资源的被引用、推荐、下载情况等进行统计,对用户评价进行汇总分析,帮助管理员了解资源的总体情况,有针对性地进行开发和补充,引导用户访问优质资源。

(5)用户面板。用户登录后可进入个人面板,包括个人基本信息的维护、浏览记录查询、个人收藏夹、修改密码等。

本文从实际需求出发,引入SOA的架构思想,对教育资源管理系统进行了整合设计,提出的设计目标、功能需求、平台的体系结构,并各模块所要实现的功能进行了描述,为高校内部资源系统整合提供了的途径和方法。

参考文献

[1] (美)Thomas Erl.SOA概念,技术与设计[M].王满红,陈荣华,译.机械工业出版社,2007.

[2] 王紫瑶,南俊杰,段子辉,等,SOA核心技术及应用[M].电子工业出版社,2008(5).

[3] Dirk Krafzig,Karl Banke,Dirk Slama,等.著,面向服务架构的最佳实战[M].韩宏志,译.清华大学出版社,2006(14).