The  MS in Computer Science prepares students for research and professional practice in computer science and related technologies. The program includes both fundamentals and advanced work in the areas of artificial intelligence and databases, programming languages and software engineering, systems and networks, theoretical computer science, and visual computing.

Degree Requirements

Students are required to complete 30 credits corresponding to 10 graduate courses. Courses are divided into basic courses, which have no graduate course prerequisites, and advanced courses, which have graduate courses as prerequisites. Students are encouraged to download the course planner spreadsheet, and update it as they proceed through the program.

To ensure that students have uniform preparation for the core courses, all students are required to take CS 530 Mathematical Foundations of Computer Science and CS 531 Computer Systems and Fundamentals of Systems Programming as early as possible, preferably their first two courses in the program. Students with a strong academic background in computer science may have CS 530 and CS 531 substituted for other elective courses at the discretion of the program director. Students enrolled in PhD CS or the Bachelor's-Accelerated Master's program cannot take these courses for credit. Students also have the opportunity to indicate that they have the requisite knowledge corresponding to CS 530 and CS 531 by passing an exam. The exams are given before classes begin in January and August, and can only be taken once. Students failing either one of the exams must take the equivalent course in their first semester. Students who successfully test out of CS 530 and CS 531 will be required to fulfill the credit requirement with other coursework chosen under advisement.

Courses are grouped in the following five broad areas:

  • Artificial Intelligence and Databases
  • Programming Languages and Software Engineering
  • Systems and Networks
  • Theoretical Computer Science
  • Visual Computing

All the following requirements should be satisfied for the MS in CS degree:

  • CS 583 - Analysis of Algorithms (from the Theoretical Computer Science area) and two additional core courses from two other areas must be successfully completed with a grade of B- or better.
  • At least four courses (12 credits) must be chosen from the advanced courses in the list of preapproved courses from at least two different areas.
  • At least six courses, including two advanced courses, must be designated CS.
  • At least eight courses must be taken from the list of preapproved courses. Up to two computer science-related courses that are not on the list of preapproved courses may be taken with the approval of the program director.

Concentration

MS CS degree students have the option to declare a concentration in one of two areas:

Project or Thesis (optional)

Three to six credit hours of the advanced classes may be replaced by a project or thesis. The project or thesis must be guided and approved by a committee of three appropriate faculty members and presented at an appropriate forum. The thesis must meet relevant university requirements.

Additional Information

For additional information on the degree requirements of the MS in CS:

  • The MS CS section of the Mason Catalog is the official source for the degree requirements of the program.
  • These slides from the orientation for new MS students provide an overview of the program, as well as additional useful information.

Academic Advising

Before the end of the first semester, students must have a plan of study approved by their academic advisor. This plan should be kept up to date by regular consultation with the academic advisor.

Plan of Study forms for all the MS degrees offered by the CS department are available at this web page.

For more information, please see the academic advising pages and the FAQ for Masters students.