Plan Definitions

How are these plan definitions actually written? Here is a quick guide to what is happening but if you wish to understand everything more in debth, check out For Plan Writers.

If you wish to follow along for a student in your plan, you can find the coded up degree requirements on the “Requirements” tab pictured below.

Requirements Tab Requirements Tab

Calendar to Code

When writing plan definitions we try to match the calendar text as closely as possible. Here is an example with a student in Math BBA:

calendar calendar

A couple of notes on the above:

  • The calendar text is pre-Kuali (what was in effect when this project was started). Degree audit’s plan definition language was consciously modelled on the calendar text of the time.
  • There is often more than one way to encode the requirements. For example, the first one could have been encoded this way, matching the calendar text a little bit more precisely but more verbosely:
all of "waterloo" {
    1 of { ^CO_250 
           ^CO_255
    }
    all of {
        ^ACTSCI_231
        ^CO_370
        # etc
    }
}
  • There are many different types of requirements that are captured by Degree Audit. Some of these include minimum MAV, milestones, maximum failed units and required grade in a course. For a complete list, take a quick peek at For Plan Writers.
  • One key aspect in coding plans is regular expressions. This is the syntax that is used to describe sets of courses. You can check out either a crash course or the in-depth treatment for plan writers.