The PhD in Computer Science is designed to prepare students for careers in academia, industrial and national research labs, and technical leadership in industry and government.The rigorous curriculum provides a broad background in the fundamentals of computer science, advanced courses in a wide range of focus areas, and opportunity to make an impact at the forefront of computing. The program provides training in conducting research, publishing and presenting papers, developing systems, and establishing science and technology policy.
Coursework
A minimum of 48semester hours of coursework beyond the BS/BA degree is required of all students.
All students must demonstrate sufficient knowledge in the fundamentals of computer science, as well as the ability to carry out research in an area of computer science.
The student must maintain a minimum grade-point average of3.500among the six core courses and receive a grade of B or better in each of these courses. Students who have taken equivalent courses in other institutions may petition to be exempted from the course(s)(subject to the approval of the PhD computer science curriculum committee). Each student may repeat a course once for no more than three out of the six courses if they do not receive a B or better in the course. Students with a Master of Science in Computer Science may petition to the PhD computer science curriculum committee for an exemption from these courses. Petition forms are available on the college website.
The fields listed do not necessarily represent areas of specialization or separate tracks within the PhD program. Rather, they attempt to delineate areas on which the student must be examined in order to measure their ability to complete the degree. Therefore, they may be adjusted in the future to reflect changes in the discipline of computer science and in faculty interests within the Khoury College of Computer Sciences. Similarly, these fields do not represent the only areas in which a student may write their dissertation. They are, however, intended to serve as a basis for performing fundamental research in computer science.
Paper Requirement
To demonstrate research ability, the student is required to submit to the PhD committee a research or a survey paper in an area of specialty under the supervision of a faculty advisor. A submitted paper from a student is considered to have fulfilled the paper requirement if:
- The paper has been accepted by a selective conference.
- The student has made a substantial contribution to the paper.
- The advisor has endorsed the paper with a written statement indicating the student’s contribution.
- The PhD computer science curriculum committee has voted on a positive recommendation. The committee may require a presentation from the student before making a recommendation.
Admission to Candidacy
Upon completion of the course and the research paper requirements, the student is admitted to candidacy for the PhD degree. It is highly recommended that the student complete the candidacy requirement by the end of their second year but no later than the third year.
Residency
One year of continuous full-time study is required after admission to the PhD candidacy. It is expected that during this period the student will make substantial progress in preparing for the comprehensive examination.
Teaching Requirement
All computer science PhD students must satisfy the teaching requirement in order to graduate. This requirement is fulfilled when the student works as a teaching assistant or instructor of record for one semester and during this semester:
- Teaches at least three hours of classes
- Prepares at least one assignment, or quiz, or equivalent
PhD students are expected to satisfy the teaching requirement some time after completing their first year and at least one semester prior to scheduling their PhD defense.
Comprehensive Examination/Dissertation Proposal
After the student has achieved sufficient depth in a field of study, they prepare a proposal for the PhD dissertation. This process should take place no later than the end of the fifth year in residence. The student prepares a dissertation proposal, which describes the proposed research, including the relevant background materials from the literature. The proposal should clearly specify the research problems to be attacked, the techniques to be used, and a schedule of milestones toward completion.
The dissertation proposal must be approved by the dissertation committee. With the help of the advisor, a student selects the committee, consisting of at least four members, to be approved by the PhD computer science curriculum committee. The four members must include the advisor, two internal members, and an external member.
Upon approval of the written proposal, the student has to present the proposed work orally in a public forum, followed by a closed-door oral examination from the dissertation committee. The student may take the dissertation proposal examination twice, at most.
Doctoral Dissertation
Upon successful completion of solving the research proposed in the dissertation proposal, the candidate has an opportunity to prepare the dissertation for approval by the dissertation committee. The dissertation must contain results of extensive research and make an original contribution to the field of computer science. The work should give evidence of the candidate’s ability to carry out independent research. It is expected that the dissertation should be of sufficient quality to merit publication in a reputable journal in computer science.
Doctoral Committee
With the help of the advisor, a student selects the committee, consisting of at least four members, to be approved by the PhD computer science curriculum committee. The four members must include the advisor, two internal members, and an external member.
Dissertation Defense
Thedissertation defense is held in accordance with the regulations of the University Graduate Curriculum Committee. It consists of a lecture given by the candidate on the subject matter of the dissertation. This is followed by questions from the dissertation committee and others in attendance concerning the results of the dissertation as well as any related matters. The defense is chaired by the PhD advisor.
Time and Time Limitation
After the establishment of degree candidacy, a maximum of five years will be allowed for the completion of the degree requirements, unless an extension is granted by the college graduate committee.
- Concentrations and course offerings may vary by campus and/or by program modality. Please consult with your advisor or admissions coach for the course availability each term at your campus or within your program modality.
- Certain options within the program may berequiredat certain campuses or for certain program modalities. Please consult with your advisor or admissions coach for requirements at your campus or for your program modality.
Complete all courses and requirements listed below unless otherwise indicated.
Milestones
Coursework
Paper requirement
Admission to candidacy
Residency
Teaching requirement
Comprehensive examination/dissertation proposal
Doctoral dissertation
Doctoral committee
Dissertation defense
Course Area Requirements
A grade of B or higher is required in each course. A cumulative 3.500 GPA is required for the core requirement.
Students should refer to the course numbering table for graduate course leveling.
Code | Title | Hours |
---|---|---|
Complete a total of six courses. Courses must cover at least four of the five areas, and a maximum of two courses may be at the 5000 level. | 24 | |
At least two courses must be 7000-level seminar courses. | ||
At least two courses must be 7000-level nonseminar courses. | ||
Artificial Intelligence and Data Science | ||
Seminar Courses | ||
CS7170 | Seminar in Artificial Intelligence | |
Nonseminar Courses | ||
CS7140 | Advanced Machine Learning | |
CS7150 | Deep Learning | |
CS7180 | Special Topics in Artificial Intelligence | |
CS7200 | Statistical Methods for Computer Science | |
CS7240 | Principles of Scalable Data Management: Theory, Algorithms, and Database Systems | |
CS7280 | Special Topics in Database Management | |
CS7290 | Special Topics in Data Science | |
CS7380 | Special Topics in Graphics/Image Processing | |
Other Courses | ||
CS5100 | Foundations of Artificial Intelligence | |
CS5150 | Game Artificial Intelligence | |
CS5170 | Artificial Intelligence for Human-Computer Interaction | |
CS5180 | Reinforcement Learning and Sequential Decision Making | |
CS5200 | Database Management Systems | |
CS5330 | Pattern Recognition and Computer Vision | |
CS5335 | Robotic Science and Systems | |
CS5850 | Building Game Engines | |
CS6120 | Natural Language Processing | |
CS6140 | Machine Learning | |
CS6200 | Information Retrieval | |
CS6220 | Data Mining Techniques | |
CS6240 | Large-Scale Parallel Data Processing | |
DS5110 | Introduction to Data Management and Processing | |
DS5220 | Supervised Machine Learning and Learning Theory | |
DS5230 | Unsupervised Machine Learning and Data Mining | |
Human-Computer Interaction | ||
Seminar Courses | ||
CS7375 | Seminar in Human-Computer Interaction | |
Nonseminar Courses | ||
CS7250 | Information Visualization: Theory and Applications | |
CS7260 | Visualization for Network Science | |
CS7295 | Special Topics in Data Visualization | |
CS7300 | Empirical Research Methods for Human Computer Interaction | |
CS7340 | Theory and Methods in Human Computer Interaction | |
CS7390 | Special Topics in Human-Centered Computing | |
Other Courses | ||
CS5097 | Mixed Reality | |
CS5170 | Artificial Intelligence for Human-Computer Interaction | |
CS5340 | Computer/Human Interaction | |
CS6350 | Empirical Research Methods | |
Software | ||
Seminar Courses | ||
CS7470 | Seminar in Programming Languages | |
CS7575 | Seminar in Software Engineering | |
Nonseminar Courses | ||
CS7430 | Formal Specification, Verification, and Synthesis | |
CS7480 | Special Topics in Programming Language | |
CS7485 | Special Topics in Formal Methods | |
CS7580 | Special Topics in Software Engineering | |
Other Courses | ||
CS5310 | Computer Graphics | |
CS5400 | Principles of Programming Language | |
CS5500 | Foundations of Software Engineering | |
CS5520 | Mobile Application Development | |
CS5610 | Web Development | |
CS6410 | Compilers | |
CS6510 | Advanced Software Development | |
Systems and Security | ||
Seminar Courses | ||
CS7270 | Seminar in Database Systems | |
CS7670 | Seminar in Computer Systems | |
CS7770 | Seminar in Computer Networks | |
CS7775 | Seminar in Computer Security | |
Nonseminar Courses | ||
CS7600 | Intensive Computer Systems | |
CS7610 | Foundations of Distributed Systems | |
CS7680 | Special Topics in Computer Systems | |
CY7790 | Special Topics in Security and Privacy | |
Other Courses | ||
CS5600 | Computer Systems | |
CS5700 | Fundamentals of Computer Networking | |
CS6620 | Fundamentals of Cloud Computing | |
CS6650 | Building Scalable Distributed Systems | |
CS6710 | Wireless Network | |
CS6760 | Privacy, Security, and Usability | |
CY5130 | Computer System Security | |
CY5150 | Network Security Practices | |
CY5770 | Software Vulnerabilities and Security | |
CY6740 | Network Security | |
Theory | ||
Seminar Courses | ||
CS7870 | Seminar in Theoretical Computer Science | |
NonSeminar Courses | ||
CS7800 | Advanced Algorithms | |
CS7805 | Complexity Theory | |
CS7810 | Foundations of Cryptography | |
CS7840 | Foundations and Applications of Information Theory | |
CS7880 | Special Topics in Theoretical Computer Science | |
Other Courses | ||
CS5800 | Algorithms | |
CY5120 | Applied Cryptography |
Electives
Code | Title | Hours |
---|---|---|
Complete 24 semester hours in the following: | 24 | |
Note: Consult faculty advisor for the other acceptable courses. | ||
CS5100 to CS5850, except CS5340 | ||
CS 6110 to CS 6810 | ||
CS7340 | Theory and Methods in Human Computer Interaction | |
CS7930 | Effective Scientific Writing in Computer Science | |
CS8982 | Readings |
Dissertation
Code | Title | Hours |
---|---|---|
Upon achieving PhD candidacy, complete the following courses for two consecutive semesters: | ||
CS9990 | Dissertation Term 1 | |
CS9991 | Dissertation Term 2 | |
For remaining semester(s), complete the following (repeatable) course until graduation: | ||
CS9996 | Dissertation Continuation |
Program Credit/GPA Requirements
48total semester hours required
Minimum overall 3.000GPA required
Sample Plan of Study
Year 1 | |||
---|---|---|---|
Fall | Hours | Spring | Hours |
Area course | 4 | Area course | 4 |
Readings | 4 | Readings | 4 |
8 | 8 | ||
Year 2 | |||
Fall | Hours | Spring | Hours |
Area course | 4 | Area course | 4 |
Readings | 4 | Readings | 4 |
8 | 8 | ||
Year 3 | |||
Fall | Hours | Spring | Hours |
Area course | 4 | Area course | 4 |
Readings | 4 | Readings | 4 |
8 | 8 | ||
Year 4 | |||
Fall | Hours | Spring | Hours |
CS9990 | 0 | CS9991 | 0 |
0 | 0 | ||
Year 5 | |||
Fall | Hours | Spring | Hours |
CS9996 | CS9996 | ||
0 | 0 | ||
Year 6 | |||
Fall | Hours | Spring | Hours |
CS9996 | CS9996 | ||
0 | 0 | ||
Total Hours: 48 |
- Concentrations and course offerings may vary by campus and/or by program modality. Please consult with your advisor or admissions coach for the course availability each term at your campus or within your program modality.
- Certain options within the program may berequiredat certain campuses or for certain program modalities. Please consult with your advisor or admissions coach for requirements at your campus or for your program modality.
Coursework
Incoming PhD in Computer Science students who have already completed a Master of Science in Computer Science or an adjacent field may petition to the PhD in Computer Science program administration for advanced entry. Advanced entry petitions are reviewed by the program administration on a case-by-case basis. Please note that advanced standing does not waive by itself any part of the PhD coursework requirements.
As a degree conferral requirement, a minimum of 16 semester hours of coursework beyond the 32 semester hours of the master’s degree is required of advanced entry PhD students (48 semester hours is required of standard entry PhD students). Students must maintain a minimum GPA of 3.500 as well as earn a grade of B or better in each course.
Paper Requirement
Refer to the Computer Science, PhD, overview, for research/survey paper requirements.
Admission to Candidacy
Refer to the Computer Science, PhD, overview, foradmission to candidacyrequirements.
Residency
Refer to the Computer Science, PhD, overview, forresidencyrequirements.
Teaching Requirement
Refer to the Computer Science, PhD, overview, forthe teachingrequirement.
Comprehensive Examination/Dissertation Proposal
Refer to the Computer Science, PhD, overview, forcomprehensive examinationrequirements.
Complete all courses and requirements listed below unless otherwise indicated.
Milestones
Annual review
Course requirements
Paper requirement
Comprehensive exam
Teaching requirement
Doctoral candidacy
Dissertation committee
Dissertation proposal
Dissertation defense
Core Requirements
Students must maintain a minimum GPA of 3.500 as well as earn a grade of B or better in each course.
Code | Title | Hours |
---|---|---|
Consult your faculty advisor for acceptable courses. | 16 |
Dissertation
Code | Title | Hours |
---|---|---|
Upon achieving PhD candidacy, complete the following courses for two consecutive semesters: | ||
CS9990 | Dissertation Term 1 | |
CS9991 | Dissertation Term 2 | |
For remaining semester(s), complete the following (repeatable) course until graduation: | ||
CS9996 | Dissertation Continuation |
Program Credit/GPA Requirements
16 total semester hours required
Minimum overall 3.500GPA required