Graduate programs must be chosen in consultation with the supervisor and approved by the Computer Science Graduate Affairs Committee. In addition to the Faculties of Graduate Studies and Science requirements, the Department requires:
Master of Science (thesis-based)
a) Course Requirements: Computer Science 699, plus:
b) Twelve units of additional courses. At least 6 units must be graduate-level computer science courses (labelled CPSC or SENG), excluding professional program courses, and at most 3 units can be an undergraduate course numbered at the 500 level.
We recommend that students who are considering continuing on to a doctoral program or entering certain career paths, select courses that demonstrate some breadth across Computer Science (see PhD Breadth Requirements for courses).
c) Seminar Requirement: Students are required to give a department seminar presentation on a topic related to their graduate research.
Master of Science degree with a Specialization in Software Engineering (thesis-based)
a) Course Requirements: Computer Science 699, plus:
b) Twelve units of additional courses. At least 9 units of these courses must be taken from the approved SENG list (available from the Department), and at most 3 units can be an undergraduate course numbered at the 500 level.
We recommend that students who are considering continuing on to a doctoral program or entering certain career paths, select courses outside the Approved SENG list that demonstrate some breadth across Computer Science (see PhD Breadth Requirements for courses).
c) Seminar Requirement: Students are required to give a department seminar presentation on a topic related to their graduate research.
Doctor of Philosophy
a) Course Requirements: Students will be required to have achieved at least a grade of "B" in at least 24 units beyond the requirements for an undergraduate degree before completion of the PhD degree. At least 9 units of these must be taken while the student is enrolled as a PhD student in Computer Science at the University of Calgary. Of the 24 units, at least 18 units must be graduate-level courses, excluding professional program courses, with the remaining 12 units being either graduate-level courses or advanced (500-level) undergraduate courses. At least 12 units of the required courses must be taken from a degree-granting Computer Science Department. In addition to the above courses, Computer Science 699 or equivalent experience is required and does not count toward the minimum 24 units courses above.
b) Breadth Requirements: The above courses must be taken from multiple research areas. Not more than six courses (18 units) in one research area are counted toward the minimum 24 units. Courses in the intersection of two or more areas are counted in the area with the most completed course credits. The current research areas are: Artificial Intelligence and Multi-Agent Systems, Bioinformatics and Biological Computations, Computer Graphics, Computer Vision and Image Processing, Database, HCI and Visualization, Networks and Systems, Security, Theory and Foundations, Scientific Computing, Software Engineering, Other areas in Computer Science, External to Computer Science. Courses outside Computer Science must be approved by the student's supervisor. Credits for courses external to the Department of Computer Science are only given on condition that no Computer Science course which covers similar content is counted toward the required eight courses. These courses will be counted toward the appropriate areas in Computer Science.
c) Seminar Requirement: Students are required to give a department seminar presentation on a topic related to their graduate research.