Curriculum - Computer Science, PhD

The PhD program consists of 4 parts:

  • courses
  • qualifying exams
  • dissertation proposal
  • dissertation

Core Electives and Credit Requirements

In order to obtain your PhD degree, you must complete a minimum of 75 credits of graduate work beyond the BS degree, including at least 21 credits of dissertation. A Master of Science in Computer Science may be transferred as 30 credits without taking individual courses into consideration. Other graduate coursework may be transferred on a course-by-course basis. This includes courses taken for degrees other than a Master of Science in Computer Science.

You are required to take at least 2 courses of each of the following 3 areas at the School of Engineering. You should choose courses that DO NOT have substantial overlap with courses that you have taken previously at the School of Engineering or elsewhere. You must receive at least a grade of B in each of the 6 courses and a GPA over these 6 courses of at least 3.5. If you are a full-time student, you must complete these course requirements by the end of your second year.

Systems Core Area

CS 6143 Computer Architecture II, Credits: 3.00
CS 6243 Operating Systems II, Credits: 3.00
CS 6253 Distributed Operating Systems, Credits: 3.00
CS 6843 Computer Networking, Credits: 3.00
CS 6813 Information, Security and Privacy, Credits: 3.00
CS 6823 Network Security, Credits: 3.00

Theory Core Area

Note: One of the 2 courses must be CS 6753 Theory of Computation, Credits: 3.00 unless you have already taken an equivalent course.

CS 6043 Design and Analysis of Algorithms II, Credits: 3.00
CS 6753 Theory of Computation, Credits: 3.00
CS 6903 Modern Cryptography, Credits: 3.00
CS 6703 Computational Geometry, Credits: 3.00

Programming/Software Core Area

CS 6063 Software Engineering I, Credits: 3.00
CS 6073 Software Engineering II, Credits: 3.00
CS 6083 Principles of Database Systems, Credits: 3.00
CS 6413 Compiler Design and Construction, Credits: 3.00
CS 6533 Interactive Computer Graphics, Credits: 3.00
CS 6613 Artificial Intelligence I, Credits: 3.00
CS 6913 Web Search Engines, Credits: 3.00
CS 6923 Machine Learning, Credits: 3.00
CS 9163 Application Security, Credits: 3.00

Computer Science and Engineering Department faculty may modify these area course offerings from time to time. Certain selected topics courses may be used to fulfill these requirements with written permission from the department.

Additionally, for the following courses, you are required to take the course unless you have already taken an equivalent course (at either the graduate or undergraduate level) with a grade of B or higher. If you have taken an equivalent course and received a B grade or higher, you will not be permitted to take it at the School of Engineering as part of this PhD program without special permission:

CS 6133 Computer Architecture I, Credits: 3.00
CS 6233 Introduction to Operating Systems, Credits: 3.00
CS 6033 Design and Analysis of Algorithms I, Credits: 3.00
CS 6373 Programming Languages, Credits: 3.00

Qualifying Exam

The purpose of the qualifying exam is to assess your knowledge of computer science and your ability to perform dissertation-level research. You will be evaluated based on 2 components: a research exam and course work.

Research Exam

After entering the PhD program, you will work on a research project under the direction of a research adviser. By the end of the second year, you must take a research exam based on this work. The research exam will be tailored to the your individual research, and will have the following 3 parts: (1) written report, (2) oral presentation, (3) answering questions posed by the research exam committee. The research exam will be used to assess your ability to do dissertation-level research. The exact format of the report and presentation can vary depending upon your research accomplishments up until that time and the focus area. You may schedule the research exams during 2 periods of time in the year; a range of dates around the end of the fall and spring semesters will be announced in advance by the graduate director.

Course Component

Your overall course performance will be evaluated as part of the qualifying exam process. Special emphasis will be given to performance in PhD core courses. If you take the research exam in your third semester, you must complete at least 4 PhD core courses by the end of your third semester in order for your course performance to be evaluated at the end of the third semester. Otherwise, your evaluation will be delayed until the end of the fourth semester, by which time you must have taken all 6 PhD core courses.

Evaluation of your course performance will likely be based on a review your transcripts and possible consultation with your instructors. In special cases, you may be subject to additional evaluation and/or additional written exams in some core course areas.

Evaluating Qualifying Exam Performance

The Computer Science and Engineering faculty will examine your research-exam results and course performance to decide if you pass or fail the qualifying examination. They can also give you a conditional pass that imposes additional requirements and will be converted to a pass or fail grade.

If you fail the qualifying exam on your first attempt, you may retake it once. You must make your second attempt by the end of the your fifth semester. If you do not pass the qualifying exam on your second attempt, you will be dismissed from the PhD program. You cannot register for dissertation credit until you have passed the qualifying exam.

If you enter the PhD program with a master's degree in computer science, you are urged to take the research exam and at least 4 of the required core courses by the end of your third semester. This gives you the potential to pass the qualifying exam by the end of your third semester and to begin taking thesis credits in your fourth semester.


The last, and most substantial, aspect of the PhD program is the dissertation. The dissertation must embody a significant original research contribution and must be written in accepted scholarly style. The research should be conducted in close consultation with your advisor. It is strongly recommended that you submit at least 1 paper on your research to a refereed archival journal or refereed conference. When your adviser feels that you have obtained sufficiently significant research results and that you have written an acceptable dissertation, a public dissertation defense will be scheduled. It will consist of your oral presentation and questions from the dissertation committee.

Additional requirements for the PhD dissertation are available from the Office of the Associate Provost of Research and PhD programs.