sakai content integration strategies dan mccallum sakai winter conference, dec 7, 2006 © copyright...

Post on 18-Dec-2015

223 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Sakai Content Integration Strategies

Dan McCallumSakai Winter Conference, Dec 7, 2006

© Copyright Unicon, Inc., 2006. This work is the intellectual property of Unicon, Inc. Permission is granted for this material to be shared for non-commercial, educational purposes, provided that this copyright statement appears on the reproduced materials and notice is given that the copying is by permission of Unicon, Inc. To disseminate otherwise or to republish requires written permission from Unicon, Inc.

1. The Content Problem

2. Transformative Integrations

3. Proxied Integrations

4. Conclusions

The Content Problem

The Content Problem

• Can Sakai deliver content bundled in Archive Format ABC? How do I move my content from System X to Sakai?

• What kind of content?

• Are we talking about content, functionality or both? What about system state?

• Validity of a content integration solution is context-specific

• Migration and Integration – distinct concepts

Transformative Integrations

Transformative Integrations

• Characterized by:

– Mapping external content onto Sakai-native data

structures

– One-time or periodic data synchronization;

offline/batch file processing

– Content delivery via Sakai-native tools and UIs

– XML “packages”

Transformative Integrations

• Appropriate when:

– Migrating users and/or content from another LMS

to Sakai

– Acceptable delivery tooling already exists in the

LMS

– Content does not change rapidly or can be

completely owned by the LMS

– Loose centralized content hosting requirements

Transformative Integration Example:Sakai Archives

Sakai Archives

• Site-oriented import/export using legacy Sakai XML schema.

• Primarily intended for intra-Sakai content reuse rather than cross-platform data interchange

• Support varies from service to service – can be difficult to predict import/export symmetry

• Recently added configurable service and role filters

Sakai Archives Pro/Con

• External content packages could be transformed to Sakai-native archives

• Relatively low risk: maximizes re-use of existing archive consumption code

• Archive schema itself is unpublished (except in Java code); widespread adoption unlikely

• What would a more robust archive service entail? Enter Zach Thomas and the MIG group…

Transformative Integration Example:ImportService

ImportService

• An architecture for format-agnostic inbound

content package handling

• Implementations parse, validate and import

data feeds to Sakai-native objects.

• Development tracked by Migration WG

(http://bugs.sakaiproject.org/confluence/displ

ay/MIG/Home)

ImportService

• Separation of concerns:

– Decouples data interchange formats from core Sakai services and entities

– Decouples object import operations from core Sakai service interfaces

• Fine-grained extensibility

• Flexible deployment/configuration model

• IMS and vendor-specific interchange formats

– Sakai native archive and IMS Common Cartridge 1.0 parsers in trunk

– Bb 5.5, 6, Web CT CE parsers available in contrib

Image courtesy of Mark Norton (http://bugs.sakaiproject.org/confluence/display/MIG/Archive+Service)

ImportService – Improvements?

• Plug-in auto-registration

• Export

• Error handling, rollback

• Automated tests

• ‘Dry run’ mode

• Published archive format support document

• UI-configurable IMS parsing

Transformative Integration Example:Melete

Melete CP Support – Upsides

• Demonstrable LAMS integration via IMS CP

(http://bugs.sakaiproject.org/confluence/displ

ay/MIG/Melete+and+LAMS)

• Straightforward UI

• Easily reusable content -- Unicon has used

Melete IMS CP for replicating Sakai training

materials across multiple Sites

Melete CP Support – Downsides

• Limited support for inlined exams, complex sequencing, meta-data…

• No content change synchronization workflow

• Silo-ed infrastructure: IMS CP de/serialization implementation not easily reused by other Sakai services

• Vendor CP profiles not supported architecturally (WebCT CP support via out-of-band XML transforms)

Transformative Integration Example:Samigo

Samigo

• Traditionally, QTI import/export embedded

exclusively in the tool and its services

• Sakai 2.3 distro includes a ‘SamigoHandler’

which can be registered with the

ImportService for consumption of inbound

QTI documents.

• UC Davis recently added question pool import

to the UI. (2.1.x, 2.4)

Transformative Integration Example:OCW

OCW

• Ambitious content export project, focused on Sakai->eduCommons integration

• OCW sites are generated from IMS CPs

• Theoretically, this architecture should overlap with the abstract Import/Export model above

• The overhead associated with OCW export illustrates some of the drawbacks of transformative migration – moving data between delivery engines comes at a price.

Proxied Integrations

Proxied Integrations

• Characterized by:

– Aggregated content delivery rather than content

ownership.

– Delegation to best-of-breed rather than tight

integration

– Application-to-application interaction rather than

periodic data synchronization

– Sakai as portal rather than applications suite

– Messaging rather than packaging

Proxied Integrations

• Appropriate when:

– Content requires sophisticated delivery tooling which is not tightly integrated with Sakai.

– Data transformation/synchronization is prohibitively complex and/or adds little value

– Content already available in convenient, standards-based, LMS-agnostic, feature- and meta-data-rich, online environment (e.g. a digital repository)

– Scalability/up-time considerations recommend distributed tool deployments

Proxied Integration Example:WebContent

WebContent

• Simplest application “integration” strategy

• Sakai authZ and context may not map well

• Potentially disruptive user experience

• iframes can be annoying (XSS JavaScript errors, erratic back-button behaviors)

• Wisconsin’s JSR-168 version of CWebProxy might be a candidate alternative to iframes

• uPortal implementors (MUN, Yale, Chico, Johns Hopkins) have been successful with heavy use of the WebProxy channel

Proxied Integration Example:RSS

RSS

• Sakai ships with an RSS reader tool (aka “News”)

• If external data can be published as an RSS feed, Sakai users can access it.

• Simple, well understood technology

• Appropriate when external content conforms conceptually to a ‘feed’ model.

• Delegates delivery of “heavy weight” content objects to external systems

• Sakai as a portal-style dashboard onto enterprise application events (registrar add/drop reminders?), course-specific content feeds, etc.

Proxied Integration Example:Direct External Links/SSO Gateways

Direct External Links/SSO Gateways

• Provide users with a value-added links from a Sakai

context to an external application

• Another low-complexity alternative to data

synchronization or full-blown application integration

• Rutgers LinkTool formalizes this approach – helps

pass context and authZ assertions to external

applications

• Lightweight Sakai-Elluminate integration has been

demonstrated with this approach

Virtual Content Hosting

Virtual Content Hosting

• Enhance Sakai content hosting capabilities to transparently expose externally-maintained data

• Provide virtualized fine-grained views onto complex, coarse grained content blobs.

• Register content handlers or launchers to present users with the appropriate delivery environment, e.g. a SCORM player connected to a tracker service.

• Sakai architecture plug: CHS implementation is completely swappable. (Highly) motivated institutions can always reinvent CHS to support their specific needs.

Virtual Content Hosting Examples

• See Ian Boston’s proposed architecture on the Sakai

wiki

• Portland State University elected to host some

content in Hive during WebCT-Sakai migration

• Non-CHS variations also possible. Yale wrapped a

thin authZ enforcement tool around legacy Classes

web content.

Virtual Content Hosting – Upsides

• Reduces risk of data transforms

• Allows for arbitrary resource re-use (i.e.

content need not be mapped to ‘canonical

Sakai entities’)

• Ensures long-term course content

accessibility and portability

• Leverages investments in dedicated digital

content repositories.

Virtual Content Hosting – Downsides

• Potential latency problems

• Complex configuration

• Searchability?

• CHS bottlenecking?

Distributed Tooling

Distributed Tooling

• Sakai tooling acts as (hopefully) lightweight facades encapsulating interactive access to external applications and data.

• A Sakai tool renders distributed application responses in a Sakai-appropriate fashion.

• IMS TIF (Tool Interoperability Framework) and WSRP – may or may not be viable in the short term

• Sakai-LAMS distributed integration has been demonstrated with lightweight web services

• Cambridge FlowTalk: highly sophisticated distributed tool integration w/ custom wire protocol

Distributed Tooling – Upsides

• From TIF literature: "Most tools/applications

are NOT going to be ported into … Sakai...

and/or Blackboard... and/or WebCT.“

• LMS scalability and uptime enhanced by

distributed computing load, memory footprint

and data storage requirements

• Allows for consistent user experience across

a range of best-of-breed tools

Distributed Tooling – Downsides

• Latency

• Development, deployment and support

complexity

• Unproven standards

Conclusions

Modes of Integration

Transformative Proxied

Migrate Integrate

Own Aggregate

Import/Export Query

Producer/Consumer Peers

Data Applications

Synchronize Delegate

Local Distributed

Application Portal

Packages Messages

Destination Gateway

Summary and Conclusions

• Major advances in Sakai content import/export for v2.3, 2.4 Should reduce historical barriers to Sakai adoption.

• Migration is great, but…

• Can we actually deliver more value to users by treating Sakai as a portal or dashboard rather than a destination?

• Distributed tooling can expose arbitrary best-of-breed apps to Sakai while potentially addressing scalability issues

• You may not need heavy-weight remoting technologies and standards (TIF, WSRP) to implement distributed tooling or expose already web-enabled content

• What about library content? Integration can have highly specialized requirements. Anticipate some flavor of virtualized content hosting-based integration.

Dan McCallumdmccallum@unicon.net

www.unicon.nethttp://www.unicon.net/support_1089.html

Questions?

top related