Skip to main content

Degree Management

Configure and manage degree requirements, including requirement groups, rules, and course mappings.

Overview​

Degree Structure​

Degrees are organized hierarchically:

Degree (e.g., Neuroscience BS)
├── Requirement Group (e.g., Core Requirements)
│ ├── Rule (e.g., PSYC 1 required)
│ ├── Rule (e.g., PSYC 6 required)
│ └── Rule (e.g., Statistics course)
├── Requirement Group (e.g., Distribution)
│ └── Rules...
└── Requirement Group (e.g., Electives)
└── Rules...

Managing Degrees​

Viewing Degrees​

  1. Go to Admin → Academic → Degrees
  2. See all configured degrees
  3. Click to view details

Creating a Degree​

  1. Click Create Degree
  2. Enter:
    • Name
    • Degree type (BS, BA, PhD, etc.)
    • Description
    • Active status
  3. Save

Degree Properties​

PropertyDescription
NameDegree title
TypeBS, BA, Minor, PhD, MA
DescriptionProgram description
ActiveCurrently offered
Total CreditsRequired credits
GPA RequirementsMinimum GPA

Requirement Groups​

What Are Groups?​

Groups organize related requirements:

  • Core - Foundational courses
  • Methods - Research methods
  • Distribution - Breadth requirements
  • Electives - Flexible choices
  • Lab - Laboratory experience

Creating Groups​

  1. Open a degree
  2. Go to Requirement Groups
  3. Click Add Group
  4. Configure:
    • Name
    • Description
    • Operator (how rules combine)
    • Minimum to satisfy
  5. Save

Group Operators​

OperatorMeaning
ANDAll rules must be satisfied
ORAny one rule satisfies
N_OFAt least N rules must be satisfied

Example Groups​

Distribution Requirements
Operator: N_OF
Minimum: 3 of 5
Rules:
- Cognitive course
- Social course
- Developmental course
- Clinical course
- Biological course

Requirement Rules​

What Are Rules?​

Rules define specific requirements:

  • Take a specific course
  • Choose from a list
  • Take any course in a range
  • Complete credit minimums

Rule Types​

TypeDescriptionExample
specific_courseExact course requiredPSYC 1
course_listChoose from optionsPSYC 21, 22, or 23
level_rangeAny in rangePSYC 50-89
credit_minimumTotal credits12 credits
course_attributeCourses with attributeWriting course

Creating Rules​

  1. Open a requirement group
  2. Click Add Rule
  3. Select rule type
  4. Configure:
    • Name/description
    • Course constraints
    • Credit requirements
    • Grade requirements
  5. Save

Rule Examples​

Specific Course:

Rule: Introduction to Psychology
Type: specific_course
Course: PSYC 1
Minimum Grade: D

Course List:

Rule: Cognitive Psychology
Type: course_list
Courses: [PSYC 21, PSYC 22, PSYC 23]
Choose: 1

Level Range:

Rule: Upper-Level Electives
Type: level_range
Department: PSYC
Level: 50-89
Credits Required: 12

Course Mapping​

How Courses Map to Rules​

When evaluating progress:

  1. System checks each completed course
  2. Matches against rule constraints
  3. Applies to most specific matching rule
  4. Updates requirement status

Manual Mapping​

For edge cases:

  1. Go to student's progress view
  2. Find the course
  3. Click Reassign
  4. Select appropriate rule
  5. Save override

Exclusions​

Prevent certain mappings:

  • Course already counting elsewhere
  • Course substitution needed
  • Special circumstances

Validation​

Testing Requirements​

Before activating changes:

  1. Use Preview mode
  2. Test with sample student
  3. Verify mappings work correctly
  4. Check edge cases

Validation Checks​

The system validates:

  • All groups are achievable
  • No circular dependencies
  • Course codes are valid
  • Credit totals are consistent

Requirement Engine​

Requirement checking is transitioning to a WOQL/Datalog engine that evaluates rules inside TerminusDB (a shadow-mode flag, REQUIREMENT_ENGINE_SHADOW, runs it alongside the current checker for comparison). Requirement edits are also fully auditable: changes record their author, and the Change History page shows a commit-level log of every requirement modification with diffs.

Versioning​

Catalog Years​

Requirements can vary by year:

  • Students follow their entry year
  • Changes apply to new students
  • Historical requirements preserved

Managing Versions​

  1. Create new version for changes
  2. Set effective date
  3. Assign to catalog year
  4. Old version remains for current students

Import/Export​

Exporting Requirements​

Export for backup or transfer:

  1. Go to degree
  2. Click Export
  3. Download JSON/CSV

Importing Requirements​

Load requirements from file:

  1. Click Import
  2. Upload file
  3. Review changes
  4. Confirm import

Best Practices​

Requirement Design​

  • Keep rules simple and clear
  • Use descriptive names
  • Document exceptions
  • Test thoroughly

Maintenance​

  • Review annually with catalog
  • Update for new courses
  • Archive discontinued programs
  • Communicate changes

Troubleshooting​

Student Progress Wrong​

  1. Check course enrollment data
  2. Verify rule configuration
  3. Look for mapping conflicts
  4. Review manual overrides

Rule Not Matching​

  1. Confirm course code is correct
  2. Check level range bounds
  3. Verify attribute assignments
  4. Test with different courses