Course Planning
As you plan your short- and long-term schedules, be aware that some courses are offered every semester, while others are only offered in certain semesters. Below is a guide to help you know when courses are typically offered. You should consult with your CSE advisor when planning your courses, for more up-to-date information about course availability.
Courses typically offered every semester:
- CSE 102 – Computing and Engineering
- CSE 174 – Fundamentals of Programming and Problem Solving
- CSE 201 – Intro to Software Engineering
- CSE 262 – Technology, Ethics, and Global Society
- CSE 271 – Object-Oriented Programming
- CSE 274 – Data Abstraction and Data Structures
- CSE 278 – Systems I
- CSE 374 – Algorithms I
- CSE 381 – Systems II
- CSE 383 – Web Application Programming
- CSE 385 – Database Systems
- CSE 386 – Foundations of Computer Graphics and Games
- CSE 448/449 – Senior Design Project
Courses typically offered only in the fall:
- CSE 212 – Software for Human-Computer Interaction
- CSE 322 – Software Requirements
- CSE 372 – Stochastic Modeling
- CSE 443 – High-Performance Computing
- CSE 473 – Automata, Formal Languages, and Computability
- CSE 486 – Artificial Intelligence
- CSE 489 – Advanced Graphics and Game Engine Design
Courses typically offered only in the spring:
- CSE 211 – Software Construction
- CSE 273 – Optimization Modeling
- CSE 311 – Software Architecture and Design
- CSE 321 – Software Quality Assurance and Testing
- CSE 389 – Game Design and Implementation
- CSE 465 – Comparative Programming Languages
- CSE 467 – Computer and Network Security
Courses offered less frequently:
- CSE 382 – Mobile App Development
- CSE 451 – Web Services
- CSE 471 – Simulation
- CSE 474 – Compiler Design
- CSE 485 – Advanced Databases