The precise requirements for Computing degree plans are listed in the Arts and Science calendar plans document. In case of discrepancies, the calendar should be considered as the official definition of the Computing degree plans.

Electives can be any course in the Arts and Science Calendar, including CISC courses. That is, you can take more CISC courses than the minimum required number. Special permission is needed for an Arts and Science student to take courses from other faculties (Applied Science, Business, etc) as electives, unless those courses are already listed in the Arts and Science Calendar. A student in fourth year with a first class average may apply to take a CISC graduate course in place of a 400-level CISC course. The student must obtain approval from the department and from the course instructor. If the student later enters a graduate CISC program at Queen's, this course can not count toward the graduate degree.

All Computing plans start with CISC 121.
Students without any programming
experience should take *either*
CISC 101 (Elements of Computing Science)
*or* CISC 110 (Elementary Computer Animation) as an elective half-credit before
CISC 121.
With the exception of CISC 498/6.0, all CISC courses are 3-unit (half) courses.

This is a 120-unit (4 year) program. A full year course (indicated by /6.0) is worth 6 units and a half-course counts as 3.0 units.

For complete details, see the CSCI course page or the Arts and Science calendar plans document.

CISC 121 | Introduction to Computing Science I |

CISC 124 | Introduction to Computing Science II |

CISC 102 | Discrete Math I |

One of the following 3 courses: | |

• MATH 111/6.0 | Linear Algebra |

• MATH 112 | Linear Algebra |

• MATH 110/6.0 | Linear Algebra |

MATH 121/6.0 | Differential and Integral Calculus |

CISC 203 | Discrete Mathematics for Computing Science |

CISC 204 | Logic for Computing Science |

CISC 220 | System-Level Programming |

CISC 221 | Computer Architecture |

CISC 223 | Software Specifications |

CISC 235 | Information Structures |

CISC 260 | Programming Paradigms |

One of the following courses: | |

• STAT 263 | Introduction to Statistics |

• STAT_Options |
See course page |

One of the following 2 courses: | |

• CISC 322 | Software Architecture |

• CISC 326 | Game Architecture |

CISC 324 | Operating Systems |

CISC 340 | Digital Systems |

CISC 365 | Algorithms I |

CISC 497 | Social, Ethical and Legal Issues in Computing |

One of the following 2 courses: | |

• CISC 499 | Advanced Undergraduate Project |

• CISC 500/6.0 | Undergraduate Thesis |

One of the following courses: | |

• CISC 422 | Formal Methods in Software Engineering |

• CISC 462 | Computability and Complexity |

• CISC 465 | Foundations of Programming Languages |

• CISC 466 | Algorithms II |

• CISC 467 | Fuzzy Logic |

12.0 additional units in CISC, in one of two possible combinations: | |

Option 2.B.i:
| |

• 9.0 units in (CISC; CISC_Subs) at the 400 level,
| |

plus one of: | |

• CISC 332 | Database Management Systems |

• CISC 333 | Introduction to Data Mining |

• CISC 351 | Advanced Data Analytics |

• CISC 352 | Artificial Intelligence |

Option 2.B.ii:
| |

• 3.0 units in (CISC; CISC_Subs) at the 200 level or above,
| |

• 6.0 units in (CISC; CISC_Subs) at the 400 level,
| |

plus one of: | |

• CISC 454 | Computer Graphics |

• CISC 457 | Image Processing and Computer Vision |

21.0 units in disciplines other than CISC, COCA, COGS, MATH, STAT, APSC, ELEC. | |

9.0 units in the humanities, languages or social sciences (ASC_Humanities_Languages_Social_Sciences). | |

15.0 elective units. |

The COMP plan
is identical to the CSCI plan described above,
except that CISC 340 (Digital Systems) is *not* required
and the 30 unit complementary-courses requirement is replaced by 30 elective units
(making 48 elective units in total).
This program cannot be accredited by CIPS,
but allows you to declare a minor,
leading to a Major-Minor combination degree.

See the COMP course page for details.

This is a 90 unit (3 year) program. A full year course is worth 6.0 units (indicated with /6.0) and a half-course counts as 3.0 units.

For complete details, see the Arts and Science calendar plans document.

CISC 121 | Introduction to Computing Science I |

CISC 124 | Introduction to Computing Science II |

CISC 102 | Discrete Math I |

One of the following 2 courses: | |

• MATH 111/6.0 | Linear Algebra |

• MATH 112/6.0 | Linear Algebra |

6 credits from the following: | |

• MATH 121/6.0 | Differential and Integral Calculus |

• MATH 120/6.0 | Differential and Integral Calculus |

• MATH 123 and MATH 124 | Differential and Integral Calculus I and II |

CISC 203 | Discrete Mathematics for Computing Science |

CISC 204 | Logic for Computing Science |

CISC 220 | System-Level Programming |

CISC 221 | Computer Architecture |

CISC 223 | Software Specifications |

CISC 235 | Information Structures |

CISC 260 | Programming Paradigms |

9.0 additional units in CISC at the 200 level or above, including at least 3.0 units at the 300 level. | |

42.0 elective units. | |

In 2008, a requirement of 1st-year Calculus (MATH 121/6.0 or MATH 122/6.0 or MATH 120/6.0) replaced a requirement
of 6 units in *any* Math or Science subject. If you were registered in this
program before 2008, you will be allowed to use the earlier requirement.