Bulletin Archive
This archived information is dated to the 2011-12 academic year only and may no longer be current.
For currently applicable policies and information, see the current Stanford Bulletin.
This archived information is dated to the 2011-12 academic year only and may no longer be current.
For currently applicable policies and information, see the current Stanford Bulletin.
In general, the M.S. degree in Computer Science is intended as a terminal professional degree and does not lead to the Ph.D. degree. Most students planning to obtain the Ph.D. degree should apply directly for admission to the Ph.D. program. Some students, however, may wish to complete the master's program before deciding whether to pursue the Ph.D. To give such students a greater opportunity to become familiar with research, the department has instituted a program leading to a master's degree with distinction in research. This program is described in more detail below.
AdmissionApplications to the M.S. program and all supporting documents must be submitted and received online by the published deadline. Information on admission requirements and deadlines is available at http://cs.stanford.edu/admissions/. Exceptions are made for applicants who are already students at Stanford and are applying to the coterminal program. See https://cs.stanford.edu/wiki/admissions/Applying/Deadlines.
University requirements for the coterminal M.S. are described in the "Coterminal Bachelor's and Master's Degrees" section of this bulletin. For University coterminal degree program rules and University application forms, see http://studentaffairs.stanford.edu/registrar/publications#Coterm.
A candidate is required to complete a program of 45 units. At least 36 of these must be graded units, passed with a grade point average (GPA) of 3.0 (B) or better. The 45 units may include no more than 10 units of courses from those listed below in Requirement 1. Thus, students needing to take more than two of the courses listed in Requirement 1 actually complete more than 45 units of course work in the program. Only well-prepared students may expect to finish the program in one year; most students complete the program in six quarters. Students hoping to complete the program with 45 units should already have a substantial background in computer science, including course work or experience equivalent to all of Requirement 1 and some prior course work related to their specialization area.
Requirement 1: Foundations
Students must complete the following courses, or waive out of them by providing evidence to their advisers that similar or more advanced courses have been taken, either at Stanford or another institution:
Requirement 2: Significant Software Implementation
Students must complete at least one course designated as having a significant software implementation component. The list of such courses includes: CS 140, 143, 144, 145, 148, 210B, 221, 243, 248, 346.
Requirement 3: Specialization
Students may choose to satisfy this requirement through one of two options, Single Depth or Dual Depth, outlined following. All courses taken for this requirement must be taken for letter grades.
Specialization Areas
Ten approved specialization areas which may be used to satisfy Requirement 3 are listed following. Students may propose to the M.S. program committee other coherent programs that meet their goals and satisfy the basic requirements.
Courses marked with an asterisk (*) require consent of the faculty adviser. Courses marked with a double asterisk (**) may be waived by students with equivalent course work and with the approval of their adviser.
Artificial Intelligence Breadth CoursesCS 140, 143, 144 or EE 284, 145, 147, 148, 149, 154, 155, 157, 164, 240, 240E, 242, 243, 244, 244B, 244E, 249A, 255, 258, 259, 261, 268; CME 108, 302; EE 108B, 282.
Biocomputation Breadth CoursesCS 121 or 221, 124, 140, 143, 144 or EE 284, 145, 147, 148, 149, 154, 155, 157, 164, 205A, 222, 223A, 224M, 224N, 224S, 224U, 224W, 226, 227, 227B, 231A, 240, 240E, 242, 243, 244, 244B, 244E, 249A, 255, 258, 259, 276, 279; CME 108, 302; EE 108B, 282.
Computer and Network Security Breadth CoursesCS 121 or 221, 124, 143, 147, 148, 149, 154, 157, 164, 205A, 222, 223A, 224M, 224N, 224S, 224U, 224W, 226, 227, 227B, 228, 229, 231A, 242, 243, 249A, 258, 262, 268, 270, 273A, 274, 276, 279; CME 108, 302; EE 108B, 282.
Human-Computer Interaction Breadth CoursesCS 121 or 221, 140, 143, 144 or EE 284, 145, 149, 154, 155, 157, 164, 205A, 222, 223A, 224M, 224N, 224S, 224U, 224W, 226, 227, 227B, 228, 231A, 240,240E, 243, 244, 244E, 249A, 255, 258, 259, 261, 262, 268, 270, 273A, 274, 276, 279; CME 108, 302; EE 108B, 282.
Information Management and Analytics Breadth CoursesCS 121 or 221, 124, 140, 147, 148, 149, 154, 155, 157, 164, 205A, 222, 223A, 224M, 226, 227, 227B, 240E, 244E, 258, 259, 261, 268; CME 108, 302; EE 108B, 282.
Mobile and Internet Computing Breadth CoursesCS 121 or 221, 124, 143, 145, 148, 149, 154, 157, 164, 205A, 222, 223A, 224M, 224N, 224S, 224U, 226, 227, 227B, 228, 229, 231A, 240, 240E, 242, 243, 244B, 249A, 258, 259, 261, 262, 268, 270, 273A, 274, 276, 279; CME 108, 302; EE 108B, 282.
Real-World Computing Breadth CoursesCS 121, or 221, 124, 140, 143, 144 or EE 284, 145, 147, 149, 154, 155, 157, 164, 222, 224M, 224N, 224S, 224U, 224W, 227, 227B, 240, 240E, 242, 243, 244, 244B, 244E, 246, 255, 258, 259, 261, 276, 279; CME 108, 302; EE 108B, 282.
Software Theory Breadth CoursesCS 121 or 221, 124, 140, 147, 148, 149, 154, 155, 157, 164, 205A, 222, 223A, 224M, 224N, 224S, 224U, 224W, 226, 227, 227B, 228, 229, 231A, 240, 240E, 244B, 244E, 249A, 262, 270, 273A, 274, 276, 279; CME 108, 302; EE 108B, 282.
Systems Breadth CoursesCS 121 or 221, 124, 147, 154, 155, 157, 164, 205A, 222, 223A, 224M, 224N, 224S, 224U, 224W, 226, 227, 227B, 228, 229, 231A, 255, 258, 261, 268, 273A, 274, 279; CME 108, 302
Theoretical Computer Science Breadth CoursesCS 121 or 221, 124, 140, 143, 144 or EE 284, 145, 147, 148, 149, 154, 155, 157, 164, 205A, 222, 223A, 224M, 224N, 224S, 224U, 224W, 226, 227, 227B, 229, 231A, 240,240E, 242, 243, 244, 244B, 244E, 249A, 270, 273A, 274, 276, 279; CME 108, 302; EE 108B, 282.
* With consent of faculty adviser.
** Students with equivalent course work may waive with approval of their adviser.
Requirement 4
Additional elective units must be technical courses (numbered 100 or above) related to the degree program and approved by the adviser. All CS courses numbered above 110 (with the exception of CS 196 and 198) taken for 3 or more units are pre-approved as elective courses. Additionally, up to a maximum of 3 units of 500-level CS seminars, CS 300, EE 380, EE 385A, or other 1-2 unit seminars offered in the School of Engineering may be counted as electives. Elective courses may be taken on a satisfactory/no credit basis provided that a minimum of 36 graded units is presented within the 45-unit program.
A student who wishes to pursue the M.S. in CS with distinction in research must first identify a faculty adviser who agrees to supervise and support the research work. The research adviser must be a member of the Academic Council and must hold an appointment in Computer Science. The student and principal adviser must also identify another faculty member, who need not be in the Department of Computer Science, to serve as a secondary adviser and reader for the research report. In addition, the student must complete the following requirements beyond those for the regular M.S. in CS degree:
© Stanford University - Office of the Registrar. Archive of the Stanford Bulletin 2011-12. Terms of Use | Copyright Complaints