The Doctor of Philosophy program in Computer Science is overseen by the Computer Science Graduate Committee (CSGC). The basic guidelines for approval of a student’s program are recommendations appearing in the Communications of the Association for Computing Machinery (ACM), the professional society in Computer Science.
Prerequisites for Admission
Completion of the following courses, or their equivalents, is prerequisite to entry into the program:
|CSC 120||Computer Programming I||4|
|CSC 220||Computer Programming II||4|
|CSC 314||Computer Organization and Architecture||3|
|CSC 317||Data Structures and Algorithm Analysis||3|
|CSC 427||Theory of Computing||3|
|MTH 161||Calculus I||4|
|MTH 224||Introduction to Probability and Statistics||3|
|MTH 309||Discrete Mathematics I||3|
|Total Credit Hours||27|
Students may be admitted with deficiencies, normally a maximum of 6 credits. These must be completed in addition to the degree requirements.
|CSC 700-Level Courses||12|
|Electives with Advisor Approval||12-30|
|Pre-Candidacy DOCTORAL DISSERTATION|
|Post-Candidacy Doctoral Dissertation|
|Research in Residence|
|Total Credit Hours||60|
Requirements for Graduation
Students must complete the Graduate School requirements, and the Departmental requirements described here.
For graduation students must complete at least 60 credits (as required by the Graduate School), including at least 24 classrom course credits (see below), at least 9 pre-candidacy credits (CSC830), and at least 9 post-candidacy credits (CSC840).
Written Qualifying Exam
The student must pass a three-hour written exam of general knowledge of Computer Science at the end of the first year. Upon failure, the student may petition the CSGC to allow a second attempt at the end of the second year. The exam will be administered once a year in the early weeks of the summer session. It will cover expected knowledge of all first-year graduate students. Included in this material are a fundamental understanding of algorithm analysis and design, advanced skills in programming, basic knowledge of computer architecture, and a general understanding of computer systems.
By the end of the first two years, the student must have completed at least eight classroom courses, for a total of at least 24 credits. At least four of these courses (12 credit hours) must be CSC7XX courses. The student must work with the Director of Graduate Studies to select approved courses. Maximally 12 credits from prior study may be pre-approved by the Director of Graduate Studies for transfer after completion of an equivalent number of credits at the University of Miami.
Selecting an Advisor
By the end of the second semester, the student must find a research supervisor. By the end of the third semester, the student must have made significant progress on a research project under the supervision of a faculty member. The student must write a detailed progress report that will become a public document and shall be kept on file by the Department. The student must present the report to a quorum of the CSGC at a time to be approved by the chairman of the Department. The supervisor and CSGC must approve the project as applicable toward candidacy for a Ph.D.
After passing the written qualifying exam, the student must make a public oral presentation to the Department at least once per year. These presentations include the thesis proposal and the thesis defense. The goals are to develop the student’s oral and presentation skills, to provide a means for the Department to check the research and progress of the student, and to present the opportunity for feedback to improve the student’s research.
Each student must teach a lab-based course for a minimum of one semester. Lab-based courses typically require the student to present material in a relaxed lecture format, re-emphasizing material learned in the general lecture as well as introducing new material to the students.
The Department's mission is to educate and perform scholarly activities in Computer Science.
Student Learning Outcomes
- Student has adequate knowledge of 1) hardware and software systems and 2) design and implementation procedures for software systems.
- Student has foundation of theoretical computer science including discrete mathematics, automata and language theory, design and analysis of algorithms, computational complexity, and correctness of programs.
- Student has understanding and knowledge of the state-of-the-art hardware and software applications in one or more research area and has identified one or more open and interesting problems that computer scientists are currently addressing.
- Student has applied knowledge of computer science theories and software development methodologies to solve an original research topic. The student has written a Ph.D. dissertation and presented to his dissertation committee.
- Student has received national and international recognition for presentation and publication of original research results.