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.