Previous track areas (prior to summer 2020)

The following track areas of study are the previous groupings of CS&E upper division elective courses. The track areas below have been grouped into 6 merged track areas as of summer 2020. No degree requirements have changed. These areas are simply meant to be a way for students to sort elective options by areas within the broad field of computer science. For questions, please work with your advisor.

Track summary

*In addition to these tracks, a custom track can be developed in close consultation with the computer science advisor.

Architecture & Hardware Systems

  • CSCI 4203 - Computer Architecture (4) Required Course for Track
  • CSCI 5204 - Advanced Computer Architecture (3) Required Course for Track
  • CSCI 4211 - Introduction to Computer Networks (3)
  • CSCI 5103 - Operating Systems (3)
  • CSCI 5161 - Introduction to Compilers (3)
  • CSCI 5451 - Introduction to Parallel Computing (3)
  • EE 4341 - Embedded System Design (4)

Artificial Intelligence/Robotics

  • CSCI 4511W - Introduction to Artificial Intelligence (4) Required Course for Track
  • CSCI 5512 - Artificial Intelligence II (3) Required Course for Track
  • CSCI 5521 - Introduction to Machine Learning (3)
  • CSCI 5523 - Introduction to Data Mining (3)
  • CSCI 5525 - Machine Learning (3)
  • CSCI 5551 - Introduction to Intelligent Robotic Systems (3)
  • CSCI 5552 - Sensing and Estimation in Robotics (3)
  • CSCI 5561 - Computer Vision (3)

Big Data

  • CSCI 4707 - Practice of Database Systems (3) Required Course for Track OR
  • CSCI 5105 - Introduction to Distributed Systems (3) Required Course for Track
  • CSCI 5521 - Introduction to Machine Learning (3) Required Course for Track OR
  • CSCI 5523 - Introduction to Data Mining (3) Required Course for Track
  • CSCI 4511W - Introduction to Artificial Intelligence (4)
  • CSCI 5451 - Introduction to Parallel Computing (3)
  • CSCI 5481 - Computational Techniques for Genomics (3)
  • CSCI 5512 - Artificial Intelligence II (3)
  • CSCI 5609 - Visualization (3)
  • INET 4061 - Introduction to Data Warehousing (3)
  • INET 4710 - Big Data Architecture (3)
  • MATH 5651 - Basic Theory of Probability and Statistics (4) OR STAT 5101 - Theory of Statistics I (4)

Bioinformatics & Computational Biology

  • CSCI 5461 - Functional Genomics, Systems Biology, and Bioinformatics (3) Required Course for Track
  • CSCI 5481 - Computational Techniques for Genomics (3) Required Course for Track
  • CSCI 4707 - Practice of Database Systems (3)
  • CSCI 5421 - Advanced Algorithms and Data Structures (3)
  • CSCI 5521 - Introduction to Machine Learning (3)
  • CSCI 5523 - Introduction to Data Mining (3)

Computational Science

  • CSCI 5302 - Analysis of Numerical Algorithms (3) Required Course for Track
  • CSCI 5304 - Computational Aspects of Matrix Theory (3) Required Course for Track
  • CSCI 5451 - Introduction to Parallel Computing (3)
  • CSCI 5461 - Functional Genomics, Systems Biology, and Bioinformatics (3)
  • CSCI 5481 - Computational Techniques for Genomics (3)
  • CSCI 5523 - Introduction to Data Mining (3)
  • CSCI 5609 - Visualization (3)
  • AST 4101 - Computational Methods in the Physical Sciences (4)
  • MATH 5075 - Mathematics of Options, Futures, and Derivative Securities I (4)
  • MATH 5467 - Introduction to the Mathematics of Image and Data Analysis (4)
  • MATH 5587 - Elementary Partial Differential Equations I (4)
  • MATH 5588 - Elementary Partial Differential Equations II (4)
  • MATH 5711 - Linear Programming (4)

Databases

  • CSCI 4707 - Practice of Database Systems (3) Required Course for Track
  • CSCI 5708 - Architecture and Implementation of DBMS (3) Required Course for Track
  • CSCI 4131 - Internet Programming (3)
  • CSCI 4211 - Introduction to Computer Networks (3)
  • CSCI 4511W - Introduction to Artificial Intelligence (4)
  • CSCI 5103 - Operating Systems (3)
  • CSCI 5421 - Advanced Algorithms and Data Structures (3)
  • CSCI 5523 - Introduction to Data Mining (3)
  • INET 4061 - Introduction to Data Warehousing (3)

Geographical Information Systems

  • CSCI 4707 - Practice of Database Systems (3) Required Course for Track
  • CSCI 5708 - Architecture and Implementation of DBMS (3) Required Course for Track
  • CSCI 4611 - Programming Interactive Computer Graphics and Games (3) OR 5607 - Intro to Computer Graphics Programming (3)
  • CSCI 5715 - From GPS and Virtual Globes to Spatial Computing (3)
  • FNRM 5131 - GIS for Natural Resources (4)
  • FNRM 5262 - Remote Sensing of Natural Resources (3)
  • FNRM 5412 - Digital Remote Sensing (3)

Graphics & Visualization

  • CSCI 4611 - Programming Interactive Computer Graphics and Games (3) Required Course for Track OR
  • CSCI 5607 - Fundamentals of Computer Graphics I (3) Required Course for Track
  • CSCI 5608 - Computer Graphics II (3) Required Course for Track OR
  • CSCI 5609 - Visualization (3) Required Course for Track OR
  • CSCI 5611 - Animation and Planning in Games (3) Required Course for Track OR
  • CSCI 5619 - Virtual Reality and 3D Interaction (3) Required Course for Track
  • CSCI 5115 - User Interface Design, Implementation and Evaluation (3)
  • CSCI 5125 - Collaborative and Social Computing (3)
  • CSCI 5302 - Analysis of Numerical Algorithms (3)
  • CSCI 5523 - Introduction to Data Mining (3)
  • CSCI 5561 - Computer Vision (3)

Human Computer Interaction

  • CSCI 5115 - User Interface Design (3) Required Course for Track
  • CSCI 5125 - Collaborative and Social Computing (3) Required Course for Track
  • CSCI 5127W - Human-Centered Design and Prototyping of Ubiquitous Computing Systems (3)
  • CSCI 5609 - Visualization (3)
  • CSCI 5117 - Developing the Interactive Web (3)
  • KIN 5001 - Foundations of Human Factors/Ergonomics (3)

Networks

  • CSCI 4211 - Introduction to Computer Networks (3) Required Course for Track
  • CSCI 5221 - Foundations of Advanced Networking (3) Required Course for Track
  • CSCI 5103 - Operating Systems (3)
  • CSCI 5105 - Introduction to Distributed Systems (3)
  • CSCI 5231 - Wireless and Sensor Networks (3)
  • CSCI 5271 - Introduction to Computer Security (3)
  • CSCI 5471 - Modern Cryptography (3)
  • MATH 5251 - Error-Correcting Codes (4)
  • INET 4011 - Network Administration (4)
  • INET 4021 - Network Programming (4)
  • INET 4041 - Emerging Network Technologies and Applications (3)
  • EE 5505 - Wireless Communication (3)

Security

  • CSCI 4211 - Introduction to Computer Networks (3) Required Course for Track
  • CSCI 5271 - Introduction to Computer Security (3) Required Course for Track
  • CSCI 5103 - Operating Systems (3)
  • CSCI 5471 - Modern Cryptography (3)
  • CSCI 5801 - Software Engineering I (3)
  • MATH 5248 - Cryptology and Number Theory (4)
  • INET 4011 - Network Administration (4)

Software & Data Systems Development

  • CSCI 4707 - Practice of Database Systems (3) Required Course for Track
  • CSCI 5801 - Software Engineering I (3) Required Course for Track
  • CSCI 4131- Internet Programming (3)
  • CSCI 5103- Operating Systems (3)
  • CSCI 5106- Programming Languages (3)
  • CSCI 5115- User Interface Design (3)
  • CSCI 5161- Introduction to Compilers (3)
  • CSCI 5271 - Introduction to Computer Security (3)
  • CSCI 5708 - Architecture and Implementation of Database Management Systems (3)
  • CSCI 5802- Software Engineering II (3)
  • INET 4061 - Introduction to Data Warehousing (3)

Software Engineering & Programming Languages

  • CSCI 5106 - Programming Languages (3) Required Course for Track
  • CSCI 5801 - Software Engineering I (3) Required Course for Track
  • CSCI 4011 - Formal Languages and Automata Theory (4)
  • CSCI 5161 - Introduction to Compilers (3)
  • CSCI 5802 - Software Engineering II (3)
  • MATH 5165 - Mathematical Logic I (4)

Systems

  • CSCI 4211 - Introduction to Computer Networks (3) Required Course for Track
  • CSCI 5103 - Operating Systems (3) Required Course for Track
  • CSCI 4131 - Internet Programming (3)
  • CSCI 5105 - Introduction to Distributed Systems (3)
  • CSCI 5143 - Real-Time and Embedded Systems (3)
  • CSCI 5161 - Introduction to Compilers (3)
  • CSCI 5221 - Foundations of Advanced Networking (3)
  • CSCI 5231 - Wireless and Sensor Networks (3)
  • CSCI 5271 - Introduction to Computer Security (3)
  • CSCI 5551 - Introduction to Intelligent Robotic Systems (3)

Theory

  • CSCI 4011 - Formal Languages and Automata Theory (4) Required Course for Track
  • CSCI 5421 - Advanced Algorithms and Data Structures (3) Required Course for Track
  • CSCI 5451 - Introduction to Parallel Computing (3)
  • CSCI 5471 - Modern Cryptography (3)
  • CSCI 5481 - Computational Techniques for Genomics (3)
  • CSCI 5525 - Machine Learning (3)
  • MATH 5165 - Mathematical Logic I (4)
  • MATH 5166 - Mathematical Logic II (4)
  • MATH 5707 - Graph Theory (4)
  • MATH 5711 - Linear Programming (4)