Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

University Extension Data Architecture

The Degree Navigator University Extension system stores all of its course description enrollment data in a single table called COURSEDESCRIPTION_DAGan Oracle-based application. In order to insulate us from their underlying table architecture, they have created a view that contains all of the information we require.

OPEN_CAMPUS_ENROLLMENTS

Column

Description

campus_course_record_number

The BANNER CRN of the enrolled course.

term_code

The BANNER term code of the enrolled course.

external_id

The external id of the student. This external id is a synced value between the University Extension database and MOTHRA.

External IDs

Open Campus Students are issued unique ids by University Extension, which are then matched with their Campus computing account information. This is done for several reasons:

  1. Most Open Campus students have no other affiliation with the University, therefore University Extension must sponsor their campus computing account. In order to keep track of these students, the shared external id is used.
  2. In some cases, ex-students will take Open Campus courses. In order to avoid confusion, these students must be referenced by an ID other than their student id.

Requirements

  • Availability: The University Extension data used by Sakai must be available on a 24x7 basis.
  • Refresh: MyUCDavis currently refreshes Extension data nightly, so the minimum refresh interval will be nightly. A long term goal would be to increase the refresh frequency of Extension data.

...

The current view-based structure of the Course Management schema lends itself well to integrating multiple sources of data. The extension students can be added to the coursemanagement_enrollment records simply by performing a sql UNION of the Banner and Extension data.

Code Block
titlepseudo-sql

SELECT *
   FROM banner_enrollment be
UNION
SELECT *
   FROM unex_enrollment ue

Implementation

The implementation of Open Campus enrollments will have two artifacts:

  • UNEX_ENROLLMENT Table: This table will be a column-for-column copy of the Banner-source mview (with the exception of using mothraid instead of pidm). The table will be filled nightly via the feed procedure.
  • UNEX Package: The UNEX package is a pl/sql package that contains all of the code necessary to update the unex_enrollment table with information from the Extension database. The functions of the package are as follows:

PKG_UNEX

Function

Parameters

Description

cm_unex_feed

none

The primary procedure to run the feed for the current term.

cm_unex_main

term code, crn, external id

Invokes all sub-procedures to add a student to a course.

cm_unex_feed_get_user_info

external id

Looks up mothra information for an external id.

cm_unex_feed_check_course

term code, crn

Checks the course information to ensure it is valid.

cm_unex_feed_add_enrollment

term code, crn, external id

Adds the student to the unex_enrollment table.