SlideShare une entreprise Scribd logo
1  sur  30
Building Scalable IMS LTI Tools
Using the TSUGI Framework
Charles Severance
www.dr-chuck.com
www.tsugi.org
2
Installation Instructions
www.tsugi.org
Project Tsugi
• Tool Hosting Container (i.e. Like a B2)
– PHP now, Java in development
• 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?
L
T
I
PHP
Java
C#
...
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-Colonialism
LTI-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
App
Store
Tool Tool Tool Tool...
Multiple LMS Campus + App Store
App
Store
Tool Tool Tool Tool
Tsugi
Hosting
Container
Tool ToolTool
...
Install
Tsugi
Exp
Multiple LMS Campus + App Store
App
Store
Tool Tool Tool Tool
Tsugi
Prod
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
<?php
require_once "../../config.php";
require_once $CFG->dirroot."/pdo.php";
require_once $CFG->dirroot."/lib/lms_lib.php";
use TsugiCoreLTIX;
$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
PHP Tsugi Next Steps
• Tsugi 2.0 – Break into parts
• IMS LTI 2.1 Support
• Improve Internationalization
• xAPI support
• IMS Caliper Support
• IMS Casa Support
• Moodle Outreach?
Tsugi is in 24x7
production and I can
support a few
experimenters on
my servers.
• Currently just a library and sample servlet
• APIs + factory pattern
• Depends on PHP Tsugi
– Database table management
– Developer test harness
– Shares core data tables with PHP Tsugi
• More to develop
– Java database/key admin
– Java developer console
Java Tsugi http://csev.github.io/tsugi-java/
Java Tsugi
Tool Code
Launch launch = tsugi.getLaunch(req, res);
if ( launch.isComplete() ) return;
if ( ! launch.isValid() ) {
throw new RuntimeException(launch.getErrorMessage());
}
Output o = launch.getOutput();
Properties p = o.header(out);
out.println("<title>Sample</title>");
// Some of my CSS includes...
o.bodyStart(out);
o.navStart(out); // If you want it..
o.flashMessages(out);
out.println("<pre>");
out.println("Welcome to hello world!");
out.println("</pre>");
o.navEnd(out); // If you started it
o.footerStart(out);
// Some of my own JavaScript goodness
$(document).ready( ... );
o.footerEnd(out);
Deploying Java Tsugi Apps
Tomcat
Sakai
Tsugi
Tool
STsugi
Sakai
Tool
Sakai
Amazon
Tsugi
Tool
JTusgi
Tsugi
Tool
JTsugi
Java Tsugi Next Steps
• Build out the library
• Build LTI 2 registration servlet
• Build administrator interface
– Configure database / manage keys
– Developer console
– Tool hosting / installer (CASA Perhaps?)
• Explore org.sakaiproject.tsugi...
Thank You...
www.tsugi.org

Contenu connexe

Tendances

Building the NGDLE with Tsugi (次) and Koseu(코스)
Building the NGDLE with Tsugi (次) and Koseu(코스)Building the NGDLE with Tsugi (次) and Koseu(코스)
Building the NGDLE with Tsugi (次) and Koseu(코스)Charles Severance
 
Building the Next Generation Teaching and Learning Environment with Tsugi (次)
Building the Next Generation Teaching and Learning Environment with Tsugi (次)Building the Next Generation Teaching and Learning Environment with Tsugi (次)
Building the Next Generation Teaching and Learning Environment with Tsugi (次)Charles Severance
 
Apereo 2015: The State of Sakai
Apereo 2015: The State of SakaiApereo 2015: The State of Sakai
Apereo 2015: The State of SakaiCharles Severance
 
Experience Teaching Massive Open Online Courses (MOOCs)
Experience Teaching Massive Open Online Courses (MOOCs)Experience Teaching Massive Open Online Courses (MOOCs)
Experience Teaching Massive Open Online Courses (MOOCs)Charles Severance
 
The Grand Convergence: The Future of e-Learning and Education Publishing
The Grand Convergence: The Future of e-Learning  and Education PublishingThe Grand Convergence: The Future of e-Learning  and Education Publishing
The Grand Convergence: The Future of e-Learning and Education PublishingCharles Severance
 
Exploring the Next Generation Digital Learning Ecosystem
Exploring the Next Generation Digital Learning EcosystemExploring the Next Generation Digital Learning Ecosystem
Exploring the Next Generation Digital Learning EcosystemCharles Severance
 
CloudSocial: A New Approach to Enabling Open-Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open-Content for Broad ReuseCloudSocial: A New Approach to Enabling Open-Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open-Content for Broad ReuseCharles Severance
 
Exploring the Next Generation Digital Learning Environment with Tsugi
Exploring the Next Generation Digital Learning Environment with TsugiExploring the Next Generation Digital Learning Environment with Tsugi
Exploring the Next Generation Digital Learning Environment with TsugiCharles Severance
 
SakaiX: The First Ten Years and the Next* Ten Years
SakaiX: The First Ten Years and the Next* Ten YearsSakaiX: The First Ten Years and the Next* Ten Years
SakaiX: The First Ten Years and the Next* Ten YearsCharles Severance
 
Sakai: Free as in Freedom (Lansing, MI)
Sakai: Free as in Freedom (Lansing, MI)Sakai: Free as in Freedom (Lansing, MI)
Sakai: Free as in Freedom (Lansing, MI)Charles Severance
 
Do It Yourself LMS: Open-Source and Hi-Tech Possibilities
Do It Yourself LMS: Open-Source and Hi-Tech PossibilitiesDo It Yourself LMS: Open-Source and Hi-Tech Possibilities
Do It Yourself LMS: Open-Source and Hi-Tech Possibilitiesgrandeped
 

Tendances (11)

Building the NGDLE with Tsugi (次) and Koseu(코스)
Building the NGDLE with Tsugi (次) and Koseu(코스)Building the NGDLE with Tsugi (次) and Koseu(코스)
Building the NGDLE with Tsugi (次) and Koseu(코스)
 
Building the Next Generation Teaching and Learning Environment with Tsugi (次)
Building the Next Generation Teaching and Learning Environment with Tsugi (次)Building the Next Generation Teaching and Learning Environment with Tsugi (次)
Building the Next Generation Teaching and Learning Environment with Tsugi (次)
 
Apereo 2015: The State of Sakai
Apereo 2015: The State of SakaiApereo 2015: The State of Sakai
Apereo 2015: The State of Sakai
 
Experience Teaching Massive Open Online Courses (MOOCs)
Experience Teaching Massive Open Online Courses (MOOCs)Experience Teaching Massive Open Online Courses (MOOCs)
Experience Teaching Massive Open Online Courses (MOOCs)
 
The Grand Convergence: The Future of e-Learning and Education Publishing
The Grand Convergence: The Future of e-Learning  and Education PublishingThe Grand Convergence: The Future of e-Learning  and Education Publishing
The Grand Convergence: The Future of e-Learning and Education Publishing
 
Exploring the Next Generation Digital Learning Ecosystem
Exploring the Next Generation Digital Learning EcosystemExploring the Next Generation Digital Learning Ecosystem
Exploring the Next Generation Digital Learning Ecosystem
 
CloudSocial: A New Approach to Enabling Open-Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open-Content for Broad ReuseCloudSocial: A New Approach to Enabling Open-Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open-Content for Broad Reuse
 
Exploring the Next Generation Digital Learning Environment with Tsugi
Exploring the Next Generation Digital Learning Environment with TsugiExploring the Next Generation Digital Learning Environment with Tsugi
Exploring the Next Generation Digital Learning Environment with Tsugi
 
SakaiX: The First Ten Years and the Next* Ten Years
SakaiX: The First Ten Years and the Next* Ten YearsSakaiX: The First Ten Years and the Next* Ten Years
SakaiX: The First Ten Years and the Next* Ten Years
 
Sakai: Free as in Freedom (Lansing, MI)
Sakai: Free as in Freedom (Lansing, MI)Sakai: Free as in Freedom (Lansing, MI)
Sakai: Free as in Freedom (Lansing, MI)
 
Do It Yourself LMS: Open-Source and Hi-Tech Possibilities
Do It Yourself LMS: Open-Source and Hi-Tech PossibilitiesDo It Yourself LMS: Open-Source and Hi-Tech Possibilities
Do It Yourself LMS: Open-Source and Hi-Tech Possibilities
 

Similaire à Updated Version: Tsugi Overview

OCCI Specification Walkthrough
OCCI Specification WalkthroughOCCI Specification Walkthrough
OCCI Specification Walkthroughbefreax
 
Doctrine Project
Doctrine ProjectDoctrine Project
Doctrine ProjectDaniel Lima
 
Bring-your-ML-Project-into-Production-v2.pdf
Bring-your-ML-Project-into-Production-v2.pdfBring-your-ML-Project-into-Production-v2.pdf
Bring-your-ML-Project-into-Production-v2.pdfLiang Yan
 
Codeigniter : The Introduction
Codeigniter  : The IntroductionCodeigniter  : The Introduction
Codeigniter : The IntroductionAbdul Malik Ikhsan
 
StorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoStorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoAlluxio, Inc.
 
Introduction to EasyBuild: Tutorial Part 1
Introduction to EasyBuild: Tutorial Part 1Introduction to EasyBuild: Tutorial Part 1
Introduction to EasyBuild: Tutorial Part 1inside-BigData.com
 
Reproducibility and automation of machine learning process
Reproducibility and automation of machine learning processReproducibility and automation of machine learning process
Reproducibility and automation of machine learning processDenis Dus
 
PowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidPowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidMatthew Johnson
 
IMS Learning Tools Interoperability @ Nottingham
IMS Learning Tools Interoperability @ NottinghamIMS Learning Tools Interoperability @ Nottingham
IMS Learning Tools Interoperability @ NottinghamCharles Severance
 
CTS2 Development Framework
CTS2 Development FrameworkCTS2 Development Framework
CTS2 Development Frameworkcts2framework
 
01 Metasploit kung fu introduction
01 Metasploit kung fu introduction01 Metasploit kung fu introduction
01 Metasploit kung fu introductionMostafa Abdel-sallam
 
Expressive Microservice Framework Blastoff
Expressive Microservice Framework BlastoffExpressive Microservice Framework Blastoff
Expressive Microservice Framework BlastoffAdam Culp
 
LTI Update at the IMS QUarterly Meeting, Utrecht, NL
LTI Update at the IMS QUarterly Meeting, Utrecht, NLLTI Update at the IMS QUarterly Meeting, Utrecht, NL
LTI Update at the IMS QUarterly Meeting, Utrecht, NLCharles Severance
 
PHP from the point of view of a webhoster
PHP from the point of view of a webhosterPHP from the point of view of a webhoster
PHP from the point of view of a webhosterDominic Lüchinger
 

Similaire à Updated Version: Tsugi Overview (20)

OCCI Specification Walkthrough
OCCI Specification WalkthroughOCCI Specification Walkthrough
OCCI Specification Walkthrough
 
Doctrine Project
Doctrine ProjectDoctrine Project
Doctrine Project
 
Bring-your-ML-Project-into-Production-v2.pdf
Bring-your-ML-Project-into-Production-v2.pdfBring-your-ML-Project-into-Production-v2.pdf
Bring-your-ML-Project-into-Production-v2.pdf
 
2011 03-03-blti-umass
2011 03-03-blti-umass2011 03-03-blti-umass
2011 03-03-blti-umass
 
DevOps-Roadmap
DevOps-RoadmapDevOps-Roadmap
DevOps-Roadmap
 
Stackato v5
Stackato v5Stackato v5
Stackato v5
 
Anatomy of a Drupal Hack - TechKnowFile 2014
Anatomy of a Drupal Hack - TechKnowFile 2014Anatomy of a Drupal Hack - TechKnowFile 2014
Anatomy of a Drupal Hack - TechKnowFile 2014
 
Codeigniter : The Introduction
Codeigniter  : The IntroductionCodeigniter  : The Introduction
Codeigniter : The Introduction
 
StorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoStorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and Presto
 
Introduction to EasyBuild: Tutorial Part 1
Introduction to EasyBuild: Tutorial Part 1Introduction to EasyBuild: Tutorial Part 1
Introduction to EasyBuild: Tutorial Part 1
 
Reproducibility and automation of machine learning process
Reproducibility and automation of machine learning processReproducibility and automation of machine learning process
Reproducibility and automation of machine learning process
 
PowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidPowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue Kid
 
IMS Learning Tools Interoperability @ Nottingham
IMS Learning Tools Interoperability @ NottinghamIMS Learning Tools Interoperability @ Nottingham
IMS Learning Tools Interoperability @ Nottingham
 
CTS2 Development Framework
CTS2 Development FrameworkCTS2 Development Framework
CTS2 Development Framework
 
IMS Basic LTI Overview
IMS Basic LTI OverviewIMS Basic LTI Overview
IMS Basic LTI Overview
 
01 Metasploit kung fu introduction
01 Metasploit kung fu introduction01 Metasploit kung fu introduction
01 Metasploit kung fu introduction
 
My Saminar On Php
My Saminar On PhpMy Saminar On Php
My Saminar On Php
 
Expressive Microservice Framework Blastoff
Expressive Microservice Framework BlastoffExpressive Microservice Framework Blastoff
Expressive Microservice Framework Blastoff
 
LTI Update at the IMS QUarterly Meeting, Utrecht, NL
LTI Update at the IMS QUarterly Meeting, Utrecht, NLLTI Update at the IMS QUarterly Meeting, Utrecht, NL
LTI Update at the IMS QUarterly Meeting, Utrecht, NL
 
PHP from the point of view of a webhoster
PHP from the point of view of a webhosterPHP from the point of view of a webhoster
PHP from the point of view of a webhoster
 

Plus de Charles Severance

LTI Advantage: The Next Big Thing in LMS Integration
LTI Advantage: The Next Big Thing in LMS IntegrationLTI Advantage: The Next Big Thing in LMS Integration
LTI Advantage: The Next Big Thing in LMS IntegrationCharles Severance
 
Sakai Hierarchy Framework Changes Overview (not implemented)
Sakai Hierarchy  Framework Changes Overview (not implemented)Sakai Hierarchy  Framework Changes Overview (not implemented)
Sakai Hierarchy Framework Changes Overview (not implemented)Charles Severance
 
CloudSocial: A New Approach to Enabling Open Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open Content for Broad ReuseCloudSocial: A New Approach to Enabling Open Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open Content for Broad ReuseCharles Severance
 
A View on the Future of Sakai
A View on the Future of SakaiA View on the Future of Sakai
A View on the Future of SakaiCharles Severance
 
The Next Generation of Teaching and Learning Tools
The Next Generation of Teaching and Learning ToolsThe Next Generation of Teaching and Learning Tools
The Next Generation of Teaching and Learning ToolsCharles Severance
 
Standards to Enable an Open Learning Ecosystem
Standards to Enable an Open Learning EcosystemStandards to Enable an Open Learning Ecosystem
Standards to Enable an Open Learning EcosystemCharles Severance
 
The Trials and Tribulations of Predicting the Future of Educational Technology
The Trials and Tribulations of Predicting the Future of Educational TechnologyThe Trials and Tribulations of Predicting the Future of Educational Technology
The Trials and Tribulations of Predicting the Future of Educational TechnologyCharles Severance
 
MOOCs – The Future Is Getting Clearer
MOOCs – The Future Is Getting ClearerMOOCs – The Future Is Getting Clearer
MOOCs – The Future Is Getting ClearerCharles Severance
 
Programming for Everybody in Python
Programming for Everybody in PythonProgramming for Everybody in Python
Programming for Everybody in PythonCharles Severance
 
How will the MOOC Change Between Now and 2020?
How will the MOOC Change Between Now and 2020?How will the MOOC Change Between Now and 2020?
How will the MOOC Change Between Now and 2020?Charles Severance
 
Apereo Panel: Libraries, Education, and Collaboration
Apereo Panel: Libraries, Education, and CollaborationApereo Panel: Libraries, Education, and Collaboration
Apereo Panel: Libraries, Education, and CollaborationCharles Severance
 
Sakai 10 and Beyond - Next Steps for Sakai
Sakai 10 and Beyond - Next Steps for SakaiSakai 10 and Beyond - Next Steps for Sakai
Sakai 10 and Beyond - Next Steps for SakaiCharles Severance
 
These are my slides from TEDxKZoo (2013-11-09)
These are my slides from TEDxKZoo (2013-11-09)These are my slides from TEDxKZoo (2013-11-09)
These are my slides from TEDxKZoo (2013-11-09)Charles Severance
 

Plus de Charles Severance (15)

LTI Advantage: The Next Big Thing in LMS Integration
LTI Advantage: The Next Big Thing in LMS IntegrationLTI Advantage: The Next Big Thing in LMS Integration
LTI Advantage: The Next Big Thing in LMS Integration
 
Hierarchy requirements
Hierarchy requirements Hierarchy requirements
Hierarchy requirements
 
Sakai Hierarchy Framework Changes Overview (not implemented)
Sakai Hierarchy  Framework Changes Overview (not implemented)Sakai Hierarchy  Framework Changes Overview (not implemented)
Sakai Hierarchy Framework Changes Overview (not implemented)
 
CloudSocial: A New Approach to Enabling Open Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open Content for Broad ReuseCloudSocial: A New Approach to Enabling Open Content for Broad Reuse
CloudSocial: A New Approach to Enabling Open Content for Broad Reuse
 
The Game of MOOCs
The Game of MOOCsThe Game of MOOCs
The Game of MOOCs
 
A View on the Future of Sakai
A View on the Future of SakaiA View on the Future of Sakai
A View on the Future of Sakai
 
The Next Generation of Teaching and Learning Tools
The Next Generation of Teaching and Learning ToolsThe Next Generation of Teaching and Learning Tools
The Next Generation of Teaching and Learning Tools
 
Standards to Enable an Open Learning Ecosystem
Standards to Enable an Open Learning EcosystemStandards to Enable an Open Learning Ecosystem
Standards to Enable an Open Learning Ecosystem
 
The Trials and Tribulations of Predicting the Future of Educational Technology
The Trials and Tribulations of Predicting the Future of Educational TechnologyThe Trials and Tribulations of Predicting the Future of Educational Technology
The Trials and Tribulations of Predicting the Future of Educational Technology
 
MOOCs – The Future Is Getting Clearer
MOOCs – The Future Is Getting ClearerMOOCs – The Future Is Getting Clearer
MOOCs – The Future Is Getting Clearer
 
Programming for Everybody in Python
Programming for Everybody in PythonProgramming for Everybody in Python
Programming for Everybody in Python
 
How will the MOOC Change Between Now and 2020?
How will the MOOC Change Between Now and 2020?How will the MOOC Change Between Now and 2020?
How will the MOOC Change Between Now and 2020?
 
Apereo Panel: Libraries, Education, and Collaboration
Apereo Panel: Libraries, Education, and CollaborationApereo Panel: Libraries, Education, and Collaboration
Apereo Panel: Libraries, Education, and Collaboration
 
Sakai 10 and Beyond - Next Steps for Sakai
Sakai 10 and Beyond - Next Steps for SakaiSakai 10 and Beyond - Next Steps for Sakai
Sakai 10 and Beyond - Next Steps for Sakai
 
These are my slides from TEDxKZoo (2013-11-09)
These are my slides from TEDxKZoo (2013-11-09)These are my slides from TEDxKZoo (2013-11-09)
These are my slides from TEDxKZoo (2013-11-09)
 

Dernier

Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdfssuserdda66b
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 

Dernier (20)

Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 

Updated Version: Tsugi Overview

  • 1. Building Scalable IMS LTI Tools Using the TSUGI Framework Charles Severance www.dr-chuck.com www.tsugi.org
  • 2. 2
  • 4. Project Tsugi • Tool Hosting Container (i.e. Like a B2) – PHP now, Java in development • 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
  • 5. From the 2003 Sakai Proposal http://www-personal.umich.edu/~csev/papers/2004/2004_03_01_mellon_sakai_proposal.pdf
  • 9. 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?
  • 11. 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. ??
  • 12. Multiple LMS Campus + App Store App Store Tool Tool Tool Tool...
  • 13. Multiple LMS Campus + App Store App Store Tool Tool Tool Tool Tsugi Hosting Container Tool ToolTool ... Install
  • 14. Tsugi Exp Multiple LMS Campus + App Store App Store Tool Tool Tool Tool Tsugi Prod Tool ToolTool ...
  • 16.
  • 17.
  • 18.
  • 19.
  • 20. • 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
  • 21. PHP Tsugi Tool Code <?php require_once "../../config.php"; require_once $CFG->dirroot."/pdo.php"; require_once $CFG->dirroot."/lib/lms_lib.php"; use TsugiCoreLTIX; $LTI = LTIX::requireData(array('user_id', 'link_id', 'role','context_id')); ... $OUTPUT->header(); $OUTPUT->bodyStart(); $OUTPUT->flashMessages(); $OUTPUT->welcomeUserCourse(); if ( $USER->instructor ) { ...
  • 23. PHP Tsugi Next Steps • Tsugi 2.0 – Break into parts • IMS LTI 2.1 Support • Improve Internationalization • xAPI support • IMS Caliper Support • IMS Casa Support • Moodle Outreach? Tsugi is in 24x7 production and I can support a few experimenters on my servers.
  • 24. • Currently just a library and sample servlet • APIs + factory pattern • Depends on PHP Tsugi – Database table management – Developer test harness – Shares core data tables with PHP Tsugi • More to develop – Java database/key admin – Java developer console Java Tsugi http://csev.github.io/tsugi-java/
  • 25. Java Tsugi Tool Code Launch launch = tsugi.getLaunch(req, res); if ( launch.isComplete() ) return; if ( ! launch.isValid() ) { throw new RuntimeException(launch.getErrorMessage()); } Output o = launch.getOutput(); Properties p = o.header(out); out.println("<title>Sample</title>"); // Some of my CSS includes... o.bodyStart(out); o.navStart(out); // If you want it.. o.flashMessages(out); out.println("<pre>"); out.println("Welcome to hello world!"); out.println("</pre>"); o.navEnd(out); // If you started it o.footerStart(out); // Some of my own JavaScript goodness $(document).ready( ... ); o.footerEnd(out);
  • 26.
  • 27.
  • 28. Deploying Java Tsugi Apps Tomcat Sakai Tsugi Tool STsugi Sakai Tool Sakai Amazon Tsugi Tool JTusgi Tsugi Tool JTsugi
  • 29. Java Tsugi Next Steps • Build out the library • Build LTI 2 registration servlet • Build administrator interface – Configure database / manage keys – Developer console – Tool hosting / installer (CASA Perhaps?) • Explore org.sakaiproject.tsugi...