Requirements for the M.S. Degree
(applicable to students registered in Fall 2010 and onwards)

Back to the M.S. Program

Students in the M.S. degree program choose between three options:

  •  Basic Project Option
    In this option, the students receive a broad coverage of Computer Science with at least one project-oriented coursework. The student must take 3 credits of CSE 522 (Basic Project in Computer Science) as a part of his/her graduation requirement.

  •  Advanced Project Option
    In this option, the student undertakes a more involved, two-semester long project under the guidance of a faculty advisor. The student must take 3+3 credits of the two-semester long sequence of CSE 523/524 (Advanced Project in Computer Science I and II) as a part of his/her graduation requirement. Refer to Section 5.4 of Fall 2010 Graduate Program Handbook for more information.

  •  Thesis Option
    In this option, the student performs a research project under the guidance of a faculty advisor (usually 2–3 semester long), and writes a dissertation. The student must take 6–9 credits of CSE 599 (M.S. Thesis) as a part of their graduation requirement.

Regardless of the chosen option, the students are required to complete a minimum of 31 graduate credits in the Computer Science Department. However, the actual course requirements depend somewhat on the option chosen. Generally speaking, Advanced Project and Thesis Options provide more flexibility for course choices as the student may have to do a variety of different courses related to their project or thesis topics. The departmental web site has the updated list of graduate courses being offered to help students plan ahead.

The required 31 credits must satisfy the following requirements.

  1.   Breadth Requirement
    All students must satisfy the M.S. breadth requirement regardless of the chosen option. The requirement is that the student must take at least one course in each of the following four areas.
    1. Theory
          CSE 540: Theory of Computation
          CSE 548: Algorithms
          CSE 541: Logic
    2. Systems
          CSE 502: Architecture
          CSE 506: Operating Systems
          CSE 533: Network Programming
          CSE 534: Network Fundamentals
    3. Software I
          CSE 504: Compilers
          CSE 526: Programming Languages
          CSE 532: Databases
          CSE 537: Artificial Intelligence
    4. Software II
          CSE 508: Network Security
          CSE 509: System Security
          CSE 528: Graphics

    For the purpose of satisfying the M.S. breadth requirement, CSE 522 (Basic Project in Computer Science) will be treated as equivalent to the actual course the student attends. For example, if the student attends CSE 506 (Operating Systems) using the CSE 522 course designator, the student will be considered to have satisfied the breadth requirement in the Systems area. See more about CSE 522 in Section 5.3. of fall 2010 handbook

  2. M.S. Project or Thesis (3, 6, or 9 credits).
    This requirement depends on the chosen option. This requirement can be satisfied by taking 3 credits of CSE 522 (Basic Project Option), 6 credits of the CSE 523/524 course sequence (Advanced Project Option), or 6–9 credits of CSE 599 (Thesis Option).

  3. Computer Science Graduate Courses.
    The remaining credits can be satisfied by taking Computer Science graduate courses at the CSE 500 and CSE 600 levels with the following restrictions. Note that all restrictions must be satisfied.
    • At most 2 credits can be counted from all credits accumulated in the following courses: CSE 593 (Independent Study), CSE 698 (Practicum in Teaching), CSE 596 (Internship in Research), 1-credit Seminar courses (CSE 640–661, but not CSE 600) and Special Topics courses.
    • Advanced Topics courses such as CSE 590/591/592/594/595 and CSE 690-692 can count at most 6 credits overall (i.e., up to 2 such courses).
    • There are further restrictions for the students in the Basic Project Option. For these students, Advanced Topics courses such as CSE 590/591/592/594/595 and any course in the CSE 600 level can count at most 6 credits overall (i.e., up to 2 such courses).
    • CSE 587 can be used. But specific restrictions apply. More about this in Section 4.2. of fall 2010 handbook
    • No credits are counted for the CSE 600 Seminar course.
    • No credits are counted for courses specifically meant for Ph.D students (such as CSE 696, CSE 699).
    • Generally speaking, the student in one option cannot use project or thesis courses meant for another option for graduation credits. In other words, use of the courses such as CSE 522,523/524 and 599 are option specific. However, there is some flexibility. More about this in Section 5.6. of fall 2010 handbook

    Relevant graduate courses in other departments can be used towards the 31 credits, but if only approved by the Graduate Program Director. To this end, the student must argue the case for taking a particular course by submitting a petition (e.g., arguing that such a course is needed for the student’s project/thesis), which must also be endorsed by the student’s project or thesis advisor. This is only applicable for students in the Advanced Project or Thesis Option. Students in the Basic Project Option cannot use any non-CSE course for graduation credits.

Department of Computer Science • Stony Brook University, Stony Brook, NY 11794-4400 • 631-632-8470 or 631-632-8471