8
UBC SIS to CDM Data Migration

UBC SIS to CDM Data Migration

Embed Size (px)

DESCRIPTION

UBC SIS to CDM Data Migration. Overview. Ruby Dynamic language well suited for integration work Ruby on Rails (ROR) application Plugins used: activerecord - oracle_enhanced -adapter – to connect to UBC SIS (Student Information System) Oracle database - PowerPoint PPT Presentation

Citation preview

Page 1: UBC SIS to  CDM Data Migration

UBC SIS to CDM Data Migration

Page 2: UBC SIS to  CDM Data Migration

Overview

•Ruby Dynamic language well suited for integration work•Ruby on Rails (ROR) application•Plugins used:

•activerecord-oracle_enhanced-adapter – to connect to UBC SIS (Student Information System) Oracle database•composite_primary_keys – composite primary keys for ROR•Savon – Ruby SOAP client to access LU Service

•CourseAdapter class handles mapping of UBC SIS legacy data to Kuali Student

Page 3: UBC SIS to  CDM Data Migration

CrrsCrsCatalogt

+create_course()+create_courses()

...

CourseAdapter

Savon::Client

Page 4: UBC SIS to  CDM Data Migration

Approach

•soapUI used to validate LU Service SOAP message structure•Converted SOAP message structure to a hash for Savon client•Benefits:

•Handles data conversion i.e. dates•Easier to read – name/value pairs

Page 5: UBC SIS to  CDM Data Migration

SOAP Message (RAW)

<soapenv:Header/> <soapenv:Body> <lu:createClu> <luTypeKey>?</luTypeKey> <cluInfo type="?" state="?" id="?"> <officialIdentifier type="?" state="?" id="?"> <code>?</code> <shortName>?</shortName> <longName>?</longName>…

Page 6: UBC SIS to  CDM Data Migration

Hash of SOAP Data

soap.body = { :luTypeKey => "kuali.lu.type.CreditCourse", :cluInfo => { :officialIdentifier => { :code => @code, :shortName => @short_name, :longName => @long_name, :level => @level, :division => @division,…

Page 7: UBC SIS to  CDM Data Migration

Summary

•Performance• 405 courses in 439 seconds• 3321 courses / hour

•Todo: update tool to utilize Course Business Service

Page 8: UBC SIS to  CDM Data Migration