NOTE: MS in CS degree requirements for students enrolled prior to fall 2004 are posted at http://cs.nyu.edu/webapps/content/academic/graduate/msrulespre2004
MS students must:
A. Complete 36 points of approved coursework.
- 21 credits must be taken as standard CS classroom-based courses.
- An additional 6 credits must be either standard classroom-based CS courses; standard classroom courses in the Math Department; independent study with a full-time faculty supervisor in the Computer Science Department, excluding external internships; or master's thesis.
- The remaining 9 credits may be any of the above, or may be: credits transferred from previous graduate study in Computer Science at another university; external internship; or relevant graduate courses in other departments at NYU. At most 6 credits of external internship may be taken.
B. Pass the M.S. Core Comprehensive Exam (Core Exam) or, if they meet the following requirements, do a thesis instead.
Students who have a 3.75 GPA or better after 7 courses have the option to waive the Core Exam and to do a thesis instead.
Such students must have taken at least 3 of the 4 core courses and received a B+ or better in all of them.
Students seeking this arrangement must find a full-time faculty member with whom to do this thesis. They will then register for 6 credits of MS thesis work.
The thesis must satify the following quality criteria:
It must be original research or design / implementation. The work required must be equivalent to that of two regular MS courses. The thesis must result in a high-quality document of 30-50 pages or more.
The thesis must be read and approved by two full-time faculty members, one of whom is the advisor.
At the discretion of the advisor, the thesis will be published on the Department web page.
C. Take two courses that study the application of computer science to an external purpose rather than to the internal structure of computers and computer systems.
Requirement C is fulfilled by taking at least one course each in two of the following four subject areas: computation for science and society, graphics, intelligent systems or databases.
'Computation for science and society' includes courses on numerical methods and courses on applications of computation to the physical, biological, and social sciences.
Graphics includes courses on computer graphics, visualization, solid modelling, vision, multimedia, and animation.
Intelligent systems includes any course on artificial intelligence, machine learning, data mining, and natural language processing.
Database courses include databases, distributed computing, and data mining.
Some courses can be counted in either of two areas. For example a student taking Computer Vision can count it either as an AI course or as a Graphics course (but not both).
D. Take at least one course that involves a substantial programming project (not just a series of small programming exercises) and includes an extensive discussion of good programming practice and software engineering principles.
Each semester, courses that meet this criterion will be identified by the Director of Graduate Studies (see the Course Roadmap). They may be regular courses or special topics courses, though some regular courses should be consistently in this category (e.g. compilers). This requirement cannot be satisfied through advanced lab or master's thesis work.
Maintaining Good Standing
Students must maintain good standing throughout their studies: this involves sustaining a grade-point average of at least 3.0 (B) each semester, and the successful completion of at least 66% (2/3) of all courses attempted. Students falling below this standard will be placed on probation, and given until the following fall or spring semester to return to good standing, or face possible termination from the MS program. Please note that the MS degree must be completed within 5 years.
The M.S. Core Comprehensive Examination (Core Exam)
Core Exam : Students in the M.S. program in computer science must pass the Core Exam. This exam is based on four core courses: Fundamental Algorithms (G22.1170), Programming Languages (G22.2110), Compilers (G22.2130) and Operating Systems (G22.2250), plus the additional material described in the Core Exam homepage.
You need to thoroughly prepare for this exam. We suggest that you take Fundamental Algorithms, Programming Languages, Operating Systems and Compilers in preperation of the exam. Every student gets two chances to pass the Core Exam. A student who registers for and attends the exam will be considered to have used one of these two chances, even if he or she does not submit the exam. Cancellations of exam registration will be accepted until 5:00 pm the day before the exam. If the student fails both times, the student will be terminated from the program and will not receive the degree.