Master of Science in Computer Science

This is an archived copy of the 2016-2017 catalog. To access the most recent version of the catalog, please visit

The purpose of this program is to prepare students for the Ph.D. program and/or a research/development career in the industry in the field of computer science. Students have the option to pursue thesis research or project under the guidance of a faculty adviser.

Admission requirements include:

  • Bachelor’s degree from an accredited university with a minimum cumulative GPA of at least 3.0/4.0.
  • Minimum GRE scores: 298 (combined quantitative and verbal) and 3.0 (analytical writing). 
  • For applicants with degrees from schools where the primary language of instruction was not English, a minimum score of 70 on the internet-based TOEFL or 523 on the paper-based TOEFL, 47 on the PTE, or 5.5 on the IELTS exam is required for admission consideration.

Program Requirements

All programs require a core curriculum of 12 credit hours and 20 credit hours of elective courses, which may include a thesis or project. The plan of study must consist of at least 32 credit hours, at least 20 of which must be 500-level computer science courses. Up to 6 credit hours of accelerated courses may be applied to the degree. Master of Science in Computer Science students are not allowed to apply CSP courses towards their degree.

A student may choose from three options to complete the degree:

Option 1

Master’s thesis: Coursework and up to 5 credit hours of CS 591 for a total of 32 credit hours. The result is a master’s thesis.

Option 2

Master’s project: coursework and up to 5 credit hours of CS 597 for a total of 32 credit hours. The result is a project that results in one of the following:

  1. A high-quality paper submitted for publication as an article or as a technical report.
  2. A high-quality piece of software. The software should be of distribution quality, but can be proprietary.

Option 3

32 credit hours of coursework. A student must complete 32 credit hours of regular coursework including electives and core courses with a GPA of 3.0/4.0 or better.

Students are required to take courses in three core areas: programming, systems, and theory. The student is required to take at least one course from the programming area, at least one course from the systems area, and at least two courses from the theory area. The list below contains the core course offerings in the M.S. program:

Programming Core Courses (3)
Select a minimum of one course from the following:3
Topics in Computer Graphics3
Computer Vision3
Advanced Database Organization3
Syntactic Analysis of Programming Languages3
Topics in Compiler Construction3
Parallel and Distributed Processing3
Operating System Design and Implementation3
Cloud Computing3
Systems Core Courses (3)
Select a minimum of one course from the following:3
Computer Networks I: Fundamentals3
Computer Networks II: Network Services3
Wireless Networking3
Advanced Operating Systems3
Analytic Models and Simulation of Computer Systems3
Advanced Computer Architecture3
Software Systems Architectures3
Theory Core Courses (6)
Select a minimum of two courses from the following:6
Theory of Computation3
Computational Geometry3
Design and Analysis of Algorithms3
Science of Programming3
Combinatorial Optimization3
Game Theory: Algorithms and Applications3
General Electives (15-20)
Select 15-20 credit hours15-20
Thesis Research (0-5)
CS 591Research and Thesis of Masters Degree 10-5
Master's Project (0-6)
CS 597Reading and Special Problems 10-6

Minimum degree credits required: 32 


Up to 6 credit hours of CS 597 may be taken for credit toward the Master of Science in Computer Science degree. Up to 5 credit hours of CS 591 may be taken for credit towards the Master of Science in Computer Science degree. With adviser approval, up to 3 additional credit hours of CS 591 may be added to the degree plan. Students working on a thesis may take a maximum combined total of 8 credit hours of CS 591 and CS 597. For CS 591 hours to count toward a degree, a student must successfully defend a thesis.