PhD Program

PHD Program

The Doctor of Philosophy (PhD) program in computer science (CS) is a research-oriented degree. Students pursuing a PhD in CS are required to do original research in a subarea of CS with mentoring from a CS faculty advisor. PhD students are expected to disseminate their research via conference and journal publications and presentations.The PhD in CS emphasizes preparation for research and teaching in academic settings or for research in private, industrial, or government laboratories. If you are a prospective PhD student, interested in applying to our PhD program, visit the Prospective Students page.

The PhD program in CS requires completion of a minimum number of 72 s.h. of graduate credit, satisfactory performance on the qualifying exam, comprehensive exam and the proposal. and the production and formal defense of a written dissertation describing original research results. This page provides a short outline of the PhD program requirements. Students should consult the Computer Science Graduate Handbook for detailed information about PhD requirements and graduate study policies. The requirements described here are in addition to the University-wide requirements for the PhD degree described in the Manual of Rules and Regulations of the Graduate College.

Basic Ph.D. requirements are as follows.

Core Requirement

This course:

Core Requirement
Course Number & Name Semester Hours
CS:5350 Design and Analysis of Algorithms 3 s.h.

And one of these:

Core Requirement: one of these.
Course Number & Name Semester Hours
CS:4330 Theory of Computation 3 s.h.
CS:5340 Limits of Computation 3 s.h.


Ph.D. students must complete at least three of the following courses, with at least one course selected from each area (9 s.h.).

Systems and Software
Systems and Software
Course Number & Name Semester Hours
CS:4640 Computer Security 3 s.h.
CS:4980 Topics in Computer Science II (section approved by advisor) 3 s.h.
CS:5610 High Performance Computer Architecture 3 s.h.
Networks and Distributed Systems
Networks and Distributed Systems
Course Number & Name Semester Hours
CS:4980 Topics in Computer Science II (section approved by advisor) 3 s.h.
CS:5620 Distributed Systems and Algorithms 3 s.h.
CS:5630  Cloud Computing Technology 3 s.h.
Programming Languages and Compilers
Programming Languages and Compilers
Course Number & Name Semester Hours
CS:4980 Topics in Computer Science II (section approved by advisor) 3 s.h.
CS:5810 Formal Methods in Software Engineering 3 s.h.

CS:5850 Programming Language Foundations

3 s.h.

CS:5860 Lambda Calculus and its Applications

3 s.h.


Ph.D. students must complete at least one course (3 s.h.) with significant practical or implementation-oriented content. With advisor approval, examples of courses that satisfy this requirement would include:

Course Number & Name Semester Hours
CS:4400 Database Systems 3 s.h.
CS:4420 Artificial Intelligence 3 s.h.
CS:4440 Web Mining 3 s.h.
CS:4470 Health Data Analytics 3 s.h.
CS:4500 Research Methods in HCI 3 s.h.
CS:4630 Mobile Computing 3 s.h.
CS:4700 High Performance and Parallel Computing 3 s.h.
CS:4720 Optimization Techniques 3 s.h.
CS:4980 Topics in Computer Science II (section approved by advisor) 3 s.h.
CS:5800 Fundamentals of Software Engineering 3 s.h.
CS:5990 Individualized Research or Programming Project 3 s.h.

Cognate Area

In consultation with their advisor, students are required to select three courses, totaling 9 s.h. or more, that constitutes coherent coverage of an external cognate area; the courses need not be offered by the same department. Choices include, but are not limited to, mathematics, statistics, genetics, biology, and engineering disciplines.


Students must earn at least 4 s.h. in the following.

CS:6000 Research Seminar: Colloquium Series (must enroll at least four times for 1 s.h. each)

Responsible Conduct of Research Requirement

The Department of Computer Science offers the course CS:7270 Computing Research Ethics for 1 s.h. credit every spring semester.  It is required that all PhD students complete this course within their first two years.  


Students fill their remaining semester hours with a selection of computer science graduate courses numbered 4300 or above and graduate courses outside of the Department of Computer Science, approved by their advisor.

Qualifying Exam

The purpose of the qualifying exam is to demonstrate the ability to read, analyze, synthesize, and communicate current research results. Qualifying exams are given twice a year, approximately mid-September and mid-February.  PhD students should take the qualifying exam at the beginning of their second year. PhD Students should start interacting with their initial advisor as soon as possible – preferably early in the fall semester – to set up a plan for starting research that will lead to success in the qualifying exam. Students must pass the qualifying exam by the end of their second year.  A qualifying exam is based on a small number (3-5) of research articles selected in consultation with the student's advisor.  The candidate prepares a 15-20 page synthesis/discussion of this material.  It is okay for a paper co-authored by the student to be one of the research articles covered by the qualifying exam report, however such a paper, by itself, cannot serve as a qualifying exam report. A panel of three faculty will be selected by the Department and a date and time will be assigned during the scheduled exam period for the candidate's 20-40 minute oral presentation The three-member faculty panel, along with the student's advisor acting in an advisory (non-voting) capacity, will decide the outcome of the exam by majority vote.

Comprehensive Exam

The comprehensive examination is an evaluation of a student's mastery of a research area near completion of formal course work, and before preparation of the dissertation. The exam may be written, oral, or both, at the department's discretion, and is administered by a faculty committee. The comprehensive exam typically should be completed by the end of a student's third year and no later than the end of the fourth year in the Ph.D. program.

Dissertation Proposal

At least six months prior to the final exam, a student must form a dissertation committee and circulate a formal thesis proposal to the committee.  The proposal should describe the research performed to date, related work, and outline the expected thesis results.  The student must, in essence, argue the originality and significance of the expected results to the committee in a manner consistent with their advisor's counsel (this may or may not include an oral presentation). Possible outcomes of a thesis proposal are (i) the committee finds the proposal satisfactory, or (ii) the committee suggests modifications and in a few weeks after the proposal the student and committee reach a consensus (via e-mail or face-to-face meetings) on a modified set of expected thesis results, or (iii) the committee asks the student to redo their proposal, likely with a fresh proposal document and oral presentation, giving the student enough time to address the committee’s concerns.


Each student must write a dissertation, a significant, original contribution to the field of computer science. Once students obtain some preliminary results and can identify and describe the boundaries of their dissertation, they prepare a written proposal for their committee's review. The dissertation must be prepared in accordance with the format specified in the Graduate College Thesis Manual.

Final Oral Examination

Once the dissertation is complete and has been reviewed by the student's committee, a final oral examination is administered on campus. This examination must take place no sooner than the semester following successful completion of the comprehensive examination and no later than five years after completion of the comprehensive exam.

Career Advancement

Many computer science Ph.D. graduates obtain positions in industry research laboratories, such as Amazon, Disney, Google, Samsung, and Yahoo, or in government research laboratories. Others pursue research and teaching careers in higher education, with some starting their careers in postdoctoral positions at universities before seeking employment in tenure-track positions, and some are employed as faculty with more teaching-oriented positions. A few recent Ph.D. graduates have founded or joined start-up companies.