Virginia Tech® home

Graduate Courses

Female sitting at a computer in a classroom lecture setting.

 

Anticipated graduate course offerings for the next two academic years are available here.

Advanced Topics and Special Study Courses

Advanced topics and special study courses explore subjects of unique interest that are not part of the regular curriculum. These courses vary by semester and are sometimes used to address emerging issues within a field or to gauge interest in potential new areas of study. For more information, please visit the Advanced Topics and Special Study Courses page.

Approved Cognate Course

Cognate courses are designated graduate-level courses from departments outside of Computer Science. Students can view the list of Approved Cognate Courses for more information.

  • Ph.D. students are required to complete 3 to 9 credit hours of cognate coursework 
  • M.S. students may take up to 3 credit hours of cognate coursework, though it is not mandatory 
  • A cognate course must not significantly overlap with the content of any other course on a student’s Plan of Study.

CS Courses by Area of Breadth

The "area of breadth" in the Computer Science program is designed to ensure that students develop a well-rounded foundation across various fields within computer science. For both Master's and Ph.D. students, this breadth requirement involves taking advanced CS courses at the 5000 and 6000 levels across four different areas of study

This approach encourages graduates to possess not only deep knowledge in their chosen focus but also a broad understanding that is essential for addressing diverse challenges in computer science. It reflects VT's commitment to producing adaptable and proficient professionals capable of tackling interdisciplinary problems in both academic and industry settings.

There are 11 different Areas of Breadth (0-10).

  • Area 0: Ethics and Research Methods 
    •  Students entering in 2019 or after are required to take a course in Area 0
  • Area 1: Algorithms and Theory
  • Area 2: Computer Systems
  • Area 3: Programming Languages
  • Area 4: Numerical and Scientific Computing
  • Area 5: Computer Architecture and Networking
  • Area 6: Data and Information
  • Area 7: Software Engineering
  • Area 8: Human-Computer Interaction
  • Area 9: Intelligent Systems
  • Area 10: Computational Biology and Bioinformatics
Course Overlap

Be aware that some computer science courses are simliar to each other and you cannot receive credit for courses with too much overlap. Visit the Course Overlap table for more information.

Course ID Course Name
Area

CS5014

Research Methods in Computer Science

Area 0: Ethics and Research Methods. Not for MEng credit. 

CS5020

Software Design and Data Structures

Not for CS graduate credit

CS5024

Ethics and Professionalism in Computer Science

Area 0: Ethics and Research Methods

CS5040

Intermediate Data Structures and Algorithm Analysis

Not for CS-MS or CS-PhD credit. You may not receive credit for CS5040 if you already have credit for CS3114.

CS5044

Object-Oriented Programming with Java

Not for CS graduate credit

CS5045-6

Computation for the Data Sciences

Not for CS graduate credit

CS5104

Computability and Formal Languages

Area 1: Algorithms and Theory

CS5114

Theory of Algorithms

Area 1: Algorithms and Theory

CS5124

Algorithms in Bioinformatics

Area 10: Computational Biology and Bioinformatics

CS5134

Introduction to Quantum Computer Science

Area 1: Algorithms and Theory

CS5204

Operating Systems

Area 2: Computer Systems

CS5214

Modeling and Evaluation of Computer Systems

Area 2: Computer Systems

CS5234

Advanced Parallel Computation

Area 2: Computer Systems

CS5244

Web Application Development

Area 7: Software Engineering

CS5254

Mobile Application Development

Area 7: Software Engineering

CS5264

Advanced Linux Kernal Programming

Area 2: Computer Systems

CS5304

Translator Design and Construction

Area 3: Programming Languages

CS5314

Programming Languages

Area 3: Programming Languages

CS5424

Computational Cell Biology (BIOL, GBCB)

Area 10: Computational Biology and Bioinformatics

CS5474

Finite Difference Methods for Partial Differential Equations (MATH)

Area 4: Numerical and Scientific Computing

CS5484

Finite Element Methods for Partial Differential Equations (MATH)

Area 4: Numerical and Scientific Computing

CS5485

Numerical Analysis and Software (MATH)

Area 4: Numerical and Scientific Computing

CS5486

Numerical Analysis and Software (MATH)

Area 4: Numerical and Scientific Computing

CS5504

Computer Architecture (ECE)

Area 5: Computer Architecture and Networking

CS5510

Multiprocessor Programming (ECE)

Area 5: Computer Architecture and Networking

CS5525

Data Analytics I (STAT)
This course is being deprecated for CS students effective SU 23. CS students shoudl take CS 5805.

Area 6: Data and Information.

CS5526

Data Analytics II (STAT)

Area 6: Data and Information

CS5544

Compiler Optimizations (ECE)

Area 3: Programming Languages

CS5560

Fundamentals of Information Security (ECE)

Area 5: Computer Architecture and Networking

CS5565

Network Architecture and Protocols (ECE)

Area 5: Computer Architecture and Networking

CS5566

Network Architecture and Protocols (ECE)

Area 5: Computer Architecture and Networking

CS5580

Cryptographic Engineering (ECE)

Area 5: Computer Architecture and Networking

CS5584

Network Security (ECE)

Area 5: Computer Architecture and Networking

CS5590

System and Software Security (ECE)

Area 5: Computer Architecture and Networking

CS5594

Blockchain Technologies

Area 6: Data and Information

CS5604

Information Storage and Retrieval

Area 6: Data and Information

CS5614

Database Management Systems

Area 6: Data and Information

CS5624

Natural Language Processing

Area 6: Data and Information

CS5644

Machine Learning with Big Data

Not for CS-MS or CS-PhD credit. May be taken for CS-MEng credit.

CS5664

Social Media Analytics

Area 6: Data and Information

CS5704

Software Engineering

Area 7: Software Engineering

CS5740

AI Tools for Software Engineering

Area 7: Software Engineering

CS5714

Usability Engineering (ISE)

Area 8: Human-Computer Interaction

CS5724

Models and Theories of Human-computer Interaction

Area 8: Human-Computer Interaction

CS5734

Social Computing and Computer-supported Cooperative Work

Area 8: Human-Computer Interaction

CS5744

Software Design and Quality

Area 7: Software Engineering

CS5754

Virtual Environments

Area 8: Human-Computer Interaction

CS5764

Information Visualization

Area 8: Human-Computer Interaction

CS5774

User Interface Software

Area 8: Human-Computer Interaction

CS5784

Software Project Management

Area 7: Software Engineering

CS5804

Introduction to Artificial Intelligence

Area 9: Intelligent Systems

CS5805

Machine Learning

Area 9: Intelligent Systems

CS5806

Machine Learning

Area 9: Intelligent Systems

CS5814

Introduction to Deep Learning

Area 9: Intelligent Systems. Students may not get credit for both CS5814 and ECE/CS6524.

CS5824

Advanced Machine Learning (ECE)
Discontinued effective SU 23, replaced with CS 5806.

Area 9: Intelligent Systems.

CS5834

Introduction to Urban Computing

Area 9: Intelligent Systems

CS5844

Human-Robot Interaction (ME)

Area 8: Human-Computer Interaction

CS5854

Computational Systems Biology

Area 10: Computational Biology and Bioinformatics

CS5864

Learning-based Computer Vision

Area 9: Intelligent Systems

CS5904

Project and Report

Does not count toward area requirements.

CS5914

Emerging Topics in Computer Science

Determine area for each offering

CS5934

Capstone Project

Does not count toward area requirements. Intended for MEng program only.

CS5944

Graduate Seminar

Does not count toward area requirements

CS5974

Independent Study

Does not count toward area requirements

CS5984

Special Study

Determine area for each offering

CS6104

Advanced Topics in Theory of Computation

Area 1: Algorithms and Theory

CS6204

Advanced Topics in Systems

Area 2: Computer Systems

CS6304 

Advanced Topics in Languages and Translation

Area 3: Programming Languages

CS6404 

Advanced Topics in Mathematical Software

Area 4: Numerical and Scientific Computing

CS6444

Verification and Validation in Scientific Computing (ME, AOE)

Area 4: Numerical and Scientific Computing

CS6504 

Advanced Topics in Computer Architecture

Area 5: Computer Architecture and Networking

CS6524

Deep Learning (ECE)
Discontinued effective SU 23; should take CS 5814 instead.


Area 9: Intelligent Systems. Students may not get credit for both CS5814 and ECE/CS6524. Does not satisfy departmental requirement for taking 6000-level courses.

CS6564 

Multimedia Networking (ECE)

Area 5: Computer Architecture and Networking

CS6570 

Advanced Foundations of Networking

Area 5: Computer Architecture and Networking

CS6604 

Advanced Topics in Data and Information

Area 6: Data and Information

CS6704 

Advanced Topics in Software Engineering

Area 7: Software Engineering

CS6724 

Advanced Topics in Human-computer Interaction

Area 8: Human-Computer Interaction

CS6804 

Advanced Topics in Intelligent Systems

Area 9: Intelligent Systems

CS6814

Science-Guided Machine Learning

Area 9: Intelligent Systems

CS6824

 Adv Topics Comp Biol & Bioinf

Area 10: Computational Biology and Bioinformatics