Access Keys:
Skip to content (Access Key - 0)

CIM Courses Documentation

Please note that this page and related pages are being developed as part of the CIM Courses Project and are subject to change.

This article describes several processes that are relevant to administering, troubleshooting, and testing in CIM Courses. Please note that this page does not cover the basic functionality of the CIM Courses forms because they should be intuitive enough to grasp after minimal testing. For information about the business rules enforced by the CIM forms, review the CIM Courses validations listed on the Subject Management Business Rules KB Page

Table of Contents:

Product Overview

CIM Courses is MIT's Subject Proposal Management system. It is a vendor product owned by Leepfrog and is part of a suite of products known as "Courseleaf". As part of the CIM Courses Project, CIM Courses was customized to meet MIT's proposal management needs.

Accessing CIM Environments

Links

CIM Courses - Main Page (test) - https://mit-test.courseleaf.com/courseadmin/
CIM Courses - Main Page (prod) - https://subjectproposal.mit.edu/courseadmin/
 

Authorizations

Please refer to the Subject Management Authorizations KB page. A list of users who have the appropriate MIT roles is sent via the User Provisioning Feed.

Please note that data in CIM Courses can be viewed by any user with a valid MIT certificate.

Overview of CIM Courses Proposal Process

Standard Subjects

  • CIM Courses users have the ability to propose new subjects, edit existing subjects, deactivate subjects, or reactivate subjects. While making these changes, the users can save their changes as a draft using the "Save Changes" button. While a proposal is saved in this state, the proposal will not be consumed by MIT systems.
  • Once a user has completed their changes, they submit the proposal to workflow by pressing the "Start Workflow" button. The proposal then enters the Workflow stage of its lifecycle. CIM Workflow is essentially a series of steps a proposal must go through before it is considered "Approved" and flows to MIT systems. The current workflow diagrams for each type of change can be found attached to this KB page.
  • When the subject proposal is at any workflow step except for the "Banner" step, it is considered to be in "proposed" status*.
  • The final step of any workflow queue is the "Banner" step. It is at this step that the proposal is considered to be in an "approved" status*.

*For the differences in data flow based on a proposal being in "proposed" or "approved" status, please refer to the Subject Management Master Data Flow Diagrams KB page

Freshmen Seminars (FSEMs)

  • The process to propose, edit, deactivate, and reactivate Freshmen Seminars is very similar to the Standard Subject processes* . However, FSEMs are maintained using a different form in CIM Courses and have a different workflow (see attached "FreshmenAdvisingSeminarWorkflows.pdf"). Note that only administrative users and users with the SUBJ_DEPT_ADMIN_FSEM role in the MIT Roles database will be able to view/edit FSEMs in CIM.

*Note that FSEMs are technically considered "Standard Subjects" but are called out separately here for ease of understanding

Administrative Tasks

Managing Administrative Users

The Registrar performs this process in production. It requires being logged in as an administrative user.

  • Log into the CIM Console
  • Under the Administration section of the left panel, click the Account Management link. The resulting page will be a list of Courseleaf administrative users.
  • Options
    • Create New User - Press the New User button and input the appropriate information
    • Delete User - Highlight a user and press the Delete User button
    • Edit a User - Highlight a user and edit the appropriate information
  • Press OK to save changes

Reconciliation Report

The CIM Reconciliation Report is an excel spreadsheet containing discrepancies between CIM data and data provided to CIM in the the Outbound Feed. The purpose of this report is to ensure that CIM Courses has the same data as we store in the CTSS (which they refer to as "Banner" or "Student Information System" (SIS)). The report can be accessed from the CIM Console.

The subjects in the Reconciliation Report do not go "to rest" on the CIM side until the CIM data matches the CTSS (Banner) data. This prevents any further edits to the subject from the CIM forms. It is the responsibility of the Registrar to periodically review the sync errors in the Reconciliation Report and resolve them. In general, IS&T does not take any action on these sync errors unless the Registrar makes a request.

Late Proposal Process

Situations arise where the Registrar needs to create or edit a subject for the previous catalog cycle. The following is how the Registrar can accomplish this task.

New Subject

  1. User creates a new subject proposal in CIM Courses. The proposal is then approved by the Registrar.
    1. Effective From Term will be Catalog Year (e.g. 2020FA)
  2. Subject is processed by the API
  3. Subject will be inserted into the Container Template Subject Structure (CTSS), CIS (effective 2020FA)
    1. Note that configuration dates in SUBJECT_MGMT_CONFIG may prevent the MITSIS backfill record from getting processed. Refer to the MITSIS Backfill Data Flow Diagram for more information.
  4. "Reset Term for a CIS Subject" will be used to reset the term code (to 2019FA) in CIS. The "Reset Term" function can be found in the CISR menu from the main CIS Application Menu page.
  5. New SCASUBJI's "Backdate Container" button will be used to backdate the container in the CTSS (to 2019FA)
    1. A MITSIS Backfill record will be created, processed, and backfilled for the Subject

Subject Edit

  1. User proposes a subject edit in CIM Courses. The proposal is then approved by the Registrar.
    1. Effective From Term will be Catalog Year (e.g. 2020FA)
  2. Subject is processed by the API
  3. Subject will be updated in the CTSS, CIS (effective 2020FA)
    1. Configuration dates may prevent the MITSIS backfill record from getting processed depending on the state of the MITSIS backfill configuration value in SUBJECT_MGMT_CONFIG. Refer to the MITSIS Backfill Data Flow Diagram for more information.
  4. "Reset Term for a CIS Subject" will be used to reset the term code (to 2019FA) in CIS
  5. Registrar will make the appropriate subject edits using New SCASUBJI (effective 2019FA)
    1. A MITSIS Backfill record will be created, processed, and backfilled for the Subject

Archiving Subjects in CIM*

After a subject has been inactive for five years in the CTSS, it will be dropped out of the CIM Courses Outbound Feed. At this point, CIM administrative users can use the "Archive Subject" link on the CIM Courses UI to remove the subject from CIM entirely. This will free the subject number up to be assigned to a new subject proposal.

Archiving a Subject Early

The Registrar may occasionally allow departments to use an inactive subject number on a new subject proposal before it has been inactive in the CTSS for five years. This case requires special handling because if a subject in this state is archived, it will be re-created the next time Leepfrog processes the CIM Courses Outbound Feed (currently occurs every morning). To avoid this, the subject must be archived and the new subject must be proposed in the same day.

*Note: at the time this documentation was written, the archival process for subjects inactive for five years is not functioning as described. We are currently exploring options to fix.

Administrative Tasks for Testing

Manually Pushing CIM Data to the mit-subjects API

  1. Stage desired subject proposal(s) in the CIM Courses test environment.
  2. Complete the "Refresh CIM Export Data" steps outlined below
  3. Go to the CIM Courses - Data Export Page (test)
    1. Refresh this page if you already had it open prior to refreshing the CIM export data
  4. Right click the body of the page and choose the "View Page Source" option. This will open a new tab with more structured XML.
  5. Copy and paste the XML test data for relevant subjects into Postman
    1. Depending on your test case, it may be helpful to verify that the subject data is staged properly (e.g. both subjects in a reflexive equivalency relationship are present)
  6. POST the data to https://mit-subjects-v1-schedtest.cloudhub.io/test/courseleafFeed endpoint (update environment as necessary)
  7. For TEST Courseleaf, the endpoint is https://mit-subjects-v1-test.cloudhub.io/test/courseleafFeed
    1. You will also need to have the appropriate client_id and client_secret key/value pairs configured.
  8. You should get a response detailing the status of your POST.

Refresh the CIM Export Data (Republish Subdirectory)

Courseleaf only updates their export data once per day at 1am (EST/EDT - time zone independent). They refer to this process as "Publishing" the data.

For testing purposes, in order to ensure that the CIM Export Data (see Helpful Links section for the test environment link) is the most up-to-date, you will need to use the Republish Subdirectory functionality in the CIM Console. This process is a manual work-around to publish CIM data rather than waiting until the automated publishing process runs overnight. Steps:

  • Log into the CIM Console
  • Under the Administration section on the left panel, click the Republish Subdirectory link.
  • In the resulting page, type /courseadmin into the Directory to Republish input box. Do not include quotes: Republish Subdirectory input box
  • Press the OK button. You should receive a Republish Site dialog box and a message that says Republish Complete when it finishes republishing.

Shredding, Rollback, and Pushout Processes

Definitions

  • Shredding - an administrative user presses the "Shred Proposal" on a proposal. This action deletes the proposal records from the CIM database entirely.
    • The related proposal records in CIS should be deleted as a result of this action
  • Rollback - an administrative user presses the "Rollback" button from the CIM Console>Approve Pages menu such that the proposal is returned to a draft state.
    • The related proposal records in CIS should be deleted as a result of this action
  • Pushout - an administrative user changes the "Effective Catalog Year" value of a proposal to the next catalog year (e.g. updates '2019-2020' to '2020-2021')
    • The related proposal records in CIS should be deleted as a result of this action

Testing Shredding, Rollback, and Pushout Processes

The testing process for shredding, rollback, and pushout is nuanced so is laid out in the steps below. Please note that there are existing automated test cases for these processes listed on the Automated Test Case Index.

  1. POST the proposed subject XML against https://mit-subjects-v1-test.cloudhub.io/test/courseleafFeed Ensure the POST is successful and that the CIS backfill records are processed successfully# Using SQL, update the SUBJECT_CIM_INBOUND_FEED.RUN_TYPE = 'SCHEDULED' for the RUN_ID that corresponds to the subjects data processed (i.e. the run_id listed in the API response) Ensure that the update is committed to the database
  2. POST the XML for a shred against https://mit-subjects-v1-test.cloudhub.io/test/courseleafFeed?processShredded=true Rollbacks and pushouts can also be processed against this endpoint but can also be processed against https://mit-subjects-v1-test.cloudhub.io/test/courseleafFeed Note that the API response on these actions will be a "skip" rather than "successfully processed"

Becoming (Impersonating) a CIM User

  • Log into the CIM Console
  • Under the Administration section on the left panel, click the User Provisioning link. The resulting page will be a list of CIM users.
  • Highlight a user and press the Become... button.
  • You may need to refresh the CIM Courses main page before the new permissions take effect.
  • You will now interact with CIM Courses as if you were logged in as that user. Please note that you will lose administrative access for your session.
  • In order to "unbecome" a user, you must log out using the door icon in the top right of the User Provisioning page.

There are currently only two types of CIM users - Department Administrators and Freshman Seminar Users. In order to impersonate a Freshman Seminar User, identify a user in User Provisioning with the FSEM qualifier and become that user.

Getting a Subject to an "At Rest" State

From the CIM Courses perspective, the term "At Rest" describes a Subject that is not in workflow and is not in draft format - and also has "synched" at the Banner workflow step. Sometimes it is necessary to get a particular subject to the "at rest" state for testing. The following describes two options:

Option 1: Manipulating the CIM Workflow Queue

Courseleaf has strongly advised us not to perform the following procedure in Production. These steps should only be performed in development/testing environments.

  1. Submit a proposal to workflow. Make note of the first step in the workflow queue.
  2. Log into the CIM Console.
  3. Under the Administration section on the left panel, click the "Approve Pages" link.
  4. In the resulting page, change the "Your Role" dropdown value to match the first step of the workflow queue you made note of in step 1.
  5. Find and Highlight the Subject proposal in the resulting "Page Pending Approval" list.
  6. In the top right panel, press the "Workflow Status" tab (the page will default to displaying the "Page Info" tab.
  7. Press the "Update Pending Workflow" button.
  8. Remove the "Banner" step by highlighting and pressing the red "X" button. Additionally, remove all other workflow steps other than the step you used in the "Your Role" dropdown in Step 4.
  9. Press the "OK" button to save.
  10. With your Subject highlighted and Workflow Status updated, press the "Approve" button in the "PAGE REVIEW" pane. Your Subject will now be "At Rest".

Option 2: Allow the Outbound Feed to Create the Subject Overnight

  1. Create or edit a subject in CIM Courses and approve it to the "Banner" workflow step
  2. Follow the steps in the "Manually Pushing CIM Data to the mit-subjects API" section of this document so that the subject is inserted/updated into the CTSS
  3. Wait until the following day. Since the CIM Outbound Feed/Sync Process should occur overnight, the subject should be in the "At Rest" state. If it is not, check for discrepancies in Reconciliation Report.

Other Documentation

Integration Points

For CIM Courses' integration points, please see the Subject Management Master Data Flow Diagrams KB page. For associated information on the integration points, please review the associated KB page which can be found on the Subject Management Documentation Index

Testing and Connection to MIT Systems

For testing purposes during the project life cycle, the CIM-Courses Test tier was connected to MIT's 'SCHED-TEST' tier. Details:

  1. CIM-Courses Test tier (hosted and managed by the vendor, Leepfrog) - https://mit-test.courseleaf.com/courseadmin/
    1. Calls the CIM-Courses Outbound Feed endpoint ( https://mit-subjects-v1-schedtest.cloudhub.io/cimOutboundFeed)
    2. User provisioning data is not sent because the test tier uses a generic username/password
  2. MIT Tier connected to CIM-Courses Test tier
    1. Database: SUNSEA25 (sea-db-5.mit.edu)
    2. SCASUBJI - https://subjectmgmt-sched-test.mit.edu/#/
    3. Term Plan-https://termplan-sched-test.mit.edu/
  3. NOTE: CIM-Inbound feed was run manually during testing for immediate results and validation. 

Subject Equivalency Removal Matrix

The following matrix details the expected behavior with respect to its equivalencies in each system when after removing subject relationships in CIM Courses.

Please note that in MITSIS, subject numbers in cross-listed and SWE relationships were considered equivalents in the SCREQIV table. Additionally, if a subject was renumbered, the old number and new number were considered equivalent. 

CIM Action System Type Container/Template Structure CIS MITSIS
Remove EQ CIM EQ Bookend* EQ Bookend EQ EQ stays intact for 5 years**
Remove EQSR CIM EQSR Bookend EQ
Bookend SR
Bookend EQSR EQ stays intact for 5 years

Remove cross-list or
SWE
CIM XLIST,
SWE
Create new or update template 
without cross-list or SWE
Bookend XLIST,
SWE
EQ stays intact for 5 years
Deactivate a Subject
with an EQ
CIM EQ EQ remains intact thru 999999 Bookend EQ EQ stays intact for 5 years
Deactivate a Subject
with an EQSR
CIM EQSR EQ remains intact thru 999999
Bookend SR
Bookend EQSR EQ stays intact for 5 years
Renumber a Subject CIM RENUM Create new or update template
with new Subject Number
-Change status of old 
number to "Inactive"
-Add active records for
new Subject Number
EQ inserted between old number and new number; stays intact for 5 years

*The term "Bookend" is used instead of other terms, such as "remove" because it better describes the fact that the EQ still existed for a time period but has ended.

**At a meeting n 8/23/2018, IS&T confirmed this expected behavior with the Registrar due to the following scenario:

  • Subject A and B are EQ for 2016FA-999999
  • Student 1 takes Subject A in 2017FA
  • The EQ between Subject A and Subject B is bookended through 2018SU (total span of EQ is 2016FA-2018SU) because there was a significant change to Subject A's subject matter.
  • If Student 1 were to take Subject B in 2019FA, he/she would be able to receive credit for Subject B even though the subject matter would be the same as Subject A's 2017FA subject matter.

Please note that currently the Registrar manually reviews all EQ discrepancies generated by a MITSIS report to ensure proper credit is received.

FAQ

Q: Is anyone notified when a proposal is rolled back to the Draft/Saved state?
A: Yes, the proposing CIM user will be notified via an automated email from CIM Courses.

Q: What happens in MIT system if a new subject is approved and then deactivated in the same proposal year?
A: Expected functionality is documented here

CIM Courses Support & Contact Info

Support

  • To contact support for CIM Courses, email clhelp@leepfrog.com
  • To escalate an issue, explicitly state that you'd like to escalate the ticket in an email to clhelp@leepfrog.com
  • Existing documentation written by the vendor can be found here: https://help.courseleaf.com/cim/

Other Contact Info

  • The project manager at Leepfrog during the CIM Courses project was Amy Johnson (ajohnson@leepfrog.com)

Helpful Links

  1. CIM Console (test) - https://mit-test.courseleaf.com/courseleaf/
    The CIM Console is the general website from which many administrative tasks can be performed. Please refer to the "Administrative Tasks" section in this article for the list of tasks and how-to's. It is worth noting that this a central management console for other Courseleaf products (Course Catalog, etc.); this article will only describe CIM Courses specific issues.
  2. CIM Courses - Main Page (test) - https://mit-test.courseleaf.com/courseadmin/
    The CIM Courses main page is the page that CIM users will perform subject proposal related tasks.
  3. CIM Courses - Data Export Page (test) - https://mit-test.courseleaf.com/courseleaf/courseleaf.cgi?page=/courseleaf/index.html&step=cimexport
    The CIM Courses data export page contains the full set of subject export data for eventual consumption by MIT. Be sure to use the "Republish Subdirectory" (in the test environment) to ensure that the exported data is the most up-to-date.

Subject Management Documentation Index

The Subject Management Documentation Index is the central listing for documentation pertaining to Subject Management.

IS&T Contributions

Documentation and information provided by IS&T staff members


Last Modified:

August 19, 2020

Get Help

Request help
from the Help Desk
Report a security incident
to the Security Team
Labels:
c-scasubji c-scasubji Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
Feedback
This product/service is:
Easy to use
Average
Difficult to use

This article is:
Helpful
Inaccurate
Obsolete
Adaptavist Theme Builder (4.2.3) Powered by Atlassian Confluence 3.5.13, the Enterprise Wiki