Tracks - Related Courses in Computer Science
The computer science degree is comprised of required courses and electives. The overall
degree provides a broad understanding of the topics and theory of computer
science. Students who wish to pursue a sub-area of CS more deeply are encouraged to
take several classes from a "track". Completion of the required number of courses
entitles a student to a track certificate upon graduation.
Software Development (Choose 5)
- CS 3470 - Scripting Language and Implementation Design
- CS 3540 - Human/Computer Interaction
- CS 4230 - Parallel Programming
- CS 4470 - Compiler Principles and Techniques
- CS 4480 - Computer Networks
- CS 4540 - Web Software Architecture
- CS 5140 - Data Mining
- CS 5460 - Operating Systems
- CS 5530 - Database Systems
- CS 5785 - Advanced Embedded Software
Web/Mobile Development (Choose 4)
- CS 3470 - Scripting Language and Implementation Design
- CS 3540 - Human/Computer Interaction
- CS 4480 - Computer Networks
- CS 4530 - Mobile Application Programming
- CS 4540 - Web Software Architecture
- CS 5530 - Database Systems
Computer Systems (Choose 4)
- CS 4230 - Parallel Programming
- CS 4440 - Introduction To Computer Security
- CS 4470 - Compiler Principles and Techniques
- CS 4480 - Computer Networks
- CS 5460 - Operating Systems
- CS 5490 - Network Security
- CS 5530 - Database Systems
Programming Languages (Choose 3)
- CS 3470 - Scripting Language and Implementation Design
- CS 3520 - Programming Language Concepts
- CS 4470 - Compiler Principles and Techniques
- CS 5100 - Theory of Computation
Robotics (Choose 3)
- CS 4300 - Artificial Intelligence
- CS 5310 - Robotics
- CS 5350 - Machine Learning
- CS 5320 - Computer Vision
- CS 6330 - Introduction to Robot Control
- CS 6370 - Motion Planning
Artificial Intelligence (Choose 4)
- CS 4300 - Artificial Intelligence
- CS 4640 - Image Processing Basics
- CS 5100 - Theory of Computation
- CS 5130 - Computational Statistics
- CS 5140 - Data Mining
- CS 5320 - Computer Vision
- CS 5340 - Natural Language Processing
- CS 5350 - Machine Learning
Information (Choose 4)
- CS 4300 - Artificial Intelligence
- CS 5140 - Data Mining
- CS 5150 - Advanced Algorithms
- CS 5340 - Natural Language Processing
- CS 5350 - Machine Learning
- CS 5530 - Database Systems
- CS 5630 - Visualization for Data Science
Theory (Choose 4)
- CS 3100 - Models of Computation
- CS 5100 - Theory of Computation
- CS 5130 - Computational Statistics
- CS 5140 - Data Mining
- CS 5150 - Advanced Algorithms
- CS 5350 - Machine Learning
Visual Computing (Choose 4)
- CS 3200 - Introduction to Scientific Computing and Data Computing
- CS 4600 - Introduction to Computer Graphics
- CS 4640 - Image Processing Basics
- CS 5320 - Computer Vision
- CS 5350 - Machine Learning
- CS 5610 - Interactive Comp Graphics
- CS 5630 - Visualization for Data Science
- CS 5650 - Perception for Graphics
Computer Organization (Choose 4)
- CS 3700 - Foundations of Digital System Design
- CS 3710 - Computer Design Laboratory
- CS 5460 - Operating Systems
- CS 5710 - Digital VLSI Design
- CS 5830 - VLSI Architecture
Embedded Systems (Choose 4)
- CS 3710 - Computer Design Laboratory
- CS 4470 - Compiler Principles and Techniques
- CS 4480 - Computer Networks
- CS 5780 - Embedded System Design
- CS 5785 - Advanced Embedded Software
- CS 5789 - Embedded Systems and Kinetic Art
CAD for Digital Systems (Choose 4)
- CS 5710 - Digital VLSI Design
- CS 5740 - Computer-Aidied Design of Digital Circuits
- CS 5745 - Testing and Verification of Digital Circuits
- CS 5750 - Synthesis and Verification of Asynchronous VLSI Systems
- CS 5830 - VLSI Architecture
Note: 6000-level courses require instructor consent.