Tsugi Workshop @ Notre Dame

Post on 24-Jun-2015

527 views 0 download

Tags:

description

2014 10-07-tsugi-overview-nd

Transcript of Tsugi Workshop @ Notre Dame

Building Scalable IMS LTI Tools Using the TSUGI Framework

Charles Severancewww.dr-chuck.com

www.tsugi.org

http://etherpad.ctools.org/p/tsugi

Disclaimer...

What I am about to talk about is not an official direction or position of the University of Michigan, Longsight, nor IMS Global.

Installation Instructions

www.tsugi.org

Project Tsugi

• Tool Hosting Container (i.e. Like a B2)– PHP now, Java planned

• Based on IMS Specifications– LTI 1.x / LTI 2.x / IMS Settings / Common

Cartridge / Caliper / CASA / Roster / Gradebook / ....

• Tools can run on a campus hosting platform or commercial provider or cloud

• Tools are "installed" into hosting containers

From the 2003 Sakai Proposal

http://www-personal.umich.edu/~csev/papers/2004/2004_03_01_mellon_sakai_proposal.pdf

...

WTD?

LTI

PHPJavaC#

...

But...

"Large Midwestern University"

Sakai

.......

Looks pretty cool.... But...

Sakai

• Where is the user data??• What happens when there are 50 apps?• What if the app is free and hosted by a

professor?• What happens if we stop paying the license?

Neo-ColonialismLTI-style

LTI 1.x versus LTI 2.x and Beyond

• LTI 1.x – Three pages of spec and some "hello world" code

• LTI 2.x – Several specs – multiple interactions– We will need to share common implementations

across instructions• And what about Caliper, Casa, xAPI, etc. ??

Multiple LMS Campus + App Store

AppStore Tool Tool Tool Tool...

Multiple LMS Campus + App Store

AppStore Tool Tool Tool Tool

TsugiHostingContainer Tool ToolTool

...

Install

TsugiExp

Multiple LMS Campus + App Store

AppStore Tool Tool Tool Tool

TsugiProd Tool ToolTool

...

www.tsugi.org

• Install / Configuration similar to Moodle• Emulate the Moodle APIs / Runtime• Multi-tenant • Cookie free (i.e. loves iframes)• Uses PDO with some rules about FK for easy

cleanup• Auto-ddl feature to upgrade schema

PHP Tsugi

PHP Tsugi Tool Code<?phprequire_once "../../config.php";require_once $CFG->dirroot."/pdo.php";require_once $CFG->dirroot."/lib/lms_lib.php";

use \Tsugi\Core\LTIX;

$LTI = LTIX::requireData(array('user_id', 'link_id', 'role','context_id'));

...

$OUTPUT->header();$OUTPUT->bodyStart();$OUTPUT->flashMessages();

$OUTPUT->welcomeUserCourse();

if ( $USER->instructor ) { ...

Demo

• https://lti-tools.dr-chuck.com/tsugi/– Developer mode– Apply for keys

LTI Starter Kit

Deploying Starter Kit Apps

Tomcat

Sakai

TsugiTool

LTISK

SakaiTool

Sakai

AmazonEBS

TsugiTool

LTISK

TsugiTool

LTISK

Java Tsugi – Beyond Tomcat

Sakai

SakaiTool

Sakai

Blackboard

B2Tool

B2

Once we have a good sense of how a Java LTI tool might look, we can look beyond Tomcat hosting...

Truly Portable Java Tools

Sakai

TsugiTool

LTISK

SakaiTool

Sakai

Blackboard

TsugiTool

TSUGI/B

B2Tool

B2 AmazonEBS

TsugiTool

LTISK

Tomcat

TsugiTool

LTISK

PHP Tsugi Next Steps

• Promotion to get more eyes on Tsugi• Architecture Review / Critique• IMS LTI 2.0 Support (done)• Improve Internationalization • IMS Caliper Support• IMS Casa Support Tsugi is in 24x7

production and I can support a few experimenters on my servers.

Thank You...

www.tsugi.org