2000-03-14cbt data interchange, f. farance, ©2000 edutool.com1 cbt data interchange (seq, tcl)...

45
2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700, [email protected] a division of Farance Inc. Presentation to LTSC CBT Data Interchange WG (IEEE 1484.6) http://ltsc.ieee.org/wg6

Upload: jacob-thompson

Post on 04-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 1

CBT Data Interchange (SEQ, Tcl)2000-03-14 Presentation

Frank Farance, +1 212 486 4700, [email protected]

a division of Farance Inc.

Presentation to LTSC CBT Data Interchange WG

(IEEE 1484.6) http://ltsc.ieee.org/wg6

Page 2: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 2

Overview

• What is CBT Data Interchange

• Related Topics and Activities

• Framework for Interchange

• Progress Report

• Future Activities

Page 3: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 3

What is CBT Interchange?

• Initially:– Exchanging content among authoring tools

– The “RTF” of learning content

• Revised:– Exchanging content among authoring tools

– The “RTF” of learning content

– Question banks

– Interaction types

– Sequencing

– Independence of user interface

Page 4: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 4

Exchanging Content Among Authoring Tools

• Large investment in learning content

• Multi-vendor environments

• Retargeting towards different learning technology frameworks

• Import and export, e.g., tech pubs

Page 5: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 5

Related Topics and Activities

• IEEE 1484.6: Content Sequencing– Sequencing primitives– Interaction types

• IEEE 1484.10: CBT Data Interchange (Tcl)– Raw syntax for exchange– Control flow primitives– Tk widgets, if desired

• IMS Question & Test Interoperability– Question Bank interchange

Page 6: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 6

Framework for Interchange [1/2]

• Authoring tools:– Generate content– Can export to common format– Should export as portability test

• Conversion tools:– Import and export to authoring systems– Script conversion– Cleanup of “proprietary” features

Page 7: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 7

Framework for Interchange [2/2]

• Support tools:– Metadata tagging– Import/export to/from databases (QTI)– Rendering for multiple target systems– Sample run– Packaging

Page 8: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 8

General Perspective On Content Sequencing

• Various levels of granularity• Sequencing primitives are used at all

levels– Examples: prerequisites, flow/decisions,

launch– Services: access student history, content

library

• Integrate with a variety of systems, both low-level and high-level

Page 9: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 9

Typical Usage Scenario: The Student

• Kris is working at home today. In school he uses a Macintosh, but at home he uses an IBM PC.

• Kris operates on both platforms because he uses a “standard” learning technology web browser (1484.18).

• His learning content is available in a portable format (1484.10)

• The content is sent to his workstation in a portable “packaging” format (1484.17).

1484.10

1484.17

1484.18IBM PC

Macintosh1484.18

Page 10: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 10

Typical Usage Scenario: The Student

• Kris’ learning progresses via a “learning management system” (1484.11), also known as an “LMS”.

• The LMS moves him through lessons based on optimal sequencing (1484.6).

1484.6

1484.11

LearningManagementSystem

Sequencing

Page 11: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 11

Typical Usage Scenario: The Developer

• Erik wants to develop a course.• Erik bases the course on some new

material he authors (1484.6, 1484.10).• Additionally, Erik incorporates existing

material found on the web (1484.12).1484.10

1484.12

1484.6

A New Course

Existing Material &Cataloging Info

New, AuthoredMaterials

Erik

Page 12: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 12

IEEE 1484.6, 1484.10

• Close collaboration

• 1484.6: Environment issues, access to assessment, performance, leaning styles, metadata, content libraries, launching content

• 1484.10: Tcl syntax, control transfer (invoke)

Page 13: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 13

IEEE 1484.6 Focus

• Environment specification:– related to 1484.10 language– Access to student records: get, put, scan– Access to content catalogs (metadata): what

learning resources are available– Access to launch mechanism

• Uses logic features of 1484.10 to choose the next “lesson”, i.e., “assignable unit”.

Page 14: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 14

IEEE 1484.10 Focus

• Language specification:– Related to 1484.6 libraries and

environment– Defines programming logic features, useful

for creating sequence programs, e.g., choosing the next “lesson”, i.e., “assignable unit”.

• Data interchange language

Page 15: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 15

Item Sequencing: Using 1484.10 For 1484.6 Sequencing

• Module• Next• Script – several authoring tool scripts• Wait – several varieties• Play• Interaction – several varieties• Decision• Go to – yet to be defined• External – yet to be defined

Page 16: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 16

Module

• A module is represented by a Tcl procedure

• Modules can be called with parameters

• Example:proc check_enrollment { student_id } {

set result [ lookup $student_id ]return $result

}

Page 17: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 17

Next

• Modules normally flow from one element to the next

• Example:mime_display pict1.gifmime_display pict2.gifcheck_enrollment $student_id

Page 18: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 18

Wait

• Highly functional, wait for internal commands, or external events

• Can spawn multiple threads• Internal command example:

after 500 # pause for 500 millisecondsafter 1 x y z # pause 1 second, then run “x y z”after cancel x # cancel pending waits

• External event example:tkwait var # wait for variable to be settkwait visibility w # wait for window w to be visibletkwait window w # wait for window w to close

Page 19: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 19

Play

• Play MIME media

• Extracted from run-time registry or system defaults

• Example:mime_play movie1.mpg [options] # play moviemime_play jpeg [options] # display image

Page 20: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 20

Interaction

• Interaction types:– multiple choice, fill in blank, choose M of N, true-false, hot

spot, slider, write sentences, submit project, randomized content, content templates

• Based on low-level, widely used paradigm• Based on work by Claude Ostyn (Asymetrix), Bill

McDonald (Flightsafety/Boeing), and IMS QTI• Simplified abstractions, parameterized abstractions• Starting point for common interaction templates

Page 21: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 21

Multiple Choice

• Presentation “text”

• Question “text”

• Choices– Labels– Choice text

• Flag: randomization

• Correct answer

Page 22: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 22

Multiple Choice(Tcl-based CBT Data Interchange)

multiple_choice \-P type \ presentation type, e.g., text, text-file, MIME type-p value \ presentation, e.g., string, filename, URL-Q type \ question type ... same as pres. type-q value \ question value ... same a pres.-L type \ label type ... same as pres. type, multiple option-l value \ label name ... same as pres., multiple option-C type \ choice type ... same as pres. type, multiple option-c value \ choice value ... same as pres., multiple option-A type \ answer type ... same as pres. type, usually “string”-a value \ answer value ... same as pres., usually match string-H type \ hint type ... same as pres. type-h value \ hint value ... same as pres.-D type \ repository type-d loc \ location in repositorycontent_id content ID associated with interaction

Note: Syntax to be revised

Page 23: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 23

Multiple Choice Content Example

multiple-choice \ -P text-file -p content-1-p \ -Q text-file -q content-1-q \ -C text-file -c content-1-1 \ -C text-file -c content-1-2 \ -C text-file -c content-1-3 \ -C text-file -c content-1-4 \ -A string -a Friday \ content-1

Page 24: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 24

Fill In Blank

• Presentation “text”

• Question “text”, including blank

• Correct answer

• Flag: case insensitive

• Flag: ignore leading, multiple, trailing spaces

• Spelling fuzziness

Page 25: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 25

Fill In Blank(Tcl-based CBT Data Interchange)

fill_in_blank \-P type \ presentation type, e.g., text, text-file, MIME type-p value \ presentation, e.g., string, filename, URL-Q type \ question type ... same as pres. type-q value \ question value ... same a pres. (replace “____”)-L type \ label type ... same as pres. type, multiple option-l value \ label name ... same as pres., multiple option-C type \ choice type ... same as pres. type, multiple option-c value \ choice value ... same as pres., multiple option-A type \ answer type ... same as pres. type, usually “string”-a value \ answer value ... same as pres., usually match string-H type \ hint type ... same as pres. type-h value \ hint value ... same as pres.-D type \ repository type-d loc \ location in repositorycontent_id content ID associated with interaction

Note: Syntax to be revised

Page 26: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 26

Fill-In-Blank Content Example

fill_in_blank \ -P text-file -p content-2-p \ -Q text-file -q content-2-q \ -A string -a Friday \ content-2

Page 27: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 27

Choose M of N

• Presentation “text”

• Left column of choices

• Right column of choices

• Flag: ordered vs. unordered

• Flag: randomization

• Answer list

Page 28: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 28

Choose M of N(Tcl-based CBT Data Interchange)

selection_choice \-P type \ presentation type, e.g., text, text-file, MIME type-p value \ presentation, e.g., string, filename, URL-Q type \ question type ... same as pres. type-q value \ question value ... same a pres.-L type \ label type ... same as pres. type, multiple option-l value \ label name ... same as pres., multiple option-C type \ choice type ... same as pres. type, multiple option-c value \ choice value ... same as pres., multiple option-A type \ answer type ... same as pres. type, usually “string”-a value \ answer value ... same as pres., usually match string-H type \ hint type ... same as pres. type-h value \ hint value ... same as pres.-D type \ repository type-d loc \ location in repositorycontent_id content ID associated with interaction

Note: Syntax to be revised

Page 29: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 29

True-False

• Presentation “text”

• Correct answer

Page 30: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 30

True-False(Tcl-based CBT Data Interchange)

true_false \-P type \ presentation type, e.g., text, text-file, MIME type-p value \ presentation, e.g., string, filename, URL-Q type \ question type ... same as pres. type-q value \ question value ... same a pres.-L type \ label type ... same as pres. type, multiple option-l value \ label name ... same as pres., multiple option-C type \ choice type ... same as pres. type, multiple option-c value \ choice value ... same as pres., multiple option-A type \ answer type ... same as pres. type, usually “string”-a value \ answer value ... must be “true” or “false”-H type \ hint type ... same as pres. type-h value \ hint value ... same as pres.-D type \ repository type-d loc \ location in repositorycontent_id content ID associated with interaction

Note: Syntax to be revised

Page 31: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 31

True-False Content Example

true_false \ -P text-file -p content-3-p \ -Q text-file -q content-3-q \ -A string -a true \ content-3

Page 32: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 32

Write Sentences

• Presentation “text”

• Correct answer

• Comparison script

Page 33: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 33

Write Sentences(Tcl-based CBT Data Interchange)

write_sentence \-P type \ presentation type, e.g., text, text-file, MIME type-p value \ presentation, e.g., string, filename, URL-Q type \ question type ... same as pres. type-q value \ question value ... same a pres.-L type \ label type ... same as pres. type, multiple option-l value \ label name ... same as pres., multiple option-C type \ choice type ... same as pres. type, multiple option-c value \ choice value ... same as pres., multiple option-A type \ answer type ... usually “writing-check”-a value \ answer value ... same as pres., usually match string-H type \ hint type ... same as pres. type-h value \ hint value ... same as pres.-D type \ repository type-d loc \ location in repositorycontent_id content ID associated with interaction

Note: Syntax to be revised

Page 34: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 34

Write-Sentences Content Example

write_sentence \ -P text-file -p content-4-p \ -Q text-file -q content-4-q \ -A writing-check \ -a spelling,grammar,\include=Sunday,include=Monday,\include=Tuesday,include=Wednesday,\include=Thursday,include=Friday,\include=Saturday \ content-4

Page 35: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 35

Submit Project

• Presentation “text”

• Requested “pointers” of work

• Grading system: E-mail, FTP, posting, script, CGI

Page 36: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 36

Submit-Project(Tcl-based CBT Data Interchange)

submit_project \-P type \ presentation type, e.g., text, text-file, MIME type-p value \ presentation, e.g., string, filename, URL-Q type \ question type ... same as pres. type-q value \ question value ... same a pres.-L type \ label type ... same as pres. type, multiple option-l value \ label name ... same as pres., multiple option-C type \ choice type ... same as pres. type, multiple option-c value \ choice value ... same as pres., multiple option-A type \ answer type ... usually “human-eval”-a value \ answer value ... same as pres., usually match string-H type \ hint type ... same as pres. type-h value \ hint value ... same as pres.-D type \ repository type-d loc \ location in repositorycontent_id content ID associated with interaction

Note: Syntax to be revised

Page 37: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 37

Randomized Content

• Presentation “text”

• Template “text”

• Rendering system

• Correct “answer”

• Grading system (e.g., CGI)

Page 38: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 38

Template Expand(Tcl-based CBT Data Interchange)

template_expand \-P type \ presentation type, e.g., text, text-file, MIME type-p value \ presentation, e.g., string, filename, URL-Q type \ question type ... same as pres. type-q value \ question value ... same a pres.-L type \ label type ... same as pres. type, multiple option-l value \ label name ... same as pres., multiple option-C type \ choice type ... same as pres. type, multiple option-c value \ choice value ... same as pres., multiple option-A type \ answer type ... same as pres. type, usually "string”-a value \ answer value ... same as pres., usually match string-H type \ hint type ... same as pres. type-h value \ hint value ... same as pres.-D type \ repository type-d loc \ location in repository-X loc \ expansion rulescontent_id content ID associated with interaction

Note: Syntax to be revised

Page 39: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 39

Harmonization with IMS

• Current activities in IMS on “Question & Test Interoperability”

• IMS focus is on “question bank” exchange

• IEEE 1484.6 and IMS QTI are very close

• NOTE: Tcl parameter names will change to harmonize with IMS QTI

Page 40: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 40

Decision

• A module is represented by a Tcl procedure

• Modules can be called with parameters

• Example:proc check_enrollment { student_id } {

set result [ lookup $student_id ]return $result

}

Page 41: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 41

Converting Scripting Code

• Custom transformation for each authoring tool ==> common code

• Sample for Authorware:– Translate assignment (approx.)

• s/\([a-zA-Z0-9_]*\)[ ]*:=/set \1 /g

– Translate array syntax (approx.)• s/\[/{ /g;s/\]/} /g;s/,/ /g

– Translate property syntax (approx.)• s/#\([a-zA-Z0-9_]*\)/.\1/g

– Support library

Page 42: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 42

Sample Conversion

• Authorware:abcd := 1

def := ASIN(1.0)

props := [ #x: 1 #y:2 #z: 3]

if abcd > 1 then

xyz

else

pqr

end if

• Tcl/Tk:set abcd [ expr 1 ]

set def [ expr asin(1.0) ]

set props [ expr { .x: 1 .y:2 .z: 3} ]

if {abcd > 1} then {

xyz

} else {

pqr

}

Page 43: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 43

Progress Report

• Basic interaction types coded– Still some work (e.g., hot spot, slider)

• Basic sequencing library (e.g., prerequisites)– Interface yet to be defined

• Developer interactions– Significant work needed on PowerPoint UI

• Integration– API access– CMI, LOM, and PAPI data model access– Make sequencer available with open source CMI

(XavierProject.ORG)

• High Priority: improve UI and workflow

Page 44: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 44

Open Issues

• Business rationale for vendor import/export• Need user-based navigation• User actions/behavior• Should subdivide list between navigation

actions/behavior• Focus on some grouping “level” to identify the

triggers that can be passed to affect the sequence• Should refer to low-level micro operations• State transition diagrams (functional def)

Page 45: 2000-03-14CBT Data Interchange, F. Farance, ©2000 Edutool.Com1 CBT Data Interchange (SEQ, Tcl) 2000-03-14 Presentation Frank Farance, +1 212 486 4700,

2000-03-14 CBT Data Interchange, F. Farance, ©2000 Edutool.Com 45

Future Work (2000-05)

• Revised Tcl/SEQ data interchange specification

• Collaboration among: IEEE LTSC, AICC, IMS, others

• Interface to “course structure” library• Improved UI and workflow• API integration• Demonstration of practical examples, work

with other vendors