MS | Depth Requirements
Overview
The Master of Science degree in Computer Science indicates to prospective employers that you have studied a particular area in detail and thus have depth in a particular specialty. To satisfy the Depth requirement, students must complete 21 units of coursework in their chosen specialization area, satisfying the specific requirements of that specialization.
In most cases, a specialization consists of a set of required courses, a larger set of courses out of which you must select some subset, and a larger set from which you select additional courses to fill out the 21-unit requirement. For any pre-approved specialization, you should simply select the courses on the program sheet that you have or plan to take. All Depth courses must be taken for a letter grade, and each course must carry 3 or more units. When a specialization allows for independent study, a maximum of six units of CS 399 may be counted toward the depth requirement, and this requires advisor and administrator approval. If you are requesting to use 6 units of CS 399 in your depth area, your work in this course must be relevant to your MS CS specialization. Please include information about your project and its relevance to your specialization in the student note box on your program sheet in GIN.
Approved Specializations
- Artificial Intelligence
- Computational Biology
- Computer and Network Security
- Human-Computer Interaction
- Information Management and Analytics
- Software Theory
- Systems
- Theoretical Computer Science
- Visual Computing
Approved Depth Courses: You can find the current list of Depth courses for each specialization on the MS program sheets or in the Stanford Bulletin in the appropriate Subplot section.
Coterm students: If you took any of these depth courses and are using the course for your undergraduate degree requirements, you have satisfied the corresponding MS CS requirement, but you can apply 0 units from the course towards your MS CS program sheet. On the online program sheet, check off the course to indicate that you took the course. In the Course List, overwrite the number of units to 0. This indicates that you have satisfied the Depth requirement, but 0 units apply towards your MS program sheet. You must still take 21 units of Depth coursework that appear on your graduate transcript.
If you took any of these depth courses and are not using them for your undergraduate degree requirements, you can move the course to your graduate transcript by submitting the Coterm Course Transfer eForm on Axess. This will allow you to use the units on your MS CS program sheet. You can transfer any course that you took during your sophomore year or later.
Deviations: Program sheets are the result of considerable deliberation and judgement by faculty in the specialization area about what it means to have a Stanford CS MS degree in that area. Exceptions are an attempt to circumvent this judgement, and are therefore rare. The good news is that the program already has a lot of flexibility, and getting creative within the limits, or taking a little longer to graduate, can usually satisfy your personal goals.
Depth deviations are no longer advisor approved. You must fill out a MSCS Petitions Form to the MSCS director. Please include your request and justification. Petitions will only be approved in exceptional circumstances such as unforeseeable change in course availability. The department is generally not willing to support major changes in the Depth requirements unless there are compelling reasons to do so.