1 / 8

Overview of UBC SIS to Kuali Data Migration Using Ruby on Rails and SOAP Integration

This overview covers the data migration process from UBC's Student Information System (SIS) to Kuali Student. Utilizing Ruby on Rails (RoR) and the activerecord-oracle_enhanced-adapter, we connect to an Oracle database supporting composite primary keys. We also leverage the Savon SOAP client for accessing the LU.Service.CourseAdapter, which facilitates the mapping of UBC SIS legacy data to Kuali. Additionally, soapUI is used to validate the SOAP message structure, ensuring seamless integration, ease of data conversion, and improved readability.

Download Presentation

Overview of UBC SIS to Kuali Data Migration Using Ruby on Rails and SOAP Integration

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UBC SIS to CDM Data Migration

  2. 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

  3. 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

  4. 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> …

  5. 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, …

  6. Summary Performance 405 courses in 439 seconds 3321 courses / hour Todo: update tool to utilize Course Business Service

More Related