Virginia Tech® home

Graduate Courses

Female sitting at a computer in a classroom lecture setting.

Below is the list of graduate-level CS courses. Each eligible course is assigned to an "Area", where areas are part of the breadth requirements for some CS degrees and for the PhD Qualifiers. There are currently 11 areas, numbered from 0 through 10. (Historically, these numbers came from an attempt to use the second digit of the course number to indicate topic, but that concept broke down years ago.) None of these areas should be considered to be more or less priviliged than any other (though due to Grad School requirements on graduate degrees, we do require all students entering during or after 2019 to take a course from Area 0).

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

A listing of current CS Advanced Topics and Special Study Graduate Courses can be found here.

In addition to the courses listed below, graduate students may also take a limited number of the 4000-level courses listed here.

The list of approved cognate courses is available here.

Be aware that some courses are simliar to each other, and we will not permit you to count both for credit toward the same degree. See the course overlap table here.

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
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
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