Content Deployment Interface Issues AICC June 2003 Minneapolis, MN USA Ed Cohen – Plateau Systems Tom King - Macromedia
Existing Interface Points ISD during Design: Course Structure & Prerequisites LMS Admin during Deployment: Course Structure Student during run-time: File-based, HACP, API What about the author during development?
Software Cycle Author Content Launch Content Publish Content Author Course
Content Development Cycle Author Content Authoring System World Edit API Needed Launch Content Publish Content LMS World Deploy API Needed Author Course
What would these APIs do? Edit API Check out a “package” of content directly to an authoring system or tool for revision Deploy API Check-in a “package” of content for testing, approval, or deployment Recommendation: Focus on deployment initially
Why focus on Deploy API? Clearer path to implementation Can work for simple content testing Easier for a desktop application to connect to a server & submit content than vice versa Existing formats can be leveraged Direct deployment enables new class of authors
Deployment API Options WebDAV & Source Code Control APIs IMS Digital Repository Interfaces (DRI) Alternate Specification
WebDAV & Source Control APIs Challenges Focus on text formats & single files Tend to integrate with programmer IDEs HTML doesn’t distinguish source vs object
IMS DRI Model Query/Search (Xquery Z39.50) Gather (SOAP w/Binary attachment) Push Pull Submit (SOAP w/Binary attachment) Store (SOAP w/Binary attachment) Alert (deferred)
DRI Architecture DRI
Package Exchange Notification Goals Focus on learning & training uses Simplify deployment for authors Use established & understood technology Enable evolution & extension
Package Exchange Model Content Server Package Package 3. Stage Build DEPLOY LMS Authoring Tool Course 2. LMS Approval & Process 1. Notify 4. Deploy Source One small click for authors & SysAdmins, one giant leap for simplified deployment. This is not rocket science
Proposed Specification Package Exchange Notification Content tool notifies server that a package is available Package can use existing AICC CSF + ZIP Notification options HTTP POST Web Services (SOAP/XML) Email Transfer options UNC FTP SOAP Binary attachment Email attachment
Proof-of-Concept Macromedia Breeze and Plateau LMS deploy content http://plateau-lms-server-net? type = aicc-au-url & url = http://breezecentral.com/something/lmsindex.htm & action = import & usr = user-name & pwd = user-password & title = Astronomy%20101 & duration = 00:10:00 & description = Introduction%20to%20the%20study%20of%20stars
Breeze Deployment
Email Message
Plateau Importer for Deployment
Plateau Importer - Final Steps
Other Uses Of Packages Student LMS Admin Author Check-out (stage content & session for deferred use or reference) Check-in (purge content cache & forward performance data) LMS Admin Student Data (batch roster or enroll) Competencies (objectives as index rather than AUs) Reports & Extracts (forward reports & data to other systems) Author Static & Dynamic content links (LCMS links for development & runtime) Search & Discovery (re-use & re-purpose) Test & Revise (preview/debug in deployment context, versioning) Submit & Deploy (workflow/approval, send content directly to LMS)
Next Steps AGR for an AICC CSF archive (CSF+ZIP) Gather other relevant use cases Data Model & Vocabulary for parameters Prioritize and Define Bindings for HTTP POST/CGI Web Services Email LAN/Command line