SCORM 1.2与SCORM 2004规范之初步比较

土人老周 分类, 0 个评论 ,阅读数: 1

资策会数字学习技术中心 胡正亨 jhhu@iii.org.tw

 

前言

2004年是一个e-Learning标准的重要里程碑,ADL于1月30号终于推出令人期待的SCORM 2004的最新版本规范,SCORM 2004也就是众所周知的SCORM 1.3,就规范内容而言,其中可以归纳出三个最大的不同点,分别是:
一、 imsmanifest.xml档案中加入sequencing语法:除了原先在SCORM 1.2规范中所提供的教材架构及教材实体档案连结等信息外,为了串连各个教材单元,增加了Sequencing的语法,这些语法和SCORM 1.2所规范的语法并不冲突,而是以SCORM 1.2之语法为基础再外加于其上,不论SCORM 1.2或SCORM 2004规范皆是以XML为实作方式,为了区别SCORM 1.2与SCORM 2004中新增的sequencing语法,因此在imsmanfiest.xml档案中以imsss之名称空间作为区别。
二、 在学习组件(Sharable Content Object, 简称SCO)中,SCORM 1.2 RTE(Run Time Environment)定义了8个API(Application Programming Interface)做为SCO与平台之间的沟通的管道,在SCORM 1.2 API采用AICC的CMI001规范,但在SCORM 2004 API部分改采IEEE P1481.11.2之标准,简而言之API的名称在SCORM 2004规范中,有做部分的更动。
三、 在学习组件(SCO)中,除了在第二点说明中API有所更动,Data model有部分的更动,在SCORM 1.2中,Data model是采用AICC CMI001之规范,在SCORM 2004中Data model改采IEEE P1484.11.1,

以下将简述其差异:

一、SCORM 2004加入Sequencing语法

在SCORM 1.2规范中每个课程必须包含一个imsmanifest.xml档案,在这个档案之中,包含两大类信息:

教材架构信息:定义教材章节信息,意即教材内容纲要(table of content),包含各章节名称及其章节层级架构。
教材实体档案连结信息:定义各章节所连结之实体档案。

SCORM 2004之教材中亦必须包含一个imsmanifest.xml档案,除了承袭SCORM 1.2之两大类信息外,增加了sequencing信息,用来描述各章节之间的串连关系,因此第一点最大不同点在于imsmanifest.xml档案中,为了提供sequencing信息,增加了许多的sequencing标签,这些新增的标签需由程序设计师编写,IT程序设计师需依照教学设计师所设计的章节流程,转换成符合SCORM 2004之语法,在SCORM 2004规范中提供了8大类语法,分列如下:
一、Control Mode:设定教材章节之流程
二、Sequencing Rules:设定各个教材章节之条件(Condition)及行为(Action)
三、Rollup Rules:描述子章节与父章节之学习状态之间的关系
四、Auxiliary Resource:教材辅助教材
五、Objectives:设定章节之学习目标
六、Limit Conditions:设计章节之阅读限制条件
七、Randomization Controls:设定教材章节是否随机出现
八、Delivery Controls:设定是否记录章节之学习状态

在这8大类中,又包含了许多不同的属性(Attribute)及元素(Element)在内,以下简介这8大类的内容,其由各元素的介绍将另有专文介绍。

这8大类的语法,就是教学设计师所可以使用的工具,比如当教学设计师在教材中需要有一个章是课堂测验,而在测验时,教学设计师希望学习者只能一题一题的往下答题,一旦答案送出后就不能回到之前的问题做答,这时教学设计师可以将Control Mode中的forwardOnly属性设为true,所以在回馈到imsmanifest.xml的语法设定如下述Example 1。

 

Example 1:

承Example 1之设计,若教学设计师希望学习者测验次数只能一次,所以就可以应用limitConditions中的设定,将可阅读次数设定为1,如此学习者就只能进入该测试一次,其sequencing语法设定如Example 2

Example 2:

由上述两个例子可以不难看出,sequencing语法影响有两个面向。
教材部分:依教学设计师的设计,程序设计师在imsmanifest.xml档案必须在每个<item>元素中加入sequencing的语法。
平台部分:学习管理平台必须要解译在imsmanifest.xml所设定的各种sequencing语法,再依学员的学习状态提供学员所需之学习内容。

二、API的差异

在SCORM 1.2 RTE中提供了8个API(Application Programming Interface),如下表,其主要作为数字教材与平台之间数据沟通的桥梁,每个API的功能各异。
并由表一可以清楚得知,SCORM 2004与SCORM 1.2所提供的API总数皆为8个,而SCORM 2004将各个API的名字做了部分变动,以下就各个API做简短的描述。

Initialize:建立学习对象与平台之间的数据传输管道。
Terminate:结束学习对象与平台之间的数据传输管道。
GetValue:取得学员之学习信息。
SetValue:储存学员之学习信息。
Commit:将所有暂存学习信息数据全数储存至学习平台。
GetLastError:取得错误代码。
GetErrorString:由错误代码取得错误之解释。
GetDiagnositic:取得错误的处理方式。

表一、SCORM 1.2与SCORM 2004 规范API之比较表

SCORM 1.2 SCORM 2004

Session Methods

LMSInitailize() Initialize()
LMSFinish()
Terminate()

Data-transfer Methods

LMSGetValue() GetValue()
LMSSetValue() SetValue()
LMSCommit() Commit()

Support Method

LMSGetLastError() GetLastError()
LMSGetErrorString() GetErrorString()
LMSGetDiagnostic() GetDiagnostic()

三、Data model的差异

在SCORM RTE(Run Time Environment)的标准里有两大重点,一是API,一是Data model,学过程序设计的朋友应该可以很快了解,API就像是function,而data model就像是function中传递的参数,以exportData(parameterA, parameterB)为例,其中exportData就是function名称,就是SCORM所说的API;而parameterA及parameterB就是所谓的data model。

在data model变动的幅度不大,SCORM 2004的所订定的data model与SCORM 1.2所订的data model大致相同,但名称做了部分修改,其对应关系如下表二所列。

表二、SCORM 1.2与SCORM 2004规范之data model对应表

SCORM 2004 Data model

SCORM 1.2Data model之对应关系

 
Cmi.comments_from_learner._children 新增
Cmi.comments_from_learner._count
新增
Cmi.comments_from_learner.n.comment 新增
Cmi.comments_from_learner.n.location 新增
Cmi.comments_from_learner.n.date_time 新增
 
Cmi.comments_from_lms._children 新增
Cmi.comments_from_lms._count 新增
Cmi.comments_from_lms.n.comment 新增
Cmi.comments_from_lms.n.location 新增
Cmi.comments_from_lms.n.date_time 新增
   
Cmi.scaled_passing_score 新增
Cmi.score._children 对应cmi.core.score.chilcren
Cmi.score.raw 对应cmi.core.score.raw
Cmi.score.max 对应cmi.core.score.max
Cmi.score.min 对应cmi.core.score.min
Cmi.success_status 对应cmi.core.lesson_status之passed< /span>及failed
Cmi.completion_status 对应cmi.core.lesson_status之 completed及 incomplete
Cmi.suspend_data 对应cmi.suspend_data
Cmi.time_limit_action 对应cmi.student_data.time_limit_action
Cmi.session_time 对应cmi.core.session_time
Cmi.total_time 对应cmi.core.totoal_time
Cmi.credit 对应cmi.core.credit
Cmi.entry 对应cmi.core.entry
Cmi.exit 对应cmi.core.exit
Cmi.launch_data 对应cmi.launch_data
Cmi.learner_id 对应cmi.core.student_id
Cmi.learner_name 对应cmi.core.student_name
Cmi.location 对应cmi.core.lesson_location
Cmi.max_time_allowed 对应cmi.student_data.max_time_allowed
Cmi.mode 对应cmi.core.lesson_mode
 
Cmi.interactions._children 旧有
Cmi.interactions._count 旧有
Cmi.interactions.n.id 旧有
Cmi.interactions.n.type 旧有
Cmi.interactions.n.objectives._count 旧有
Cmi.interactions.n.objectives.n.id 旧有
Cmi.interactions.n.timestamp 对应cmi.interactions.n.time
Cmi.interactions.n.correct_responses._count 旧有
Cmi.interactions.n.correct_resonses.n.pattern 旧有
Cmi.interactions.n.weighting 旧有
Cmi.interactions.n.leaner_response 对应cmi.interactions.n.student_response
Cmi.interactions.n.result 旧有
Cmi.interactions.n.latency 旧有
Cmi.interactions.n.description 新增
 
Cmi.learner_preference._children 对应cmi.student_preference.children
Cmi.learner_preference.audio 对应cmi.student_preference.audio
Cmi.learner_preference.language 对应cmi.student_preference.language
Cmi.learner_preference.speed 对应cmi.student_preference.speed
Cmi.learner_preference.text 对应cmi.student_preference.text
 
Cmi.objectives._children 旧有
Cmi.objectives._count 旧有
Cmi.objectives.n.id 旧有
Cmi.objectives.n.score._children 旧有
Cmi.objectives.n.score.scaled 新增
Cmi.objectives.n.score.raw 旧有
Cmi.objectives.n.score.min 旧有
Cmi.objectives.n.score.max 旧有
Cmi.objectives.n.success_status 对应cmi.objectives.n.status中之 passed及failed
Cmi.objectives.n.completion_status 对应cmi.objectives.n.status中之 completed及incomplete

结语

综合以上所述,导入SCORM 2004标准需要相当多的问题要克服,以下所列为个人浅见:

一、 SCORM 2004提高教材制作难度

Sequencing rules是SCORM 2004中的重点,让独立的学习组件串连起来,教学设计师可以将教学策略透过sequencing rule融入数字教材设计之中。对于教材制作厂商而言可以说是一则以喜一则以忧,喜的是SCORM 2004在加入了Sequencing rule之后,教学设计师可以将教学策略加入教材之中,如反复练习(retry)、随机出题(randomization)等,忧的是目前SCORM 2004虽加入名为”IMS Simple Sequencing”的规范于其中,但事实上并不简单(simple),要做一门符合SCORM 2004的教材需要相当多的程序技术及对标准的了解。

目前制作SCORM 2004教材可以粗分成两大阶段—设计阶段及实作阶段,设计阶段教学设计师要将组件化教材设计的思维溶入其中,定义出各单元之教学目标准以及这些教学目标之间的关连,再由单元组合成章节,因章节的目标及属性的不同拟定教学策略。接下来就进入实作阶段,程序设计师依教学设计师之设计,将教学策略转换成许多的sequencing rule的语法,并加入imsmanifest.xml档案之中,一步一步地将教材实作完成。

对于教学设计师而言,导入SCORM 1.2规范时,必须要花相当多的时间与内容专家(Subject Matter Expert)深入讨论教材之章节架构及教学目标,进而依章节架构设计学习组件(SCO);当导入SCORM 2004时,如前述之设计及沟通工作外,须再与内容专家讨论并厘清各学习组件之间的关系,这也将增加设计SCORM 2004教材之困难度;对于程序设计师而言sequencing rule不容易编辑实作,是导入SCORM 2004的困难点,sequencing rule的编辑未来必定可以透过编辑工具接口减少其难度,但应用的深度则是要仰赖教学设计师对于sequencing rule及教学情境的掌握,这是自SCORM 1.2教材就己存在的技术与应用的落差,而导入SCORM 2004技术与应用的落差可能会更大。

未来SCORM 2004的教材开发势必较SCORM 1.2的教材更为困难,其开发模式及流程也会不同,对于教学设计师而言,了解一个个的sequencing rule是困难的,但完全不了解而去设计教材却要有深入应用无异是缘木求鱼,因此对教学设计师而言未来SCORM 2004教材开发之技术难度应是介于应是介于两者之间,建议未来SCORM 2004教材开发方向应朝样板式template式开发模式,研究机构如学校及资策会等,应用要培养深入了解SCORM 2004标准之教学设计师,并将这些分散复杂的rule配合教学理论而组合成多个不同用途之样板(template),进而推广这些样板,如此才可收事半功倍之效。

二、 兼容性的问题

在了解SCORM 1.2与2004的差异后,心里一定有一个疑问,若原本己有许多符合SCORM 1.2的教材,是否在符合SCORM 2004的平台就不能使用了?答案似乎并不乐观,SCORM 2004由于其中某些部分己经被IEEE标准经过修改,而造成无法向下兼容的窘境,但仔细回想上述三点差异比较之后,在兼容性问题又出现了一丝曙光,在第一部分SCORM 1.2之content package部份并没有sequencing rule语法,而SCORM 2004支持sequencing语法,SCORM 2004是在SCORM 1.2的content package之基础之上架构sequencing 语法,单就这content package部分而言是向下兼容的。

其次在API及data model部 分,不难看出有许多部分是名称的调整,初步看来,当名称不同导致了不兼容的问题,但从另一个角度而言,是否可以用技术方法克服,答案是肯定的,由程序设计 的角度,可以设计开放两个接口同时存取一份数据,并在程序主体中定义新旧不同标准之数据域位对应关系,简言之,这部分的问题亦可解决。

令人头痛的兼容性问题,在SCORM 2004推出后成为众矢之的,但可以透过平台的修改,而在不用更动SCORM 1.2的教材之下,保持向下兼容,虽然如此,未来仍建议教材开发厂商以符合IEEE标准为基础之SCORM 2004版本为佳。

留言互动