Presentation is loading. Please wait.

Presentation is loading. Please wait.

Providing a SCORM service in an IMS Learning Design player Paul Sharples The University of Bolton.

Similar presentations


Presentation on theme: "Providing a SCORM service in an IMS Learning Design player Paul Sharples The University of Bolton."— Presentation transcript:

1

2 Providing a SCORM service in an IMS Learning Design player Paul Sharples The University of Bolton

3 IMS Learning Design and ADL Scorm Initial work carried out by Open University of the Netherlands. Are there overlaps between the two? What are the major differences? Can they be used together? IMS Learning Design ADL Scorm

4 IMS Learning Design Can be used to model units of learning any delimited piece of education or training, such as a course, a module, a lesson, etc Can represent the whole learning process learning activities, problem solving activities, search activities, discussion activities, peer assessment, collaborative learning etc A single specification is designed to orchestrate learning arrangements – but can be linked to several other e-learning specifications Units of learning are content packages they contain materials which can be played by software, such as the Coppercore Engine

5 ADL Scorm A reference model describes a content model and run-time environment for sharable content objects (SCOs) Single user driven The student takes the content with no interaction between either other students or teachers Sharable Content Objects must adhere to the defined API A SCO must be able to communicate with the LMS by using a defined Application Programming Interface (API) Scorm courses are content packages they contain materials which can be played by software, such as the Reload Scorrm Player

6 SCORM Shareable Content Objects: What are they? In SCORM (1.2) there was the notion of two types of content – assets and SCOs Assets were vanilla web content web pages, word docs, flash files etc SCOs are different & have to be authored in a particular way They need to be able to communicate with the LMS. They need to provide certain calls within the content to achieve this.

7 SCORM Sharable Content Objects: What are they? SCOs are typically a web page which will incorporate some javascripting code there are other SCOs which use other technologies, such as macromedia flash to talk to the LMS The javascript code has the job of talking to the LMS using the defined Application Programming Interface (API) At runtime, the LMS has to provide what is known as an APIAdapter to sharable content objects The SCO needs the APIAdapter so that it can talk to the LMS and enable content tracking. The tracking values are kept in a SCO data model. The APIAdapter allows the SCO to talk to the LMS and get/set values which can record the progress of the SCO

8 SCORM Sharable Content Objects: What are they? SCOs have to tell the LMS they are about to start they do this by using the APIAdapter and calling LMSInitialise(); SCOs can set and get values from the LMS they can get a value using the APIAdapter and calling LMSGet(“value_name”); they can set a value using the APIAdapter and calling LMSSet(“value_name”,”value_to_set”); SCOs must tell the LMS when they are finished they do this by using the APIAdapter and calling LMSFinish();

9 SCORM Sharable Content Objects: What are they? Some of the values the SCO can access SCORM 1.2 DATA MODEL ELEMENTS. raw

10 SCORM Sharable Content Objects: What are they? How a Simple SCO might look

11 SCORM Sharable Content Objects: What are they? The source view A very simple 1.2 Sharable Content Object Simple sco Objectives Please use the links in the tree opposite to find new content based on your subject area. Click the "Okay" button to continue

12 SCORM Sharable Content Objects: What are they? A SCO running in the Reload SCORM Player

13 SCORM Sharable Content Objects: What are they? Where the APIAdapter can be found

14 Some conclusions IMS Learning Design and ADL Scorm Both can be used to guide the development of educational materials Both use a combination of specifications to achieve their goals Both lead to content packages which can be read into players and used to support learning

15 How could they integrate? Content found within a IMSLD can be in a variety of formats, including XML, (X)HTML, RTF, PDF etc. IMSLD does not prescribe a model to which content must adhere but instead focuses on specifying the learning process in terms of which roles perform which activities, when, and supported by which facilities As a result, IMSLD provides a natural slot into which SCOs can be incorporated existing SCOs could be reused in this way IMSLD was designed with such an integration in mind it provides a placeholder in the ‘environment’ associated with an activity

16 Key concepts from IMS Learning Design The actual file could be a SCO

17 How could they integrate? The SCO is a resource available during the runtime cycle of a unit of learning within the environment section of one or more learning activities When the SCO is loaded, the LD runtime system must know how to handle it Specifically it must provide a SCORM APIAdapter to the SCO when it is loaded The SCO should work just as it would in a normal SCORM aware LMS it should be able to set/get values However, the ability to simply “play” the SCO isn’t really all that useful by itself.

18 More integration? It would be more useful if the outcome from taking a SCO could somehow influence the rest of the Learning Design Depending on which values the SCO updated in the SCORM data model, they could then be accessed by the unit of learning One answer is to create a Level B Learning Design which utilises properties and conditions The properties defined within in the Learning Design could be named to correspond to values found within the SCO model. for example we could define a level B property as “cmi.core.score.raw” a value found in the SCO model We are defining a mapping between values that a SCO might change and IMSLD Level B properties The LD runtime system now has an additional job. It must propagate changes made by the SCO in the SCO model, to the LD engine

19 Implementing the Software Two existing open source tools used as basis for integration 1. Coppercore Learning Design Engine this includes the engine, default player and CCSI framework 2. Reload Scorm 1.2 player we didn’t have access to an open source SCORM 2004 player we could use. The implementation would/should have been very similar for SCORM 2004. Coppercore Service Integration (CCSI) provides the framework to allow new services to be integrated into runtime system

20 Implementing the Software CCSI has the notion of the “dispatcher” the dispatcher allows separation of software components so that specific functionality can be accessed as needed at runtime. The dispatcher gets the required service as it is needed. Developers write new services which adhere to CCSI framework newly written services must conform to a simple set of rules The CCSI layer allows one service, such as a SCORM service, to communicate with another service, such as the LD Engine service.

21 Integration of SCOs in LD runtime The architecture of the major components Browser LD Player Coppercore Service Integration (CCSI) LD Engine (Coppercore) QTI Engine (APIS) Scorm Engine (Reload) Forum service Search service

22 Implementing the Software Using parts of the existing Reload Scorm Player Consisted of several parts including a java swing based management interface Isolated the engine part concerning the SCO model. The SCO model was held in an easy to query structure This became the basis for the new service Tomcat server Scorm engine web application BrowserDesktop client written in swing

23 Implementing the Software Using parts of the existing Reload Scorm Player Original Reload APIAdapter was written as set of objects in javascript A hidden frame sent the SCO values back to the server in a web form The Scorm Engine then processed the values and populated its own model which could be saved to disk The new APIAdapter would use Ajax technology to allow the values to be passed back to the server without having to have a hidden frame

24 Defining a new content type In IMSLD there are two types of content by default - Web Content – normal content, web pages, flash, word docs etc - IMSLDContent – an XML format which needs to be rendered by the runtime To allow a runtime system to recognise that a IMSLD manifest contains an item which is of the new type “Sharable Content Object version 1.2”, a new type needed to be added A new content type of “adl_sco_v1p2” was added within the manifest to refer to a learning object which is a version 1.2 sharable content object The runtime web player also needed to be updated so that it could recognise this type and pass the correct service to it as required.

25 How it works 1.In the LD Web Player, the user clicks on a link to load a SCO the link would appear within an environment attached to a learning activity 2.The LD player realises that the type is “adl_sco_v1p2” and creates a link to the new SCO 1.2 service A new SCO data model is initialised with certain values, student name for example 3.The Web Player takes the model, builds an XML document and returns this to the browser The XML fragment also includes the URL of where the SCO file is located 4.An XSLT stylesheet transforms the XML into javascript calls which populate the APIAdapter with the new data. The SCO is loaded into the page within a layer 5.The user takes the SCO The SCO can access the APIAdapter and sets/gets values

26 How it works 6.Once the SCO is finished the updated model is committed back to the server using an AJAX call 7.The web player gets the current handle to the SCO 1.2 service and passes the new model to it. 8.The SCO 1.2 service can now talk to the LD Engine service. Each element fo the SCO model is broadcast to the LD Engine service. 9.If there is a corresponding IMSLD level B property defined in the unit of learning, then its values is updated to reflect the changes the SCO made.

27 How it works Browser LD Player (servlet) Coppercore Service Integration (CCSI) LD Engine SCO 1.2 Engine SCO objectClient API Adapter

28 Testing the prototype with a real example “playing the guitar” example unit of learning Six acts. First act contains the SCO found within an environment. All other content is hidden until user takes the SCO The SCO has 5 questions. User takes the SCO based test. Depending on which questions s/he answered correctly, further learning activities are shown in the following acts. Makes use of the show and hide properties for Learning activities as manipulated by properties & conditions in Level B

29 Authoring the example Reload Learning Design Editor used. Stage one was to assemble the content and import into the editor. Stage two was to create all of the learning activities, learning objects and environments. Stage three was to assemble the method. This consisted of one play and six acts – each containing a learning activity.

30 Authoring the example the method pane

31 Authoring the example defining the properties

32 Authoring the example defining the conditions

33 Authoring the example Changing the resource type to adl_sco_v1p2

34 Illustrating the example The student starts the Unit of Learning

35 Illustrating the example The student posts the answers

36 Illustrating the example New Learning Activities appear

37 Illustrating the example The student retakes the test, this time answering all questions correct

38 Possible Future Work Additional service added to support SCORM 2004 the API has been changed slightly between versions Service to handle full SCORM packages, including sequencing, etc. Full SCORM compliant LMS features implemented as a service with SCORM 2004 this would also involve a system to handle IMS Simple Sequencing


Download ppt "Providing a SCORM service in an IMS Learning Design player Paul Sharples The University of Bolton."

Similar presentations


Ads by Google