Degree Requirements

Degree Requirements

To earn a MSc or PhD degree in Computing Science, students must meet all breadth and depth requirements as described below. To satisfy breadth requirements students must take the required number of credits/courses in specified breadth areas. Fulfillment of the research-oriented depth requirement is carried out with guidance and examination provided by the student's supervisory committee. Completion of the depth requirement involves defending a research thesis or project.  

For information and degree requirements for the SFU-Zhejiang Univeristy dual-degree program (GDDP), please refer to the GDDP page and links from there. For information and degree requirements for the Professional Master's Program, please refer to the Professional Master's Program "About the Program" page.

Supervisory Committee

A supervisory committee, at either the MSc or PhD level, consists of the student's supervisor, at least one other computing science faculty member, and optionally other members (typically faculty) as appropriate. Note that a student may have two co-senior supervisors. The choice of the supervisor should be made by mutual consent of the graduate student and faculty member based on commonality of research interests. The student and supervisor should consult on the remainder of the committee members.

More information and regulations on supervisory committees can be found in Section 1.6 of the Graduate General Regulations.

General Guidelines Of Breadth And Course Requirement

For purposes of defining the MSc and PhD breadth requirements, courses are grouped into five breadth areas:

  • Area I: Theoretical Computing Science
  • Area II: Networks and Systems
  • Area III: Artificial Intelligence
  • Area IV: Databases, Data Mining, Computational Biology
  • Area V: Graphics, HCI, Vision, and Visualization

See the list of courses in each of these areas at the bottom of the page.

Degree Requirements For MSc Program

Students are expected to acquire breadth of knowledge through a sequence of courses and depth of knowledge through completion and defense of a thesis. Under normal circumstances, an MSc program should be completed within six semesters.

CMPT 700: Technical Writing and Research Communication is recommended for all graduate students.

These requirements are for Fall 2023 onwards. To view previous requirements, please see here.

Milestones

MSc Thesis

  • By end of year 1 (3rd semester): Form a supervisory committee, with approval of the GPC.
  • By the end of the 4th semester: Complete all course and breadth requirements.
  • By end of year 2 (6th semester): Defend MSc thesis and complete all other degree requirements.

By default, the School offers funding promises for 2 years (6 semesters). Funding beyond the 2nd year may be possible but is not guaranteed. Please visit our financial support page for more information.

Breadth Requirements

MSc Thesis

Thesis based MSc students must complete a breadth requirement consisting of five graduate courses. This is equivalent to 15 course credits with an 18 credit thesis for a total credit requirement of 33 credits. 

Students must complete:

  • Three courses from three different Computing Science breadth areas (e.g., Area I, III, V) (9)
  • and an additional six units of graduate courses (6)
  • and CMPT 898 - MSc Thesis (18)

*( ) Number of Credits

  • MSc Thesis students can use a maximum of 1 directed reading course towards their breadth.
  • MSc Thesis students must enroll in CMPT 898 every semester in which they are conducting thesis research in order to maintain enrollment status in the program.

MSc Project - not available to new students

Project based MSc students must complete a breadth requirement consisting of eight graduate courses. This is equivalent to 24 course credits with a 10 credit project for a total credit requirement of 34 credits.

Students must complete:

  • Three courses from three different Computing Science breadth areas (e.g., Area I, III, V) (9)
  • and an additional 15 units of graduate courses (15)
  • and CMPT 897 - MSc Project (10)

*( ) Number of Credits

  • MSc Project students can use a maximum of 2 directed reading courses towards their breadth.

MSc Course - not available to new students

Course based MSc students must complete a breadth requirement consisting of ten graduate courses. This is equivalent to 30 course credits.

Students must complete:

  • Three courses from three different Computing Science breadth areas (e.g., Area I, III, V) (9)
  • and an additional 21 units of graduate courses (21)
  • and CMPT 896 - MSc Course Option Portfolio (0)

*( ) Number of Credits

  • MSc Course students can use a maximum of 2 directed reading courses courses towards their breadth.

Depth Requirement

Thesis MSc students are required to demonstrate depth of knowledge in their research area through a thesis seminar and defense based on their independent work. Students should consult with members of their supervisory committee, and formulate and submit a written thesis proposal for approval. This should not be done any later than the end of the third term semester.

Project MSc students must choose an area of specialization and submit a project report. Project topics may include a comprehensive survey of the literature of some computing science related research areas; implementation and evaluation of existing techniques/algorithms; development of interesting software/hardware applications.

The project is examined as a thesis and will need to be submitted to the library as per Graduate General Regulation 1.10.4

Regulations specifying the examining committee's composition and procedures for the final thesis or project exam appear in Graduate General Regulation 1.9.1 and 1.9.2.

Defence procedures can be found here.

Degree Requirements For PhD Program

Students in the PhD program are required to demonstrate breadth of knowledge as outlined below and demonstrate the capacity to conduct original research through the completion and defense of an original thesis. Under normal circumstances a PhD degree should be completed within 12 semesters and should not require longer than 15 semesters.

CMPT 700: Technical Writing and Research Communication is recommended for all graduate students.

These requirements are for Fall 2023 onwards. To view previous requirements, please see here.

Milestones

Milestones for PhD

  • By end of year 1 (3rd semester): Form a supervisory committee, with approval of the GPC.
  • By end of year 2 (6th semester): Breadth OR Depth Exam completed.
  • By end of year 3 (9th semester): Depth Exam AND Proposal completed.

Relation to yearly GF awards for PhD students:

  • Student receives GF in year 1 automatically
  • Student receives GF in year 2 only if year 1 milestones are met
  • Student receives GF in year 3 only if year 2 milestones are met and submits a Graduate Progress Report with research progress marked as satisfactory.
  • Student receives GF in year 4 only if year 3 milestones are met and submits a Graduate Progress Report with research progress marked as satisfactory.

Breadth Requirement

PhD with MSc

PhD students that already have an MSc in Computing Science or a related field must complete a breadth requirement consisting of four graduate courses. This is equivalent to 12 course credits with an 18 credit Thesis for a total credit requirement of 30 credits.

Students must complete:

  • Three courses from three different Computing Science breadth areas (e.g., Area I, III, V) (9)
  • and an additional three units of graduate courses (3)
  • and CMPT 899 - PhD Thesis (18)

*( ) Number of Credits

  •  PhD students with a Master's degree can use a maximum of 1 directed reading course towards their breadth.
  • PhD students who have an MSc in Computing Science from SFU through the thesis, project or course options only need to take the required number of courses for PhD students, but are not required to cover at least three breadth areas.
  •  PhD students must enroll in CMPT 899 every semester in which they are conducting thesis research in order to maintain enrollment status in the program.

PhD without MSc

PhD students that do not have an MSc in Computing Science or a related field must complete a breadth requirement consisting of eight graduate courses. This is equivalent to 24 course credits with an 18 credit Thesis for a total credit requirement of 42 credits.

Students must complete:

  • Three courses from three different Computing Science breadth areas (e.g., Area I, III, V) (9)
  • and an additional fifteen units of graduate courses (15)
  • and CMPT 899 - PhD Thesis (18)

*( ) Number of Credits

  •  PhD students without a Master's degree can use a maximum of 2 directed reading courses towards their breadth.
  •  PhD students must enroll in CMPT 899 every semester in which they are conducting thesis research in order to maintain enrollment status in the program.

A PhD student must achieve a minimum CGPA of 3.4 and passing marks in all courses.

Depth Requirements

PhD students demonstrate depth of knowledge in their research area through a public depth seminar and oral examination. Once the depth exam is passed, students then write their thesis proposal, after which they are required to defend its originality and feasibility within a second seminar and oral examination. Finally, students submit and defend a thesis based on their independent work which makes an original contribution to computing science.

DEPTH EXAMINATION

The depth examination generally takes place between the fifth and eighth semesters of a PhD student's program. An examining committee needs to be elected, composing of the student's supervisory committee and a minimum of one additional examiner. The depth exam centers on the student's research up to that point. The depth exam can be conducted in two formats, depending on the appointed supervisor's discretion.

  • In the first format, the examining committee collaborates with the student to specify the examination topics based on the student's research. The student then prepares a written survey and presents a public depth seminar.
  • The second format involves preparing a high-quality technical paper on their research area followed by a defense in a public depth seminar. The work done for the paper should be during the PhD period at SFU (and not, for example, as part of the MSc thesis).

After the oral examination, the committee evaluates the student's performance and progress in the program. The committee's evaluation is diagnostic, specifying additional work in  weak areas if such exists. A second depth examination or withdrawal from the program may be recommended in extreme cases.

THESIS PROPOSAL

The student, in consultation with their supervisory committee, formulates and submits, for approval, a written thesis proposal consisting of a research plan and preliminary results. The student gives a seminar and defends the originality and feasibility of the proposed thesis to the supervisory committee. The thesis proposal is normally presented and defended within three semesters of the depth examination.

THESIS DEFENSE

Regulations specifying the examining committee composition and procedures for final public thesis defence are in sections 1.9 and 1.10 of the Graduate General Regulations. PhD students give a seminar; typically this will be about their thesis research and is presented in the interval between distribution of the thesis to the committee and the defense.

Defence procedures can be found here.

PhD Candidacy        

To be considered "admitted to candidacy", a student needs to complete the PhD program's breadth requirements (as outlined above) and also pass their Depth Examination. To request a letter which confirms your status as a PhD candidate, please contact csgrada@sfu.ca.

All Students

A1: Maintain a CGPA of 3.0 throughout the program.

  • You cannot receive a graduate degree from SFU with a CGPA lower than 3.0.
  • To be eligible for an SFU or FAS Graduate Fellowship (GF), a CGPA of 3.5 is required.
  • A transcript review, including follow-ups on any course failures, will occur about one month after each semester.

A2: Submit a Graduate Progress Report with research progress marked as satisfactory.

  • Completion of the progress report must be done in conjunction with supervisor.
  • Research progress is evaluated by the supervisor in consultation with the supervisory committee.
  • Performance indicators and metrics applied to evaluate a student’s performance are determined between the student and their supervisory committee.
  • A marking of “unsatisfactory research progress” in a progress report must be proceeded by at least one written warning from the supervisor which is communicated to the student and copied to the Graduate Program Chair.
  • Unsatisfactory research progress may be cause for a student to be asked to withdraw from the program.

Breadth Areas

Area I: Theoretical Computing Science

  • CMPT 701: Computability and Logic 
  • CMPT 705: Design and Analysis of Algorithms 
  • CMPT 710: Computational Complexity 
  • CMPT 711: Bioinformatics Algorithms (cross-listed with Area IV)
  • CMPT 712: Approximation and Randomized Algorithms
  • CMPT 777: Formal Verification (cross-listed with Area II)
  • CMPT 789: Applied Cryptography 
  • CMPT 813: Computational Geometry 
  • CMPT 815: Algorithms of Optimization 
  • CMPT 981: Special Topics in Theoretical Computing Science

Area II: Networks and Systems

  • CMPT 740: Database Systems (cross-listed with Area IV)
  • CMPT 745: Software Engineering 
  • CMPT 750: Computer Architecture
  • CMPT 756: Distributed and Cloud Systems (only eligible if taken prior to Summer 2024)
  • CMPT 770: Parallel and Distributed Computing 
  • CMPT 771: Computer Networks 
  • CMPT 777: Formal Verification (cross-listed with Area I)
  • CMPT 780: Computer Security and Ethics 
  • CMPT 784: Cyber Risk Assessment and Management 
  • CMPT 785: Secure Software Design 
  • CMPT 786: Cloud and Computer Network Security 
  • CMPT 787: Ethical Hacking 
  • CMPT 788: Information Privacy 
  • CMPT 816: Theory of Communication Networks 
  • CMPT 886: Special Topics in Operating Systems 
  • CMPT 982: Special Topics in Networks and Systems

Area III: Artificial Intelligence

  • CMPT 713: Natural Language Processing 
  • CMPT 720: Robotic Autonomy: Algorithms and Computation
  • CMPT 721: Knowledge Representation and Reasoning
  • CMPT 722: Rendering and VIsual Computing for Artificial Intelligence (cross-listed with Area V)
  • CMPT 724: Affective Computing (cross-listed with Area V)
  • CMPT 726: Machine Learning 
  • CMPT 727: Statistical Machine Learning 
  • CMPT 728: Deep Learning 
  • CMPT 729: Reinforcement Learning 
  • CMPT 823: Formal Topics - Knowledge Representation 
  • CMPT 825: Natural Language Processing 
  • CMPT 827: Intelligent Systems 
  • CMPT 983: Special Topics in Artificial Intelligence

Area IV: Databases, Data Mining, Computational Biology

  • CMPT 740: Database Systems (cross-listed with Area II)
  • CMPT 711: Bioinformatics Algorithms (cross-listed with Area I)
  • CMPT 741: Data Mining
  • CMPT 829: Special Topics in Bioinformatics
  • CMPT 843: Database and Knowledge-base Systems
  • CMPT 984: Special Topics in Databases, Data Mining, Computational Biology

Area V: Graphics, HCI, Vision, and Visualization

  • CMPT 722: Rendering and Visual Computing for Artificial Intelligence (cross-listed with Area III)
  • CMPT 724: Affective Computing (cross-listed with Area III)
  • CMPT 757: Frontiers of Visual Computing 
  • CMPT 762: Computer Vision 
  • CMPT 763: Biomedical Computer Vision 
  • CMPT 764: Geometric Modelling in Computer Graphics 
  • CMPT 766: Computer Animation and Simulation 
  • CMPT 767: Visualization 
  • CMPT 769: Computational Photography and Image Manipulation
  • CMPT 820: Multimedia Systems 
  • CMPT 822: Computational Vision 
  • CMPT 828: Illumination in Images and Video 
  • CMPT 863: Human-Computer Interaction
  • CMPT 985: Special Topics in Graphics, HCI, Visualization, Vision, Multimedia

For more information about graduate courses offered in Computing Science, including course outlines and calendar decriptions, please visit our Graduate Courses page.