light technical introduction to lti on edx

Post on 14-Jun-2015

478 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Light Technical Introduction to LTI on edX Introduction to state of LTI on edX Links to code that demonstrates LTI integration Details on how to add to Studio

TRANSCRIPT

LTILearning Tools

Interoperability™

on EdX Platform

Sep 17 2014github: icerajemail: ceraj@mit.edu

Ivica Ceraj

Is LTI the right solution for me?

LTI external server &| lots of computationuses iframestores large amount of state THIS TALK

Is LTI the right solution for me?

LTI external server &| lots of computationuses iframestores large amount of state

JS Input a bit of grading computationuses iframestores small to medium amount of data

etcX a bit of grading computationin-page integration (auto-scaling, better control)stores small to medium amount of data

NOT THIS TALK

NOT THIS TALK

THIS TALK

About LTI

IMS Global Consortium defines Learning Tools Interoperability™.There are two revisions of LTI:

LTI 1.1 - http://www.imsglobal.org/LTI/v1p1p1/ltiIMGv1p1p1.htmlLTI 2.0 - http://www.imsglobal.org/lti/ltiv2p0/ltiIMGv2p0.html

LTI 1.1 older and simpler better support within edXLTI 2.0 newer and discoverability works with edXLTI 1.2 public draft - i.e. if you don’t need LTI 2.0 no need to upgrade

What do we get from LTI 1?

LTI1 spec declares

Basic Launch Data OAuth SigningOutcome service

specs28+ params9 paramsreplaceResultreadResultdeleteResult

edX9 params 9 params replaceResult

edX implementation of LTI v1 is simple and functional.

And LTI2?

Source: IMS Global

LTI v2.0: Learning Tools (with full) Interop● REST-level 3 Web Service Model

● JSON-LD for Payload Definition

● Discoverable Services

● Automatic Credential Exchange and Management

● Architected Services

● Tool Settings● Organization Hierarchy● Partner-Provided Services

EdX support for LTI v2.0:“We are also committed to the potential of LTI (learning tools interoperability), both expanding what we offer via the LTI 1.1 protocol and expanding into LTI 2.x to enable grades to transfer to the LMS and course launch from other environments. Members of our open source community are stepping forward to lead these initiatives, and we will support their work in order to help those projects succeed.” - Beth [ref: http://engineering.edx.org/]

LTI v2.0 more complex and of more interest to product/commercial orgs

LTI Demo

Open edX studioOpen LTI problemDemonstrate grade propagates

End User System InteractionsBrowser edX server LTI

initial request

iframe tag

iframe request to lti (oauth signed)

tool in iframe

student submits answers

lti sends grade to edX (oauth signed)

lti sends confirmation to student

edX acks

Use case:● Launch external tool● Get graded result (optional)

Security:● Shared secret● OAuth signing

User’s experience:● iframe● new browser window

LTI and edX Studiohttp://edx-partner-course-staff.readthedocs.org/en/latest/exercises_tools/lti_component.html1. Settings -> Advanced Settings:

Advanced Module List: [“lti”]

LTI Passports: ["lti_starx_add_demo:__consumer_key__:__lti_secret__"]

2. Add Problem Set Type Advanced -> “LTI”

3. Edit

Open in new page -> open in new window or inline

LTI ID -> passport “lti_starx_add_demo”

Scored -> is it scored (LTI server returns 0-1)

Weight -> grade = weight * score(0,1)

External Resources

IMS Consortium: http://www.imsglobal.org/IMS Catalog: http://www.imsglobal.org/cc/statuschart.cfmEdu Apps: https://www.edu-apps.org/index.html

Some LTI Apps (from Edu Apps):YouTube, WordPress, Piazza, MyOpenMath, TED Ed,...

LTI tools and demos

Python:Library: https://github.com/mitodl/ims_lti_pyDemo: https://github.com/mitodl/ims_lti_py_djangoLive demo: http://ims-lti-py-django.herokuapp.com/

I am tasked with:Developing it for PHP and couple of other languages

Thank you!Q: Should we join IMS Developer program?

Q: Should we support LTI/edX library for MIT?

Q: Which languages?

Q: Should we work w/ LTI2?

Q: Does MITx have courses using LTI2?

Q: Should we have talk on JSInput?

Q: Should I talk about etcX?

top related