Students accepted into this selective program accomplish both the B.S. and M.S. degrees within five years by taking additional graduate courses within the first four years of the program. Up to two of these courses will count as open electives in the B.S. program and as didactic course work in the M.S. program.

Program mission

The program is designed to develop skills and educate CS students to be major contributors in the computing industry. The graduate program in computer science provides state-of-the-art education through the use of didactic courses to those students who wish to further their knowledge and careers within the computing industry. The program emphasizes continuing self-development and broadening of the knowledge of individuals currently engaged in science, technology and engineering-related fields. It also prepares persons who have completed undergraduate majors in these fields for entry into a career in the numerous areas that use computing technology. Both the theoretical and applied aspects of computer science are emphasized in this program.

Program goals

  1. Advanced software design skills: To produce graduates who possess the necessary advanced analytical and technical skills in computer science – responds directly to the higher goal of fulfilling the needs of industry, academe and research laboratories for effective, productive engineers, professors and researchers
  2. Advanced problem-solving skills: To produce graduates who demonstrate creativity and innovation in solving technological problems – stems from the realization that new knowledge and new solutions to existing problems are necessary to meet the needs of our changing society and to advance the quality of human life

Student learning outcomes

  1. Computer science theory and concepts: Graduates will demonstrate a solid understanding of the advanced theory and concepts underlying computer science.
  2. System design and implementation: Graduates will demonstrate the ability, knowledge and technical skills to design and implement a computer-based system, process, component or program.
  3. Applications of computer science in multiple domains: Graduates will demonstrate the ability to use the knowledge of computer science in order to solve problems in other domains.

VCU Graduate Bulletin, VCU Graduate School and general academic policies and regulations for all graduate students in all graduate programs

The VCU Graduate Bulletin website documents the official admission and academic rules and regulations that govern graduate education for all graduate programs at the university. These policies are established by the graduate faculty of the university through their elected representatives to the University Graduate Council.

It is the responsibility of all graduate students, both on- and off-campus, to be familiar with the VCU Graduate Bulletin as well as the Graduate School website and academic regulations in individual school and department publications and on program websites. However, in all cases, the official policies and procedures of the University Graduate Council, as published on the VCU Graduate Bulletin and Graduate School websites, take precedence over individual program policies and guidelines.

Visit the academic regulations section for additional information on academic regulations for graduate students.

Degree candidacy requirements

A graduate student admitted to a program or concentration requiring a final research project, work of art, thesis or dissertation, must qualify for continuing master’s or doctoral status according to the degree candidacy requirements of the student’s graduate program. Admission to degree candidacy, if applicable, is a formal statement by the graduate student’s faculty regarding the student’s academic achievements and the student’s readiness to proceed to the final research phase of the degree program.

Graduate students and program directors should refer to the following degree candidacy policy as published in the VCU Graduate Bulletin for complete information and instructions.

Visit the academic regulations section for additional information on degree candidacy requirements.

Graduation requirements

As graduate students approach the end of their academic programs and the final semester of matriculation, they must make formal application to graduate. No degrees will be conferred until the application to graduate has been finalized.

Graduate students and program directors should refer to the following graduation requirements as published in the Graduate Bulletin for a complete list of instructions and a graduation checklist.

Visit the academic regulations section for additional information on graduation requirements.

Other information

Student handbook is available on the College of Engineering website.

Apply online at

Admission requirements

Degree: Semester(s) of entry: Deadline dates: Test requirements:
M.S. Fall (preferred) Jun 1 (Feb 15 for financial assistance) GPA (see below)
Spring Nov 1 TOEFL required for international students

Students are selected from those already enrolled in B.S. in Computer Science program at VCU.

In addition to the general admission requirements of the VCU Graduate School, the following requirements represent the minimum acceptable standards for admission:

In order to be accepted students must:

  1. Apply to the computer science graduate committee during the first semester after they have completed the last of the following sequence of classes:

    Course Title Hours
    CMSC 255Introduction to Programming4
    CMSC 256Data Structures and Object Oriented Programming4
    CMSC 257Computer Systems4
    CMSC 302Introduction to Discrete Structures3
    CMSC 303Introduction to the Theory of Computation3
    CMSC 311Computer Organization3

    Transfer students who enter with all of these courses (or equivalents) must apply during their first semester at VCU.

  2. Have a minimum GPA of 3.4 based on CMSC 255, CMSC 256, CMSC 257, CMSC 302, CMSC 303 and CMSC 311; all grades in any repeated courses will be included in computing this GPA. Students transferring these courses into the program will have the grades from their previous institution included in computing this GPA only for purposes of determining eligibility for this program.

  3. Have a minimum overall GPA of 3.0.

In the last semester before graduating with the B.S. degree, the student will formally apply to the master’s program. Providing the student has maintained a minimum GPA of 3.2 in the major, acceptance to the M.S. program is guaranteed. Accepted students are not required to complete the GRE for admission to the M.S. portion of the program.

Degree requirements

In addition to the VCU Graduate School graduation requirements, students must complete a minimum of 30 credit hours at the graduate level to graduate with the M.S. degree. Students must also complete the requirements for the B.S. degree in Computer Science.

Students accepted into this selective program accomplish both the B.S. and M.S. degrees within five years by taking additional graduate courses within the first four years of the program. Up to six credit hours will count as open electives in the B.S. program and as didactic course work in the M.S. program.

A student may choose either a thesis or non-thesis M.S. degree program. The thesis option is suggested for students who have a strong research interest or those who wish to pursue a Ph.D.

Curriculum requirements

Students accepted into the B.S.-M.S. program are allowed to transfer up to 12 graduate-level credits into the M.S. program, including up to six credit hours that were counted as open electives toward requirements for the B.S. degree.

After meeting all requirements for the B.S. degree, students in the program are eligible to take 600-level courses.

Apart from the exceptions above, all regulations outlined in the B.S. in Computer Science and M.S. in Computer Science bulletins apply toward the respective degrees.

Typical program of study

Before graduating with the B.S. degree, students in the program are expected to:

  • Take six graduate-level didactic credits that will count as open electives toward their B.S. degree (that is, toward the requirements on total number of credits, upper-level credits and toward graduation GPA, but not as the required three CMSC technical electives) and as didactic credits toward their M.S. degree.
  • Take an additional six graduate-level didactic credit hours that will count toward their M.S. degree but not toward the B.S. degree. In particular, these cannot be used to satisfy the total and upper-level credit requirements in the B.S. degree nor in calculating the B.S. graduation GPA.

Students cannot count more than six credit hours of non-CMSC courses toward the M.S. degree. Any non-CMSC graduate credits require approval of the graduate committee.

The typical full program of study in the accelerated B.S.-M.S. program is as follows:

Years 1-3

  • Regular undergraduate program course work

Year 3

  • Application to the accelerated B.S.-M.S. program

Year 4

  • Remaining regular undergraduate program course work
  • Six credit hours of CMSC 500-level courses, counted toward B.S. and M.S.
  • Six credit hours of CMSC 500-level courses, counted toward M.S. only
  • Application to the M.S. program

Year 5

Regular graduate program course work: 18 credits of CMCS 500-level and 600-level courses, counted toward M.S. only

Students must complete at least 50 percent of their graduate-level didactic credits at the 600-level for the M.S. degree; additional restrictions apply based on thesis and non-thesis study options asspecified in the M.S. in Computer Science bulletin.

Graduate program director
Tom Arodz, Ph.D.
Assistant professor
(804) 827-3989

Additional contact
Krzysztof J. Cios, Ph.D.
Professor and chair, Department of Computer Science
(804) 828-9671

Program website: