Students must demonstrate breadth of knowledge in computer science by obtaining superior grades in four graduate courses, including CS 583 Analysis of Algorithms. Collectively the four courses must span at least three of the following eight areas: Theoretical Computer Science, Systems and Networks, Security, Programming Languages, Software Engineering, Artificial Intelligence, Databases, and Visual Computing.

The grades obtained in the four selected courses must meet the following requirements:

  • Students must obtain an A- or better grade in at least three of the four courses
  • In the fourth course, students must obtain a grade of B or better.  

A list of courses that can be used to satisfy the breadth requirement is maintained by the CS department.

A course that is used to satisfy the breadth requirement may be repeated at most once (the grade received in the last attempt is considered when evaluating the breadth requirement).

To satisfy the breadth requirement, a student can use the grades (s)he received in the past,  provided that at most five years elapsed since the course was taken. The course must have been taken at GMU. Exceptions to this rule are rare and require filing a petition with supplementary documents to the Computer Science department.

An alternative way to satisfy the breadth requirement is to pass the written qualifying exams. The exams are offered once every semester (usually two weeks before the semester begins). Note that students adhering to the degree requirements specified in older catalogs (prior to 2018-19) can only satisfy the breadth requirement by passing the qualifying exams. 

To qualify, each student must pass exams in four areas, one of which is Foundations of Computer Science. The other three areas are chosen from these eight areas: computer systems, networks, compilers and languages, software construction, software testing, artificial intelligence, database systems, and information security.

The four exams must be attempted in the same semester, and a failed exam may be retaken once only, in the next semester. A student who fails to pass the four exams in two consecutive semesters is deemed to have failed to satisfy the breadth requirement, and is subject to termination.

If the student takes one or more written qualifying exams, the breadth requirement can only be satisfied by passing the qualifying exams (the criterion based on the course performance cannot apply).

Students must submit a completed Breadth Requirement Form to the CS department once they have satisfied the breadth requirement either through coursework or by passing the written qualifying exams.

Spring 2020 Update:

Due to the COVID-19 emergency, the Computer Science department made the following decisions regarding the deadline to complete the breadth requirement for PhD CS students:

  1. All students subject to the new (Fall 2018 and onwards) PhD CS degree requirements have to complete the breadth requirement within the first 24 credits.  Given the COVID-19 emergency and the unexpected switch to the virtual instruction, this deadline is extended to the end of the first (Fall or Spring) semester that follows the semester in which the  student completes 24 credits in the program. In other words, all current PhD CS students (who started in or before Spring 2020) are given one extra semester to complete the breadth requirement

  1. The students who choose to satisfy the breadth requirement by taking courses have to receive (at least) 3 A- and 1 B, according to the catalog. We will consider both B- and (the new) XS grades obtained in Spring 2020 as equivalent to B in the breadth requirement evaluation. Note that this arrangement is only for the grades received in Spring 2020; it doesn't apply to other (past or future) semesters