Doctor of Philosophy in Computer Science
Credit hour requirements: 40 credit hours if entering with a Master of Science in Computer Science; 49 credit hours if entering with a master of science not in computer science; 72 credit hours if entering with a Bachelor of Science in Computer Science.
The doctoral program is designed for those students who have an interest in pursuing an academic or industrial research career. To be awarded a Ph.D. in Computer Science, a student must demonstrate mastery in several areas of computer science and must make a significant original contribution to research in the field of computer science. On entry into the program, a student is required to take coursework in a number of areas and pass written and oral qualifying exams. Next, the student must formulate a thesis research problem and present it and the proposed research to a committee of faculty at a comprehensive exam. Upon passing this examination, the student must carry out the research and write and defend a thesis, among other requirements.
Admission to the Ph.D. program is competitive and applicants must have high grade point averages, GRE scores, and (if required) TOEFL scores. Students who enter the program after completing a master's degree (not necessarily in computer science) normally require three to four years of full-time work to complete the Ph.D. Part-time students require more time. Students may also enter the program directly after completing only a bachelor's degree in computer science. The direct program enables bright, highly-motivated students to participate in departmental research programs immediately after their bachelor's degree. Students in the direct program take extra coursework and normally require an additional year to complete the Ph.D. compared to students in the post-master's program.
Overview
To receive a Ph.D., students must meet coursework requirements and pass qualifying exams, a comprehensive exam, and a thesis defense.
Curriculum
Students in the Ph.D. program have course requirements that depend on whether they enter the program with a Master of Science in Computer Science, a master of science not in computer science, or with a Bachelor of Science in Computer Science.
Students With a Master of Science in Computer Science
Minimum Total Credits Required | 72 |
Maximum Transfer Credit | 32 |
Maximum 400-Level Credit | 12 |
500- and 600-Level Course Credit Required | 15-30 |
Code | Title | Credit Hours |
---|---|---|
Required Courses | (10) | |
Select a minimum of three courses from three different core course groups as listed below. | 9 | |
CS 695 | Doctoral Seminar | 1 |
Readings and Special Problems Courses | (0-12) | |
CS 597 | Reading and Special Problems 1 | 0-12 |
General Electives | (0-6) | |
Select zero to six credit hours | 0-6 | |
Ph.D. Research | (24-36) | |
CS 691 | Research and Thesis Ph.D. | 24-36 |
Transfer Credit | (32) | |
A maximum of 32 credit hours of masters transfer credit is allowed. | 32 |
Students With a Master of Science Not In Computer Science
Minimum Total Credits Required | 72 |
Maximum Transfer Credit | 23 |
Maximum 400-Level Credit | 12 |
Minimum 500- and 600-Level Computer Science Course Credit | 24 |
Code | Title | Credit Hours |
---|---|---|
Required Courses | (16) | |
Select a minimum of one course from each of the following groups: Theory of Computation, Systems, and Programming Languages | 9 | |
Select a minimum of two courses from two of the following groups: Networks and Security, Databases, Software Engineering, or Computational Intelligence | 6 | |
CS 695 | Doctoral Seminar | 1 |
Readings and Special Problems Courses | (0-9) | |
CS 597 | Reading and Special Problems 1 | 0-9 |
General Electives | (0-9) | |
Select zero to nine credit hours | 0-9 | |
Ph.D. Research | (24-33) | |
CS 691 | Research and Thesis Ph.D. 1 | 24-33 |
Transfer Credit | (23) | |
A maximum of 23 hours of masters transfer credit is allowed. | 23 |
Students With a Bachelor of Science in Computer Science
Minimum Credits Required | 72 |
Maximum 400-Level Credit | 12 |
500-Level Computer Science Course Credit Required | 36-54 |
Code | Title | Credit Hours |
---|---|---|
Required Courses | (16) | |
Select a minimum of one course from each of the following groups: Theory of Computation, Systems, and Programming Languages | 9 | |
Select a minimum of two courses from two of the following groups: Networks and Security, Databases, Software Engineering, or Computational Intelligence | 6 | |
CS 695 | Doctoral Seminar | 1 |
Readings and Special Problems Courses | (0-12) | |
CS 597 | Reading and Special Problems | 0-12 |
General Electives | (8-26) | |
Select 8-26 credit hours | 8-26 | |
Ph.D. Research | (24-36) | |
CS 691 | Research and Thesis Ph.D. | 24-36 |
Notes
- To be used to satisfy requirements, courses must be passed with a grade of "B" or better. CS 401, CS 402, CS 403, CSP, and accelerated courses cannot be used. With department approval, courses may be replaced by more advanced courses.
- The 500- and 600-level electives can include credit hours from CS 595. They cannot include credit hours from CS 597, CS 691, or CS 695. With department approval, up to six credit hours may come from outside the CS department.
- A student's adviser may require other courses to be taken.
Core Courses
There are six core course areas. To meet a core requirement, a course must be taken at Illinois Institute of Technology as part of the Ph.D. program; transfer courses cannot be used. Core courses must be passed with "B" or better to satisfy core course requirements.
Code | Title | Credit Hours |
---|---|---|
Group 1: Theory of Computation | (15) | |
CS 530 | Theory of Computation | 3 |
CS 533 | Computational Geometry | 3 |
CS 535 | Design and Analysis of Algorithms | 3 |
CS 538 | Combinatorial Optimization | 3 |
CS 539 | Game Theory: Algorithms and Applications | 3 |
Group 2: Systems | (12) | |
CS 546 | Parallel and Distributed Processing | 3 |
CS 550 | Advanced Operating Systems | 3 |
CS 562 | Virtual Machines | 3 |
CS 570 | Advanced Computer Architecture | 3 |
Group 3: Programming Languages | (15) | |
CS 534 | Types and Programming Languages | 3 |
CS 536 | Science of Programming | 3 |
CS 540 | Syntactic Analysis of Programming Languages | 3 |
CS 541 | Topics in Compiler Construction | 3 |
CS 545 | Distributed Computing Landscape | 3 |
Group 4: Networks and Security | (18) | |
CS 528 | Data Privacy and Security | 3 |
CS 542 | Computer Networks I: Fundamentals | 3 |
CS 543 | Software-Defined Networking | 3 |
CS 544 | Computer Networks II: Network Services | 3 |
CS 549 | Cryptography and Network Security | 3 |
CS 558 | Advanced Computer Security | 3 |
Group 5: Databases | (3) | |
CS 525 | Advanced Database Organization | 3 |
Group 6: Software Engineering | (3) | |
CS 586 | Software Systems Architectures | 3 |
Group 7: Artificial Intelligence | (24) | |
CS 512 | Computer Vision | 3 |
CS 577 | Deep Learning | 3 |
CS 578 | Interactive and Transparent Machine Learning | 3 |
CS 579 | Online Social Network Analysis | 3 |
CS 581 | Advanced Artificial Intelligence | 3 |
CS 583 | Probabilistic Graphical Models | 3 |
CS 584 | Machine Learning | 3 |
CS 585 | Natural Language Processing | 3 |
Ph.D. Qualifying Examination
The Ph.D. qualifying examination has two parts: three written examinations and an oral examination. The written exam is used to judge a student’s breadth of knowledge; the oral exam is used to judge a student’s research potential. See the computer science website (iit.edu/computer-science) and the Examinations section of this bulletin for details.
Master of Science Exit from Program
Students wishing to leave the direct Ph.D. program with the degree of Master of Science in Computer Science must satisfy all the requirements of the master’s degree and either write an M.S. thesis or pass the Ph.D. qualifying examination. In special circumstances students may petition the department for consideration.
Comprehensive (Research Proposal) Examination
The purpose of the comprehensive examination is to ensure that the candidate has the background to carry out successful research in the chosen area and that the research problem is properly formulated and has sufficient scholarly merit. The student (in concert with the student’s research adviser) must develop a written research proposal containing a literature review, a proposed research topic, and a program of research based upon this topic, and then present it orally as well. See the computer science website (iit.edu/computer-science) and the Examinations section of this bulletin for details.
Thesis Defense
Each student must present an oral defense of their Ph.D. thesis. The thesis review committee is appointed in much the same way as the Ph.D. comprehensive examination committee. It will examine the written thesis and examine the student during the oral defense. All Ph.D. thesis defenses are open to the public. See the computer science website (iit.edu/computer-science) and the Examinations section of this bulletin for details.