Skip Navigation

CS 2023/2024 Courses

Tentative Course Offerings. The tentative course offerings for next year can be viewed here, or you can come to the CS front office. Please note that this is only a tentative offerings list, and subject to change.

You can also access the entire University Catalog, or the CS department entry, or the official class schedule online.

Note: checkmarks are clickable

Choose Year



CatalogFallWinterSpringSummerPrerequisites
Lower Division
CS 102 Fundamentals of Computer and Information SecurityF   
CS 110 Fluency with Information TechnologyFWS 
CS 111 Introduction to Web ProgrammingFWS  MATH 101 or equivalent.
CS 122 Intro to Programming and Problem SolvingFWS  MATH 101 or equivalent.
Classes for CS Majors
CS 210 Computer Science IFW   MATH 112Z. Prior programming experience strongly encouraged.
CS 211 Computer Science II WS  CS 210.
CS 212 Computer Science IIIF S  CS 211.
CS 313 Intermediate Data StructuresFW   CS 210, CS 211, CS 212, MATH 231, MATH 232 with grades of B- or better.
CS 314 Computer OrganizationFW   CS 210, CS 211, CS 212 with grades of B- or better.
CS 315 Intermediate Algorithms WS  CS 313.
CS 322 Intro to Software EngineeringF S  CS 210, CS 211, CS 212 with grades of B- or better.
CS 330 C/C++ and Unix WS  CS 314.
CS 333 Applied Cryptography W   CS 212.
CS 372M Machine Learning for Data Science W  CS 212, DSCI 345M, MATH 342
CS 407 Seminar on CIS Careers and InternshipsFWS 
CS 415 Operating SystemsF S  CS 330.
CS 425 Principles of Programming Languages F S  CS 315.
Undergraduate/Graduate
CS 407/507 Programming Challenges  S 
CS 407/507 Programming CompetitionF    CS 313.
CS 407/507 Research ColloquiaFWS 
CS 407/507 Software TestingFW  
CS 410/510 Computer Vision W  
CS 410/510 Game Programming  S 
CS 410/510 Multi-Agent SystemsF   
CS 410/510 Natural Language Processing  S 
CS 420/520 Automata TheoryF    CS 315.
CS 422/522 Software Methodology IFWS  CS 313.
CS 423/523 Software Methodologies IIF    CS 422 with a grade of B- or better.
CS 429/529 Computer Architecture W   CS 313, CS 314, CS 330.
CS 431/531 Introduction to Parallel ComputingF    CS 330.
CS 432/532 Intro to NetworksF    CS 330. CS 415 recommended.
CS 433/533 Computer and Network Security W   CS 415.
CS 434/534 Computer and Network Security II  S  CS 433.
CS 436/536 Secure Software Development  S  CS 330.
CS 443/543 User InterfacesF    CS 313.
CS 445/545 Modeling and Simulation   S  CS 315, CS 330.
CS 451/551 Database Processing  S  CS 313, CS 314.
CS 455/555 Computational Science  W  CS 314, 422 or instructor's consent.
CS 461/561 Introduction to Compilers  S  CS 314, CS 425. CS 420 strongly recommended.
CS 471/571 Introduction to Artificial IntelligenceF    CS 315.
CS 472/572 Machine Learning  S  CS 315.
CS 473/573 Probabilistic Methods W   CS 315.
Graduate
CS 610 Teaching Effectiveness SeminarF   
CS 610 Welcome to Grad SchoolF   
CS 621 Algorithms and ComplexityF    CS 520 recommended.
CS 630 Distributed Systems  S  CS 529.
CS 631 Parallel Processing W   CS 529.
CS 632 Computer Networks  W   CS 532.
CS 640 Writing in Computer Research W  
CS 670 Data Science  S  CS 551.
Research Seminars
CS 607 Advanced Data Encryption W  
CS 607 AI for Social GoodF   
CS 607 Current and Future Internet Technologies  S 
CS 607 Cyber Physical Systems and Internet of Things SecurityF   
CS 607 Deep Learning for Natural Language Processing W  
CS 607 Edge ComputingF   
CS 607 High Performance Scientific Computing  S 
CS 607 Scalable Performance Monitoring and In Situ Analytics W  
CS 607 Special Topics in Computer Vision and Deep Learning  S 
CS 607 Topics in Networking W  
CS 607 Unix, C and C++ for Graduate StudentsF   
CIT Minor
CIT 281 Web Applications Development I  S  CS 111 with a grade of B- or higher.
CIT 381 Database SystemsF    B- or better in CIT 281, and CS 110 or CS 115.
CIT 382 Web Applications Development II W   CIT 381.
CIT 383 Networking Fundamentals  S  CIT 382.