教育资源建设是现代远程教育工程的核心。也是公司教育信息化事业部的核心业务。公司经营教育资源多年,在对资源的搜集、整理过程中,也对教育资源库的建设进行了大量实践。由于教育资源建设对教育信息化建设的重要性,也因此产生了很多生产教育资源的厂商。这些资源厂商都有资源平台。而平台的建设又无统一标准,这使资源的共享、推广受到极大的阻碍和限制。所以目前广大师生及学校非常迫切的,需要一套基于标准的、开放的、分布式的、大容量的教育资源库。
目前从事教育资源建设的商厂,如
中教育星,
K12
,清华同方,国家基础教育资源网等,他们的资源各有特色,并且每个资源平台各自独立。这给资源的使用者带来了,很多麻烦,如资源的购买、资源的检索、资源的共享、基于资源的学习、教学平台的开发等。造成这样的原因主要是因为教育资源的描述缺乏统一的标准,还有就是各厂商对资源平台的重复建设,所带来的资源隔离。
教育资源库在黑龙江省的广泛推广所取得成功,进一步说明融合各资源厂商的资源的重要性。不但给用户来了方便,同时也赢得了广泛的市场。
目前国内还没有一套能融合各个资源厂商或资源的系统。教育资源库立志要建设成国内第一个大容量的资源平台。并且平台能纳入任一资源厂商的资源。
2.2 现况分析
现在,国外的一些组织机构已经出台了一些关于教育资源的相关标准,其中比较著名的有:IMS的Learning Resource Metadata(学习资源元数据规范)、IEEE LTSC(Learning Technology Standards Committee,学习技术标准委员会)的LOM(Learning Object Metadata:学习对象元数据模型)、OCLE(Online Computer Library Center)Dublin Core的Dublin Core元数据标准
国内也推出了一些相应的规范和标准、如:CETLS
《教育资源建设技术规范》从较为宽泛角度界定了一些描述教育资源的相关标准及元数据。并且国内也有一些资源提供商实现了此标准。
这些标准应需求而生,同时需求又推动了标准的制定。由于有了资源描述的标准,这就使资源的共享、互换成为可能。
1、
对目前主流教育资源库的充分了解。
2、
对国内外教育资源相关标准的理解。
3、
对教育资源库开发的经验积累。
教育资源库的项目目标是建设国内首家超大容量的、门户式的教育资源平台。以灵活的开放式架构、导入各资源提供商的资源,以及资源共建和作。以高性能的资源检索组件、方便用户对资源的查找。以符合标准的资源描述结构、方便资源的共享及交换。
教育资源库主要是针对中小学基础教育,共享资源而设计的门户式的资源平台,这样能极大的方便学生和教师对资源的访问。也便于一些学习管理类的软件的集成和一些教学管理类的软件的集成,必免重复建设,另也能帮助资源提供商对资源的推广。
教育资源库要求高可扩展性,即能存储各类现存的教育资源。如媒体素材:文本素材、图形(图像)素材、音频素材、视频素材、动画素材;试卷、教案、课件、案例等。
教育资源库要求灵活开放式架构,即不仅要提供符合
《教育资源建设技术规范》
标准的资源的导入、导出,而且要提供各资源提供商自有平台的简单接入。
教育资源库要求建设为分布式系统,即支持教育资源的分布式存储,达到一网多库的整合目标。
教育资源库要求高性能的信息检索,即要提供高效的全文检索引擎。
教育资源库的资源存储是项目的重点,要求设计出合理数据结构,并能存储现存的各类教育资源及学习对像资源。而且还要求提供符合
《教育资源建设技术规范》标准的导入导出接口。
教育资源库的信息检索是也项目的重点,要求能快速的检索资源。并要求支持全文检索,支持各类载体,文本、
WORD
、
HTML
、
PDF
、数据库等。
资源库的资源存储以LOM模型为基础。LTSC是IEEE下的一个专门对教育软件、教育资源、教育信息系统开发管理和维护进行规范的标准化组织。LOM(Learning Object Metadata)是他们的一个重要标准,目前最高的版本是6.01。IEEE LOM模型是层次的。在最顶层是根元素。根元素中包含了许多子元素。如果子元素中还包含了其它的子元素,则它被称为“分枝”。子元素中不包含其它的子元素,则它被称为“叶子”。这整个层次模型被称为文件的“树结构”。LOM根元素下共有九种子元素,囊括了资源描述的方方面面,并且覆盖了Dublin Core元素。
Dublin Core
是一个致力于规范Internet资源体系结构的国际性联合组织,它定义了一个所有WEB资源都应遵循的通用的核心标准,标准内容较少,也比较通用,因此,得到了其它相关标准的广泛的支持。其它关于学习资源的数据标准,基本上都兼容Dublin Core标准,并对它作了扩展。CETLS
《教育资源建设技术规范》直接取材于
Dublin Core
。
下面是Dublin 与 LOM 元素的映射表:
Dublin
Core
|
IEEE LOM
|
Identifier
|
General Identifier Entry
|
Title
|
General Title
|
Language
|
General Language
|
Description
|
General Description
|
Subject
|
General Keyword
|
Coverage
|
General Coverage
|
Type
|
Educational LearningResourceType
|
Date
|
LifeCycle Contribute Date
|
Creator
|
LifeCycle Contribute Entity where LifeCycle.Contribute.role.value is“Author”
|
Contributor
|
LifeCycle Contribute Entity
|
Publisher
|
LifeCycle Contribute Entity where LifeCycle.Contribute.role.value is“Publisher”
|
Format
|
Technical Format
|
Rights
|
Rights Description
|
Relation
|
Rights Resource Description
|
Source
|
Rights Resource
|
教育资源库是一个基于分布式的学习资源存储系统。为学生、教师在学习和教学活动提供资源共享的开放平台,便于学生和教师发布和搜索资源。
整个系统分为三个核心子系统:
l
学习对像资源库子系统,基于LOM规范,使用.NET 2.0和MS SQL 2005开发。服务器使用Windows 2003 IIS6.0
l
学习对像资源索引子系统,基于DotLucene搜索引擎构建,提供高性能的全文检索服务。通过提供添加索引接口,集成第三方教育资源库系统。
l
身份认证子系统,基于Yale Cas(Central Authentication Server)服务构建,提供统一的单点登录服务。便于第三方教育资源库系统的集成及商业动作。使用Java 和Tomcat服务器开发。
LOM(Learning Object Metadata)
规范的学习对像描述是目前最合理的元数据表示,能很好的描述所有学习资源,并且非常灵活,便于扩展。而且还涵盖了Dublin Core描述规范,及CETLS描述规范。
DotLucene
搜索引擎是非常成熟的,并且早就用于商业产品中,利用它可以轻易地为软件加入全文搜寻功能。DotLucene 的最主要工作是替文件的每一个字作索引,索引让搜寻的效率比传统的逐字比较大大提高,DotLucen提供一组解读,过滤,分析文件,编排和使用索引的API, 它的强大之处除了高效和简单外,是最重要的是使使用者可以随时应自已需要自订其功能。
耶鲁大学开发的单点登录(Single Sign On)系统称为CAS(Central Authentication Server)被设计成一个独立的Web应用程序(cas.war)。它目前用几个Java Servlet作为实现并且通过一个Https服务器来运行。
4.3 设计原则
l
适用性:软件设计要能够满足软件的功能性需求和非功能性需求。
l
稳定性:软件设计要能够高度抽象出固定的、通用的需求,设计出可重用度高的体系结构。
l
可扩展性:软件设计要能够适应一定的变化,便于将来扩展一些新功能。
l
可复用性:软件设计要能够设计出通用的体系结构,便于其它学习管理系统的集成复用。
4.4 设计思想
教育资源库整体设计架构为以索引服务为前端总线,集成所有第三方资源库系统或平台,以身份认证服务统一用户对资源的访问。
其中学习对像资源库为自有资源库,以LOM规范构建,并支持Dublin Core和CETLS标准。
身份认证服务主要提供单点登录功能。
教育资源库总体架构图如下:图一
学习对像资源库
|
资源库
|
K12教育资源库
|
网络资源
|
身份认证服务
|
索引服务
|
4.5 备选解决方案
教育资源库方案二只实现学习对像资源库,不实现统一的跨域单点登录系统,不实现高性能的全文索引服务。
方案二功能单一、与现有资源库平台功能基本等同,只是系统体系结构不同。另外方案二能符合LOM、Dublin Core、CETLS规范。
方案优缺点比较表格:
比较项目
|
方案一
|
方案二
|
方案三
|
……
|
技术难度
|
高
|
低
|
|
|
效率
|
高
|
低
|
|
|
经济性
|
高
|
低
|
|
|
安全性
|
中
|
中
|
|
|
可靠性
|
高
|
中
|
|
|
性能
|
高
|
中
|
|
|
优点
|
集成性高,可扩展性强,业内领先
|
构造简单易于实现。
|
|
|
缺点
|
系统复杂度高
|
功能单一,性能差
|
|
|
其他
|
|
|
|
|
建议选择方案一,由于实现了三个核心子系统,认证服务,索引服务,学习对像资源库。从长远来看为将来扩统其它教育服务提供了基础框架,另外就资源库本身是性价比比较高的,基本可以实现教育资源的门户地位,因此也拥有了更多的商业价值。
教育资源总体设计为三个核心子系统:认证服务子系统、索引服务子系统、学习对像资库子系统。架构图见图一。
索引服务子系统架构:图二
DotLucene
的索引机制的架构。DotLucene 使用各种解析器对各种不同类型的文档进行解析。比如对于 HTML 文档,HTML 解析器会做一些预处理的工作,比如过滤文档中的 HTML 标签等等。HTML 解析器的输出的是文本内容,接着 Lucene 的分词器(Analyzer)从文本内容中提取出索引项以及相关信息,比如索引项的出现频率。接着 Lucene 的分词器把这些信息写到索引文件中。
HTML Parser
|
PDF Parser
|
WORD Parser
|
TEXT Parser
|
Index Files
|
Lucene Analyzer
|
身份认证服务子系统架构:图三
在一个CAS身份验证应用中的作用,重要的是先理解一个典型的CAS身份验证场景是如何工作的。考虑一个请求受保护服务的流程,如图所示。
图 使用Yale CAS保护一个应用
当Web浏览器请求一个服务时①,服务通过在请求中寻找一个CAS票据来判断用户身份是否已通过验证。如果未找到票据,则意味着该用户尚未通过身份验证。作为结果,用户被重定向到CAS的登录页面②。
在CAS的登录页面,用户输入他/她的用户名和密码。如果CAS成功认证了该用户,则创建一个与请求的服务相关联的票据。接着,CAS服务器将用户重定向到用户原先请求的服务(此时请求中已经有票据了)③。
服务再次在请求中寻找票据。这一次它找到了票据,并与CAS服务器联系以确认票据是有效的④。如果CAS的响应表明票据对当前请求的服务而言是有效的,服务就会允许用户访问应用。
以后,当用户请求访问另一个支持CAS的应用系统时,那个应用仍会与CAS联系。由于用户之前已经认证,CAS会返回一个对该新应用有效的服务票据,而不会提示用户再次登录。
4.7 总体架构设计逻辑图
索引服务总线
|
身份认证服务
|
用户管理
|
学习管理
|
资源管理
|
5 系统的应用设计
5.1 概述
教育资源库主要是针对中小学基础教育,共享资源而设计的门户式的资源平台。它由三个核心子系统构成。一、索引服务子系统;二、学习对像资源库子系统;三、身份认证服务子系统。系统的业务层目前只有用户管理子系统。
5.2 设计内容
索引服务子系统设计内容包括添加、删除索引,排序、搜索,各种文档解析器,查询分析器,反向查询等。
学习对像资源库子系统设计内容包括资源的存储,资源描述的编目,资源的描述规范LOM、Dublin Core、CETLS等
身份认证服务子系统设计内容包括服务器端和客户端两部分。服务器端负责完成对用户的认证,并处理用户名 / 密码等凭证,和到数据库检索一条用户帐号信息。客户端负责当有对本地Web应用的受保护资源的访问请求,并且需要对请求方进行身份认证,Web应用不再接受任何的用户名密码等类似的凭证 ,而是重定向到服务器端进行认证。
用户管理子系统设计包括用户基本信息的存储、用户的角色划分、用户的分组等。
5.3 功能设计
索引服务功能模块包括索引器、文档解析器、查询分析器、索引文档等
身份认证服务功能模块包括用户认证、凭证生成、加密等
学习对像资源库功能模块包括资源上传、资源编目、资源描述规范等
用户管理功能模块包括用户添加、删除、编缉、分组、角色、授权等
6 系统应用支撑平台设计
6.1 概述
系统开发全部在WINDOWS 2003平台下进行。身份认证服务工作在TOMCAT环境下,基它子系统都工作在IIS6、.NET环境下。
6.2 设计内容
整个系统基于WEB采用B/S结构开发,展现层采用monoRails的MVC框架,领域层采用ActiveRecord框架的ORM映射。(也可以选用iBATIS框架)。页面设计符合WEB标准,使用XHTML 1.0规范,界面样式使用CSS 2.0
6.3 现况分析
操作系统使用Windowns Server2003, 考虑到数据的文档性质及管理上方便性。MVC的使用主要是因为层次清层,控制上灵活。
6.4 原有系统平台技术剖析
原有资源库系统使用ASP构建,业务逻辑和界面展示胶合在一起,这使系统代码非常混乱,为维护和扩展带来很大的负担,另外也无法对系统进行重构和优化。
6.5 应用体系结构选择
基于服务总线的分布式系统
6.6 应用支撑平台设计
教育资源索引服务总线框架
6.7 应用中间件选型
Yale Cas (Central Authentication Service) Library
DotLucene Library