Degree requirements for the Master's degree
within the Ph.D. program in Computer Science.
Last major revision: August 1, 2008.
Last update: August 30, 2004.
Previous major revision: August 23, 2004.
Previous major revision: September 17, 2001.
- Distribution Requirement
- Research Focus Courses
- Master's Paper and Exam
- University Requirements
Students working towards a Ph.D. must first obtain their Master's Degree within the Ph.D. program. The process leading to this degree is part of the Ph.D. program and must not be confused with the Master's Program offered by this department. To obtain a Master's Degree, students in the Ph.D. program must meet the following requirements:
- Complete the Distribution Requirement by the end
of the third quarter of the second year of studies.
- Complete the Research-Focus Course Requirement by the
end of the third quarter of the second year of studies.
- Identify a research area and an advisor for a Master's Paper by the
beginning of the first quarter of the second year.
- Complete a Master's Paper.
- Pass the Master's Exam by the fifth week of the autumn quarter of the third year of studies.
Students must also meet the University Requirements.
The department is now using an on-line system to track student progress. Students must enter the relevant information into the system and notify the Program Administrator at least two weeks prior to the proposed date of the Master's exam. The Program Adminsitrator will schedule an exam after the student has entered the necessary information into the system.
The system is integrated into the Department's system for managing website information. To use it, a student should follow the link above, log in into his/her web account, and then hit the edit button. The student will then be able to enter information about course requirements along with a title, abstract, and draft of a master's paper. Once the student has entered the required information, he/she should send email to the Program Administrator to schedule an exam. Students who have taken non-standard core courses or electives should include that information in their message to the Program Adminstrator. The administrator then will print out the relevant forms, verify the course information, announce the exam, and make the draft Master's paper publically available. A day or two before an exam, the student should pick up a department master's approval form and a University degree requirements form from the program administrator. These forms must be signed by the members of the student's committee, the Director of Graduate Studies, and the Department Chair and must be submitted to the Program Administrator by the degree deadline (typically, the Wednesday of 8th week).
All students must complete an approved sequence of nine courses. An approved sequence consists of the "Big Ideas in Computer Science" course, the five core courses, and three electives. Students taking the CM track are required to take a different set of core courses and will choose from a different set of electives. Click here for these and other specifics of the CM track.
A student's motto should be: demonstrate proficiency in all areas and excellence in at least one area.
Students who do not meet the minimum requirements for these courses (described here and here) cannot continue their studies beyond autumn of the third year. Students who do meet these minimum requirements will not automatically be allowed to continue after their second year; the faculty will decide continuation based on the student's perceived capacity to perform Ph. D. level independent research in a specific area.
During the first quarter of their studies, each student is required to take and pass the course
- CMSC 31100 - Big Ideas in Computer Science. (Offered each autumn, replaces CMSC 31000, graded on a Pass/Fail basis.)
The set of core courses has been designed to bring sharp focus on the foundations to the program, guarantee sufficient breadth, and foster collegiality among our graduate students. Each student selects a set of five from the list below; the selection must include two Theory courses, two Systems courses, and one course in Artificial Intelligence. Currently, only the Systems list permits students a choice.
Core Courses: Theory
- CMSC 37110 - Discrete Mathematics. (Offered each autumn. Students are strongly encouraged to take this course in the first quarter of studies. In addition to providing the mathematical foundations to much of computer science, including discrete probability, linear algebra, and asymptotic analysis, this course gives students the opportunity to practice the rudiments of mathematical thinking through rigorous problem solving. This course is a prerequisite to Algorithms and to Introduction to AI.)
- CMSC 37000 - Algorithms. (Offered each winter.)
- CMSC 23700 - Introduction to Computer Graphics. (Offered every other year in the autumn.)
- CMSC 23000 - Operating Systems. (Offered every other year in the spring.)
- CMSC 32200 - Computer Architecture. (Offered every other year in the spring.)
- CMSC 33300 - Networks and Distributed Systems. (Offered each autumn.)
- CMSC 32630 - Advanced Implementation of Computer Languages. (Offered every other year in the spring.)
Core Courses: Artificial Intelligence
- CMSC 35000 - Introduction to Artificial Intelligence. (Offered each winter.)
The minimum formal requirements for the core courses ("Ph.D. Pass") are the following: Students are required to complete the five core courses by the end of the spring quarter of their second year of studies with a grade of at least B in each core course and with a grade point average (GPA) of at least 3.25 in the five core courses. In computing the GPA, A=4, B=3, and a + or a - counts as 1/3 of a point. So for instance a student with the grades A-, B+, B+, B, B in the five core courses has a GPA of 3.27 and thus passes the minimum GPA requirement.
Students who fail to meet the core course requirements stated in the preceding paragraph may continue on to write a master's paper and complete a master's degree, if they meet the following requirement ("Master's Pass"): complete all the five core courses by the end of the spring quarter of the second year with a grade of at least B- in each core course and with a grade point average (GPA) of at least 3.00 in the five core courses. Such students will be supported for at most one quarter of their third year.
The following courses are currently approved by the Department as electives to fulfill the Distribution Requirement. To ensure the overall direction, each student's advisor must approve the student's selection of electives. To ensure sufficient breadth, no more than two of the electives chosen by each student may be in any of the general areas of Theory, AI or Programming Languages.
- Theory of Computing:
- Artificial Intelligence:
- Numerical Computing:
- CMSC 37600 - Computational Biology
Students must complete their electives by the end of spring quarter of their second year of studies with a grade of at least B in each course.
The Department does not guarantee that all the electives listed will be offered in any given period of time. Students may petition the Graduate Committee to substitute other courses for those listed in case of unavailability. Students are urged to submit their petitions for substitution before they take a course with which they intend to fulfill the Distribution Requirement.
"Reading and Research" courses may not be used to replace electives except under the most extenuating circumstances. Such exception must be approved by the Graduate Committee. Students are encouraged to check with the Director of Graduate Studies in advance, but final approval of a "Reading and Research" course to fulfill a course requirement will in general be only given after the completion of the course work.
Each quarter during the first two academic years of their studies, students are required to enroll in a course that facilitates their future research careers. These courses will be chosen with the direct input of the student's advisor. Examples of such courses include "Reading and Research" (RR) courses, topics courses, graduate seminars, or courses in other departments that build useful tools for future research.
Each student must complete a Master's paper that must demonstrate knowledge of a particular area of computer science, including in-depth familiarity with the related literature. A draft of this paper must be entered into the on-line tracking system at least two weeks prior to the exam.
The student must give a public presentation of the paper, followed by a private exam. At the public presentation and in the private exam, the student must be able to give detailed answers to questions about the work described in the paper. The exam will be administered by the Examination Committee and must be announced by the Program Administrator at least two weeks in advance.
In addition to the departmental requirements, every graduate student must fulfill the University requirements for a Master's Degree, including residency requirements, proper degree registration, payment of fines, etc. The University prints these rules each quarter in the Time Schedule, and makes them available in the Student Manual of University Policies and Regulations.