Nate Angell, Sakai Product Manager, The rSmart Group, Inc.
Duffy Gillman, Sr. Software Engineer, The rSmart Group, Inc.
Alan Hanson, VP Product Management, Teaching and Learning, Sungard SCT
12th Sakai Conference – Los Angeles, California – June 14-16
2
• Improved Ability for Synching Data
• rSmart Increment to Sakora Tool
Contributed by Unicon
• Learning Information Services (LIS) 2.0
• IMS Global Learning Consortium
• Standard for SIS - LMS Integration
12th Sakai Conference – Los Angeles, California – June 14-16
3
Sites
Groups
Roles
CLE
Synchronization
&
Mapping
Courses
SIS
Sections
Instructors
Students
Enrollments
12th Sakai Conference – Los Angeles, California – June 14-16
4
• SIS Batch
• Template Site Shells
• Automatic Site Creation per Course
CLE
Site
Templates
Batch
Files
12th Sakai Conference – Los Angeles, California – June 14-16
SIS
5
• Course Management (CM)
• Rich Course Data Model
• Data Staged in Sakai
• Rosters Pulled in at Site Creation Time
CLE SIS
Staging
Tables
Batch
Files
12th Sakai Conference – Los Angeles, California – June 14-16
6
Course Management - Site/Roster Mapping
12th Sakai Conference – Los Angeles, California – June 14-16
7
• Sakora Builds on Course Management
•
Site Creator Maps Rosters to Sites
•
Additional Import Capabilities
•rSmart Partnership with Sungard to
Incorporate and Test LIS 2.0 with Sakora
12th Sakai Conference – Los Angeles, California – June 14-16
8
12th Sakai Conference – Los Angeles, California – June 14-16
9
IMS Learning Information Services 2.0
• SunGard views the Learning Information Services 2.0 specification as a significant step forward in terms of delivering a robust, comprehensive, and service-oriented industry standard
• SunGard Higher Education is committed to adopting LIS 2.0 and has already completed coding and testing for the core functionality
• SunGard plans to start Beta testing LIS 2.0 compliant integration capabilities in Q2, 2011
• eLearning 8.0.x (IMS 1.1) and eLearning 8.1+ (LIS 2.0) will coexist, but ultimately customers will need to upgrade
12th Sakai Conference – Los Angeles, California – June 14-16
10
Learning Information Services 2.0 Specifications
• Person Management Service (PMS)
• Group Management Service (GMS)
• Membership Management Service (MMS)
• Course Management Service (CMS) - NEW
• Outcomes Management Service (OMS) - NEW
• Bulk Data Exchange Management Service (BDEMS)
- NEW
• WSDL Bindings for all SOAP-based web services
• Higher Education Profile
• SunGard Higher Education Profile
12th Sakai Conference – Los Angeles, California – June 14-16
11
Bulk Data Exchange
• Provides export of data out of Banner in batch mode
• Process extracts data and formats data into LIS 2.0 compliant
XML objects
• Output into one or multiple files
• Two major administrative concepts:
— Filter Criteria
— Tasks
• Once the bulk data file is created in an LIS 2.0 compliant format it is the responsibility of the partner system to import it
12th Sakai Conference – Los Angeles, California – June 14-16
12
Filter Criteria – 1 of 3
• Allows user to select and filter the data extracted from the
• Banner database and produced in the xml output file.
• Filter Name
• Filter Description
• Population Selection (use any existing Banner Population
Selection).
• Term Selection – All or Selected
• College Selection – All or Selected
• Department Selection - All or Selected
12th Sakai Conference – Los Angeles, California – June 14-16
13
Filter Criteria – 2 of 3
• Person Selection (capability to select persons who have a Logon
ID only)
• Filter based on person roles:
— Institution Roles:
• Student, Faculty, Learner, Instructor, Staff, Alumni,
ProspectiveStudent, Administrator, None
— Custom Roles (continue to publish existing custom roles):
• Friends, Finance, DevelopmentOfficer, Prospect, Applicant,
InstitutionAccept, ApplicantAccept, BannerINB, Finaid
12th Sakai Conference – Los Angeles, California – June 14-16
14
Filter Criteria – 3 of 3
• Partner Code Selection
— For one or more LMS (Learning Management System)
• Institution Codes
— For clients using Multi-Entity Processing - Pending
• Inactive Enrollments
• Faculty Department
• Course Data – All, Limited, Specific, Active or None
• Course Section Data – All, Limited, Specific or None
• Student Enrollment Data – All, Limited, Specific or None
• Cross List Data – All, Limited, Specific or None
• Faculty Assignment – All, Limited Specific or None
12th Sakai Conference – Los Angeles, California – June 14-16
15
Task Definitions
• Allows user to define, organize and schedule Bulk Data Extract tasks
— Task Name
— Task Description
— File Location
— File Size Limit (in MB)
— Partner Name
• Works in conjunction with Filter Criteria
12th Sakai Conference – Los Angeles, California – June 14-16
16
Bulk Data Exchange – Service Operations
• announceBulkDataExchange – This operation is provided by the target application (in LMS terminology the “Sync Agent” -
Luminis, rSmart, Blackboard etc.,). Once an extract file is complete, we have the capability to call this operation.
• reportBulkDataExchange – Our solution exposes a web service for the Sync Agent system to report the status of the bulk data import.
12th Sakai Conference – Los Angeles, California – June 14-16
17
Bulk Data Exchange – Person data extract use case
1.
2.
3.
4.
5.
6.
User configures filter criteria for bulk Person data extract
Bulk Data Extract process is executed and produces Bulk
Data Transaction File(s) constrained by configuration
— Maximum file size can be specified resulting in multiple Transaction
Files depending on volume of data
Once the process is complete a ‘bulkBlockManifest’ object is created to inform the consuming system regarding the Transaction File(s) to be picked up and processed
The ‘bulkBlockManifest’ is incorporated into an announceBulkDataExchange SOAP Request which is transmitted to the service endpoint exposed by the consuming system (the Learning
Management System (LMS)) announceBulkDataExchange response is received by Integration for eLearning
Data transfer is initiated either via FTP or directly via HTTPS
12th Sakai Conference – Los Angeles, California – June 14-16
18
Bulk Data Exchange Interaction Diagram – Banner Initiated
(Banner SIS) (Sakai CLE) announceBulkDataExchange reportBulkDataExchange
12th Sakai Conference – Los Angeles, California – June 14-16
19
Integration for e-Learning 8.1 Real-time Integration
Architecture
Luminis
Luminis LIS 2.0
Service Layer
Network / Internet
Banner
Banner Event
Publisher (BEP)
Integration for eLearning
Single sign-on
Sakai
Sakai CLE LIS 2.0
Service Layer
Allows disparate systems to communicate via service calls
12th Sakai Conference – Los Angeles, California – June 14-16
24
20
12th Sakai Conference – Los Angeles, California – June 14-16
21
• Sakora Developed by Unicon
• LIS 2.0 Extension by rSmart
• Tested with Sakai 2.7 and 2.8
12th Sakai Conference – Los Angeles, California – June 14-16
22
Parses individual
XML methods
(eg. replacePerson, replaceCourse, ...) into calls to CM
12th Sakai Conference – Los Angeles, California – June 14-16
23
LIS SOAP Method replacePerson replaceGroup replaceCourseTemplate replaceCourseOffering replaceSection replaceMembership replaceSectionAssociation
Affects CM Object
Person
Term, College
Course
Course Section
Course Section
Enrollment
Cross-Listing
12th Sakai Conference – Los Angeles, California – June 14-16
24
LIS - Banner - Sakai Data Mapping
LIS 2.0
Person
Group
Course
Template
Banner
Person
Term
Course
Sakai
User
Term
Canonical
Course
Course Section Course Section Section
Course Offering Course Section Course Offering
Group
Group
College
Department
Course Set
Course Set
Membership Student
Enrollment
Membership Faculty
Assignment
Membership
Membership
25
• Initial and Periodic Synchronization
• Triggers Batch Process
• Sakora Fetches Batch Via FTP
• Bulk Data Format Parsed to Real-time
Calls
12th Sakai Conference – Los Angeles, California – June 14-16
26
12th Sakai Conference – Los Angeles, California – June 14-16
27
• Message Queueing
• “Fire and Forget”
• Large Operations Broken Up
• Work Can Occur Simultaneously Across a
Cluster
• Fault Tolerance
*Uses MessageService with ActiveMQ
12th Sakai Conference – Los Angeles, California – June 14-16
28
• Web Services
•
Implemented via Spring Web Services
•
Flexible Logging
•
Flexible Marshalling/Routing
•
Security: Basic HTTP Auth over SSL
12th Sakai Conference – Los Angeles, California – June 14-16
29
• Configurable Extraction of Data
• LIS 2.0 Provides Flexibility (eg. Person
Attributes)
• Institution or SIS May Label Data
Differently
• Parsing of XML Messages Controlled by
Configurable XPath
12th Sakai Conference – Los Angeles, California – June 14-16
30
• Person ID Mapping
•
Common Use Case - Sakai EID not in SIS
•
Pluggable Mapping Service can Consult any Resource Necessary
12th Sakai Conference – Los Angeles, California – June 14-16
31
• Auditing
•
Primarily Important for Bulk Data
Exchange
•
Pluggable
•
Ideal is Asynchronous Response to Data
Exchange Call
•
Email to Admin
•
Results Available in Database
12th Sakai Conference – Los Angeles, California – June 14-16
32
12th Sakai Conference – Los Angeles, California – June 14-16
33
12th Sakai Conference – Los Angeles, California – June 14-16
34
• Sakora Source
• https://source.sakaiproject.org/contrib/unicon/sakora
• MessageService Source
• https://source.sakaiproject.org/contrib/messageservice/
12th Sakai Conference – Los Angeles, California – June 14-16
35
• Basic
• Base for WS URLs:
• sakora.saipEndpoint= http://localhost:8080/sakai-sakora-tool/services
• Configuration for FTP Connection:
• hostName@net.unicon.sakora.api.handler.url.URLHandlingTemplate.sungard
=
• homeDirectory@net.unicon.sakora.api.handler.url.URLHandlingTemplate.sungard
=
• userId@net.unicon.sakora.api.handler.url.URLHandlingTemplate.sungard
=
• password@net.unicon.sakora.api.handler.url.URLHandlingTemplate.sungard
=
12th Sakai Conference – Los Angeles, California – June 14-16
36
• Advanced
• Extensive configuration in components.xml
• Documentation to be updated by rSmart for (most significantly) Auditing features
12th Sakai Conference – Los Angeles, California – June 14-16
37