Skip to main content
Constraints - Double Counting

Understanding double course/credit counting constraints

Updated over 2 months ago

This article contains constraints that deal with allowing or not allowing courses or credits to count for more than one requirement - either within the same program, or separate programs. For more information about double counting, please reference Double Counting which gives more detail on how double counting works within Stellic.

Constraints at a Glance


Constraint Details

Constraints that allow for double counting between programs

Double counting allowed up to x courses with other programs [Program Level Constraint] [Secondary Constraint]

This constraint allows double counting between programs - for example between a major and a minor. With this constraint, you can also define unlimited double counting. This constraint must be placed at the program level.

Screenshot 2024-01-03 at 11.18.52 AM.png

Double counting allowed up to x courses with other programs from specific categories [Program Level Constraint] [Secondary Constraint]

This constraint should be used to define how many (and what) requirements can double count between the defined audit and any other program a student may be enrolled in. This is useful when double counting is only allowed between some of the sub-requirements of an audit but not all sub-requirements. For example, if only specific electives classes are allowed to double count with another program.

In the example below, we have specified that courses are not permitted to double count with other programs (default double counting limit = 0), but for "Requirement A", 1 course is permitted to double count with other programs. All other requirements would not be allowed to double count with any other program.

This constraint must be placed at the program level.

Screenshot 2024-01-03 at 11.20.43 AM.png

Double counting allowed up to x courses with other programs for specific courses [Program Level Constraint] [Secondary Constraint]

Similar to above, this constraint should be used to define which courses can double count between the defined audit and any other program a student may be enrolled in. This is nuanced from the above constraint as the courses can be in any level of nesting within the audit requirements - anywhere the course(s) is listed, it will be able to double count with other programs. Specific courses can be specified by using the "+ limit for specific courses" option built into the constraint.

In the example below, we have specified that courses are not permitted to double count with other programs (default double counting limit = 0), but for whatever course we specify, it would be able to double count one time. All other requirements would not be allowed to double count with any other program.

Note that you can specify that specific courses, courses with attributes, a course range, a course pattern, or courses with tags are able to be specified in this constraint.

This constraint must be placed at the program level.

Screenshot 2024-01-03 at 11.23.33 AM.png

Up to x courses may double count with this specific program type [Program Level Constraint] [Secondary Constraint]

Note: This constraint can only be added after another double counting constraint has been specified.

In cases where double counting rules differ based on other programs, multiple copies of double counting constraints can be added to the program. That way, different rules can be applied to different programs and program types. Program types can differ by institution - the example you see below is just one possible list of program types.

In the example listed above, the standard double counting allows for two course to double count with other programs. However, if that program is a minor, only one course will be permitted to double count between this program and the minor.

This constraint must be placed at the program level.


Up to x courses may double count with these [specific program(s)] [Program Level Constraint] [Secondary Constraint]

Note: This constraint can only be added after another double counting constraint has been specified.

This constraint is similar to the one listed above, but allows for more specificity. Instead of specifying the program type, you can specify a specific program. In the example listed below, this program allows for two courses to double count with another program - unless that program is the Chemistry (BS), in which case zero courses are allowed to double count.

This constraint must be placed at the program level.


Constraints that allow for double counting between requirements in the same program

Up to [x] courses may double count with other requirements [Secondary Constraint]

Placed on a requirement level, this constraint will allow double counting at the same level of nesting within the audit. This can only be used as a secondary constraint.

In the example below, note that the courses between Requirement 1 and Requirement 2 are the same for our demonstration purposes. Requirement 1 had specified that one course can double count with other requirements, meaning that it will allow one of the courses in Requirement 1 to double count with another requirement within the same program. Here we can see that even though all three courses exist in Requirement 1 and Requirement 2, only MATH-0032 is double counting between both requirements.

If we would prefer a different course count for Requirement 2 instead of MATH-0032, you could use a Prioritization action to select one of the other courses in Requirement 2 instead.

Note: Since these courses are double-counting within sub-requirements of the same program, the chain-link icon does not appear.


Up to [x] courses may double count from specific categories [x] with other requirements [Secondary Constraint]

This constraint allows you to choose a set limit of courses that can double count between specific sub-requirements in one program. This can only be used as a secondary constraint.

In the example below, we added this constraint to Requirement 1. This constraint gives us the option to set default double counting limit, which in this case is set to 0. This means that in general, courses within Requirement 1 cannot count for other requirements within the same program. However, we are going to specify that one of these sub-requirements can double count with other requirements within the program. Note that within the search box, only the sub-requirements listed in requirement 1 are able to be selected.

We selected EN-0001, which means that only this course is allowed to double count with other requirements. In the example below, you can see this when applied to a student. EN-0001 is counting in both requirements, but the other overlapping courses are not counting in Requirement 2. You do not need to select a course - you can note that the "sub-requirement" category is an option to select, which would then include any courses included in that category.

Note: Since these courses are double-counting within sub-requirements of the same program, the chain-link icon does not appear.


Up to [x] specific courses may double count with other requirements [Secondary Constraint]

Similar to above, this constraint should be used to define which courses can double count between other sibling-level requirements within the same program. Specific courses can be specified by using the "+ limit for specific courses" option built into the constraint.

In the example below, in Requirement B we have specified that courses are not permitted to double count with other requirements (default double counting limit = 0), with the exception of specific course MATH-0032. All other courses would not be allowed to double count with any other requirements.

Note that you can specify that specific courses, courses with attributes, a course range, a course pattern, or courses with tags are able to be specified in this constraint.

Screenshot 2024-01-04 at 12.21.57 PM.png

Double counting allowed up to [x] courses/credits within the following sub-requirements [Secondary Constraint]

When placed at a requirement level, this constraint allows courses to double count only within that particular sub-requirement, so it's important that it is listed at a level above whichever requirements are permitted to double count. In the example below, only courses that reside within Requirement 2 are considered for the double counting limit. You can see in this example (continued from above, which is why EN-0001 and PHY-011 are not counting), ES-0055 is double counting within the Requirement 2 category.


Double counting allowed up to [x] courses/credits within the following subrequirements for specific courses [Secondary Constraint]

This constraint should be used to define which specific courses can double count between the subrequirements of the program or requirement, so it's important that it is listed at a level above whichever requirements are permitted to double count. Specific courses can be specified by using the "+ limit for specific courses" option built into the constraint.

In the example below, we have specified that courses are not permitted to double count within the requirements (default double counting limit = 0), but specific course MATH-0032 can double count one time. All other requirements would not be allowed to double count with any other requirements.

Note that you can specify that specific courses, courses with attributes, a course range, a course pattern, or courses with tags are able to be specified in this constraint.

Screenshot 2024-01-04 at 12.03.37 PM.png


[x] courses/credits in this requirement can double count with [y] requirement [Secondary Constraint]

Other than the specific courses-related double counting constraint, all other constraints that allow for double counting between requirements within the same program require that the requirements be at the top-level of the audit. Any nested requirements couldn't be used within double counting constraints.

This constraint is able to be placed within ANY level of requirement within an audit and allows users to specify which other requirements are permitted to double count.

Did this answer your question?