Three Year Course Rotation

The table below is a three-year plan for course offerings, to help you in your course planning. It will be updated each academic year in the spring, ahead of fall registration. This table does not list special topics courses (CSCI 4996/5996), which there are often two of each semester and which can satisfy both undergraduate and graduate course requirements.

NOTE: Currently being edited and discussed.

 Three year course plan

Three Year Course Rotation Table
Course Title SP26 FA26 SP27 FA27 SP28 FA28 SP29
CSCI 1110 Computer Science Principles Offered every semester
CSCI 1115G Introduction to Computer Science Offered every semester
CSCI 1720/4540 Computer Science I Offered every semester
CSCI 2210/4545 Object Oriented Programming Offered every semester
CSCI 2220/4550 Introduction to Data Structures Offered every semester
CSCI 2230/4555 Machine Programming and Organization Offered every semester
CSCI 2310/4560 Discrete Mathematics for Computer Science Offered every semester
Course Title SP26 FA26 SP27 FA27 SP28 FA28 SP29
CSCI 2410 Practical Programming   ✔️   ✔️   ✔️  
CSCI 2996 Special topics              
CSCI Intelligent Agents using Science Fiction   ✔️   ✔️   ✔️  
CSCI 3710/4575 Software Development Offered every semester
CSCI 3720/5110 Data Structures and Algorithms Offered every semester
CSCI 3730/4580 Compilers and Automata Theory Offered every semester
CSCI 3790/4590 Algorithm Design & Implementation ✔️     ✔️     ✔️
CSCI 4105 Programming Language Structure I ✔️   ✔️   ✔️   ✔️
CSCI 4110 Computing Ethics and Social Implications ✔️   ✔️   ✔️   ✔️
CSCI 4120 Operating Systems I   ✔️   ✔️   ✔️  
CSCI 4130 Linux Systems Administration   ✔️   ✔️   ✔️  
CSCI 4140/5140 Database Management Systems I Offered every semester
CSCI 4205/5205 Computer Security ✔️   ✔️   ✔️   ✔️
CSCI 4210/5210 Intro to Smart Grids Rare       
Course Title SP26 FA26 SP27 FA27 SP28 FA28 SP29
CSCI 4215/5215 Parallel Programming   ✔️   ✔️   ✔️  
CSCI 4220/5220 Cloud and Edge Computing (required) ✔️   ✔️   ✔️   ✔️
CSCI 4225/5225 Introduction to Cryptography   ✔️   ✔️   ✔️  
CSCI 4230 Architectural Concepts I No set schedule       
CSCI 4235/5235 Cellular Networks and Mobile Computing ✔️   ✔️     ✔️  
CSCI 4240/5240 Reverse Engineering   ✔️   ✔️   ✔️  
CSCI 4245/4530 Computer Networks I   ✔️ ✔️   ✔️   ✔️
CSCI 4250/5250 Human-Centered Computing   ✔️   ✔️   ✔️  
CSCI 4255/5255 Digital Game Design   ✔️   ✔️   ✔️  
CSCI 4260/5260 Visual Programming No set schedule       
CSCI 4265/5265 Modern Web Technologies ✔️   ✔️   ✔️   ✔️
CSCI 4270 Principles of Virtual Reality No set schedule    
Course Title SP26 FA26 SP27 FA27 SP28 FA28 SP29
CSCI 4305/5305 Bioinformatics ✔️   ✔️     ✔️  
CSCI 4310/5310 Bioinformatics Programming       ✔️     ✔️
CSCI 4405/5405 Artificial Intelligence I ✔️   ✔️   ✔️   ✔️
CSCI 4410/5410 Computer Graphics I  No set schedule    
CSCI 4415/5415 Introduction to Data Mining   ✔️   ✔️   ✔️  
CSCI 4420/5420 Applied Machine Learning I ✔️   ✔️   ✔️   ✔️
CSCI 4425/5425 Introduction to Deep Learning ✔️ ✔️   ✔️   ✔️  
CSCI 4430/5430 Graph Data Mining Rare       
Course Title SP26 FA26 SP27 FA27 SP28 FA28 SP29
CSCI 4435/5435 Text Mining and Natural Language Processing ✔️   ✔️     ✔️  
CSCI 4440/5440 Generative Artificial Intelligence ✔️   ✔️   ✔️   ✔️
CSCI 4980 Senior Project Offered every semester
CSCI 4996/5996 Hardware security ✔️   ✔️   ✔️   ✔️
CSCI 5505 Analysis of Algorithms ✔️   ✔️   ✔️   ✔️
CSCI 5510 Automata; Languages; & Computability   ✔️   ✔️   ✔️  
CSCI 5605 Operating Systems II ✔️   ✔️     ✔️  
CSCI 5610 Architectural Concepts II No set schedule      
Course Title SP26 FA26 SP27 FA27 SP28 FA28 SP29
CSCI 5750 Artificial Intelligence II   ✔️   ✔️   ✔️  
CSCI 5810 Advanced Software Engineering ✔️       ✔️    
CSCI 5820 Database Management Systems II   ✔️     ✔️   ✔️
CSCI 5840 Computer Networks II       ✔️   ✔️  
CSCI 5860 Algorithms in Systems Biology   ✔️     ✔️