Subject Management Business Rules
Please note that this page and related pages are being developed as part of the CIM Courses Project and are subject to change.
This page is intended to specify the business rules as they relate to Subject Management systems. These rules were developed as part of the CIM Courses Project.
*Please note that the term "must" is used intentionally to denote rules that must be followed and will be enforced by the API. Conversely, the term "should" is used to denote "soft" business rules that should be generally followed by are not enforced at the API level. In general, business rules of this type are handled via front-end validations.
Rule Area | Business Rule | CIM Enforced | CIM Feed Enforced | SCASUBJI UI Enforced | API Enforced | CIS/CIS Backfill Enforced | MITSIS Backfill Enforced |
|
---|---|---|---|---|---|---|---|---|
Subject Type | All subjects must have a Subject Type in the following set: : Standard, Administrative, Cross-Registration (values as of 3/2019) |
N | N/A | Y | Y | N | N | |
Subject Code | Subject Code must be in approved set of Subject Codes | Y | Y | Y | Y | Y | N | |
Subject Code | For MIT subjects, Subject Code must map to approved set of MIT Department Codes |
Y | Y | Y | Y | Y | N | |
Subject Code (X-Reg) | For Cross-Registration subjects, a subject code must map to a single Institutional Unit |
N/A | N/A | Y | Y | N | N | |
Subject Code (X-Reg) | If an Institutional Unit exists for a cross-registration subject, it must map to a single Subject Code |
N/A | N/A | Y | Y | N | Y | |
Subject Number | Subject Code & Number Combination (Subject Number) must not be in use on two different subjects during the same time period | Y | Y | Y | Y | Y | Y(from term only) | |
Subject Number | After a subject is deactivated, its subject number should not be used on a different subject for five years | N | N | N | N | N | N | |
Subject Number | For MIT subjects, Subject Code & Number Combination (Subject Number) cannot exceed six characters (does not include the period character between the Subject Code and Subject Number) |
Y | N | Y | N | Y | N | |
Subject Number (X-Reg) | For Cross-Registration subjects, Subject Code & Number Combination (Subject Number) cannot exceed seven characters (does not include the period character between the Subject Code and Subject Number) |
N/A | N/A | Y | N | N | Y | |
School Code | School Code needs to be in approved set of School Codes |
N/A | N/A | Y | Y | Y | N | |
Department | Departments can exist without having any subjects | Y | N/A | N/A | N | N | N | |
Department Code | Department Code must be in approved set of Department Codes | Y | N/A | Y | Y | Y | Y | |
Department Code | Each Department Code is mapped to a School Code | N/A | N/A | Y | N | Y | Y | |
Subject Number Reuse | Subjects that have been removed for five years can be re-used on different subjects | N/A | N/A |
N | N | N | N | |
Subject Level | Subject Level needs to be in approved set of Subject Levels: Undergraduate, Graduate (values as of 3/2019) | Y | N | Y | Y | Y | Y | |
Units | Unit Type needs to be in approved set of Unit Types: Fixed, Arranged (values as of 3/2019) | Y | Y | Y | Y | Y | Y | |
Units | Lecture, Laboratory, and Preparatory Units must contain positive integers or zero when Unit Type is "Fixed" | Y | N | Y | Y | Y | Y | |
Units | Lecture, Laboratory, and Preparatory Units must not sum to a value over 99 | Y | N | Y | Y | Y | Y | |
Units | If a subject has arranged units, it should have a supervisor attribute |
N | Y (Note 4) |
Y (Note 2) |
N | Y | N | |
Thesis | If a subject is a thesis subject, it must have a supervisor attribute | N | Y (Note 4) |
N (Note 3) |
Y | Y | N | |
Thesis | If a subject is a thesis subject, it must also have the "Can Use 'J'/'U' Grading Characteristic | N | Y (Note 4) |
N (Note 3) |
Y | Y | N | |
UROP | If a subject is a UROP subject, it must have a supervisor attribute | N | Y (Note 4) | N (Note 3) |
Y | Y | N | |
UROP/URN | UROP subjects that are not for credit must have a URN attribute | N | Y (Note 3) | Y | N | N | ||
Grading | All Subjects require an a valid set of grading modes | Y | Y (Note 4) |
Y | Y | Y | ||
Grading | All Grading Mode codes must be in approved set of Grading Modes | Y | Y (Note 4) | Y | Y | N | ||
Grading | Each Grading Mode can only be used with a subset of Grading Types | N/A | Y (Note 4) | Y | N | N | ||
Grading | All Grading Type codes must be in approved set of Grading Types | N/A | Y (Note 4) | Y | N | N | ||
Term Plan | All standard subjects require at least one term offered | Y | Y | Y | Y | Y | Y | |
Term Plan | All standard subjects must have an Offering Schedule in approved set: Offered Annually, Offered Alternate Years, Offered Irregularly or Infrequently (values as of 3/2019) | Y | Y | Y | Y | Y | N | |
Term Plan | All standard subjects offered in the Fall or Spring terms must have a Duration specified | Y | N |
Y | Y | N | N | |
Term Plan | All standard subjects offered in the Fall or Spring terms must have a Duration in approved set - currently: Full Term Subject, Meets First Half of Term, Meets Second Half of Term, Partial Term Subject | Y | Y (note 1) |
Y | Y | N | N | |
Term Plan | All standard subjects offered in the Summer or IAP terms should have "Full Term Subject" set as its Duration | N | N | N | N | N | N | |
Term Plan | All standard subjects that have a Duration of "Partial Term Subject" must have specified First Week and Last Week values |
Y | N | Y | Y | N | N | |
Term Plan | All administrative subjects should have the same term plan: offered annually in all terms |
N/A | N/A | N | ? | N | N | |
Term Plan | All cross-registration subjects should have the same term plan - offered annually in all terms |
N/A | N/A | N | ? | N | N | |
GIR | General Institute Requirements (GIRs) should only be assigned to undergraduate subjects | Y | N | N | N | Y | N | |
GIR | A subject cannot satisfy both a Science Core/Institute Laboratory/REST Requirement and a HASS Requirement in the same term |
Y | N | N | N | Y | N | |
GIR | A subject that satisfies the Science Core/Institute Laboratory/REST Requirement cannot also satisfy the CI-H or CI-HW Requirement. It can satisfy the CI-M requirement |
N | N | N | N | Y | N | |
GIR | If a subject satisfies the CI-H or CI-HW requirement, it must satisfy at least one HASS Requirement as well. | Y | N | N | N | Y | N | |
HASS | A Subject should not satisfy more than one non-HASS Elective HASS Requirement |
Y | N | N | N | Y | N | |
HASS | Subjects that satisfy the HASS Arts, HASS Humanities, or HASS Social Sciences Requirement should also be HASS Electives |
N | Y (Note 4) |
Y (Note 2) |
N | Y | N | |
HASS | HASS subjects must have 9 or more units | Y | Y | N | N | Y | N | |
COMM | Subjects can only satisfy one Communication Requirement at a time | Y | N | N | N | Y | N | |
Science Core | Subjects can have Science Core requirements in the following approved set: Biology, Calculus 1, Calculus 2, Chemistry, Physics I, Physics II (values as of 3/2019) | Y | Y | Y | Y | Y | N | |
Institute Lab Requirement | A subject can have between 1 and 12 units that count toward satisfying the Institute Laboratory Requirement. | Y | N | N | Y |
Y | Y | |
REST Requirement | A subject can satisfy all or half of a Rest Elective in Science or Technology | Y | Y |
N | N | Y | N | |
ROTC | If a Subject Code is equal to MS, NS, or AS, then the subject should be ROTC |
N | N | Y (Note 2) |
N | N | N | |
ROTC | Some ROTC subjects can be counted toward a degree and others cannot | Y | N/A | N | N | N | N | |
Cross-Listing |
A parent Subject Number cannot be assigned as a cross-listed number of another parent Subject |
Y | Y | N | Y | Y | N | |
Cross-Listing | A previously used Subject Number should only be added as a cross-listed subject number if it has been out of use for 5 years | N | N | N | N | N | N | |
Cross-Listing | The business rules for Subject Code/Number apply to cross-listed subject numbers | Y | N/A | Y | Y | Y | Y | |
Cross-Listing | Changes proposed to a collaborative cross-listed subject should be approved by all Departments involved in the cross-list | Y | N | N/A | N | Y | N | |
Cross-Listing | Changes proposed to a non-collaborative cross-listed subject should be communicated (but not approved by) all Departments involved in the cross-list | Y | N | N/A | N | N | N | |
Cross-Listing | A subject must be cross-listed in order to be a School-Wide Engineering Elective (SWE) | Y | N | N | Y | Y | Y | |
Cross-Listing |
A parent subject should not be cross-listed with a Subject Number that belongs to the same Department |
Y | Y | N | N | N | N | |
Cross-Listing |
A cross-listed Subject Number should not be cross-listed with another Subject Number that belongs to the same Department |
N | Y | N | ||||
Equivalency | Two (or more) subjects are considered to be equivalent if they share enough content where students should not get credit for taking both subjects and/or a student can fulfill a requirement for one subject by taking another | N | N/A | N | N | N | N | |
Equivalency | An equivalency between two subjects must be reflexive. | N | Y | N | Y | N/A | Y | |
Equivalency | An equivalency between three or more subjects must be transitive. | N | Y | N | Y | N/A | Y | |
Equivalency | Unless explicitly ended, a subject remains equivalent to its reflexive/transitive equivalent subject(s) after the reflexive/transitive equivalent subject(s) have been deactivated. | N | Y (Note 4) |
Y | Y | Y | Y | |
Scheduling Relationship |
Two (or more) subjects are considered to have a Scheduling Relationship if they share a Term Plan more than 50% of the time |
N | N | N | N | N | N | |
Scheduling Relationship |
A scheduling relationship between two subjects must be reflexive. | N | Y | N | Y | N/A | Y | |
Scheduling Relationship |
A scheduling relationship between three or more subjects must be transitive. | N | Y |
N | Y | N/A | Y | |
Scheduling Relationship |
Subjects cannot have active scheduling relationships with inactive subjects. |
Y | N | N | Y | Y | Y | |
Subject Deactivation |
Subjects may not be deactivated in a term in which students have already registered for the subject | N | N | N | Y | N | N | |
Subject Reactivation |
A subject within the 5-year window can be reactivated | N | N | N | N | N | N | |
Requisites | Subjects are not required to have prerequisites or corequisites | Y | Y | Y | Y | Y | Y | |
Requisites | Subject can have prerequisites or corequisites of the following approved types: Subjects, GIRs, Permission of Instructor, or Other. (values as of 3/2019) | Y | Y (Note 4) |
Y | Y | N | N | |
Enrollment Limitations | Subjects are not required to have Enrollment Limitations | Y | Y | Y | Y | N | N | |
Enrollment Limitations |
Subjects can have enrollment limitations of the following approved types: Limit on total enrollees or Other. | N | Y (Note 4) |
N | Y | N | N | |
Subject Description | Subject Description may contain an approved set of Special Characters, Greek Characters, Diacritical Marks, Mathematical Symbols, and Special Effects |
N | Y | N | Y | N | N | |
Freshman Seminar Description |
Freshman Seminar Description may contain line breaks |
Y | Y |
Y | N/A | Y | N | |
Catalog Faculty | Catalog Faculty may contain an approved set of Diacritical Marks |
N | Y |
N | Y | Y | N | |
General |
If a subject is offered multiple terms within the same academic year, there should be no substantial changes made from term to term |
N | N | N | N | N | N |
Notes:
- CIM feed processing doesn't enforce that a value is present, but if it is present, it must be one of the allowed values.
- Validation enforced with a user prompt before save.
- Validation enforced by adding the attribute to the JSON before sending to the API
- This is a calculated value, rather than a user-supplied one. The calculation adheres to the rules.
Subject Management Documentation Index
The Subject Management Documentation Index is the central listing for documentation pertaining to Subject Management.