Course Title Prereqs. Coreqs. Successors Terms offered  Open to CS majors Open to non-CS majors
CS 100 Introduction to Computing Through Applications None None   Fall/Winter/Spring No Yes
CS 105 Introduction to Computer Programming 1 None None CS 106CS 330 Fall/Winter No Yes
CS 106 Introduction to Computer Programming 2 CS 105 None CS 330 Winter No Yes
CS 114 Principles of Computer Science None None CS 115CS 116CS 135CS 230CS 231CS 234CS 330CS 335 Winter/Fall No Yes
CS 115 Introduction to Computer Science 1 None None CS 116CS 136CS 230CS 231CS 234CS 330CS 335 Fall/Winter/Spring Yes Yes
CS 116 Introduction to Computer Science 2

One of CS 115/135/145

None CS 136CS 230CS 231CS 234CS 330CS 335CS 371 Fall/Winter/Spring Yes Yes
CS 135 Designing Functional Programs None None CS 116CS 136CS 230CS 231CS 234CS 330CS 335 Fall/Winter Yes Yes
CS 136 Elementary Algorithm Design and Data Abstraction One of:
i. 90% in CS 115
ii. 70% in CS 116
iii. 60% in CS 135
iv. CS 145
CS 136L CS 230CS 231CS 234CS 241CS 245CS 246CS 251CS 330CS 335CS 371 Fall/Winter/Spring Yes Yes
CS 136L Tools and Techniques for Software Development One of:
i. 90% in CS 115
ii. 70% in CS 116
iii. 60% in CS 135
iv. CS 145
CS 136/146 CS 230CS 231CS 234CS 241CS 245CS 246CS 251CS 330CS 335CS 371 Fall/Winter/Spring Yes Yes
CS 137 Programming Principles None None CS 138 Fall No No
CS 138 Introduction to Data Abstraction and Implementation CS 137 None CS 230CS 231CS 234CS 241CS 245CS 246CS 251CS 330CS 335CS 371 Winter No No
CS 145 Designing Functional Programs (Advanced Level) Department Consent  None CS 136CS 146CS 230CS 231CS 234CS 330 Fall Yes Yes
CS 146 Elementary Algorithm Design and Data Abstraction (Advanced Level) 75% in CS 145 CS 136L CS 230CS 231CS 234CS 245CS 246CS 251CS 330CS 335CS 371 Winter Yes Yes
CS 200 Concepts for Advanced Computer Usage None None   Winter/Spring No Yes
CS 230 Introduction to Computers and Computer Systems One of:
i. CS 116/136/138/146 
ii. (60%+ in CS 114) and CS 115/135/145
None CS 338CS 436 Winter/Spring No Yes
CS 231 Algorithmic Problem Solving One of:
i. CS 116/136/138/146 
ii. (60%+ in CS 114) and CS 115/135/145
None CS 338CS 370CS 431CS 487 Spring No Yes
CS 234 Data Types and Structures One of:
i. CS 116/136/138/146 
ii. (60%+ in CS 114) and CS 115/135/145
None

CS 338CS 370CS 487

Fall/Spring No Yes
CS 240 Data Structures and Data Management All of:
i. CS 245/245E or SE 212
ii. CS 241/241E/246/246E
iii. STAT 206/230/240
None CS 341CS 348CS 350CS 360CS 365CS 383CS 398CS 399CS 442CS 449CS 487CS 492 Fall/Winter/Spring Yes No
CS 240E Data Structures and Data Management (Enriched) 85%+ in CS 136/138/146 STAT 206/230/240

CS 341CS 348CS 350CS 360CS 365CS 383CS 398CS 399CS 442CS 449CS 487CS 492

Winter/Spring as permitted by demand and available resources Yes No
CS 241 Foundations of Sequential Programs

CS 138/246/246E or (85%+ in CS 136/146)
 

None

CS 240CS 247CS 349CS 350CS 360CS 365CS 370CS 436CS 449

Fall/Winter/Spring Yes No
CS 241E Foundations of Sequential Programs (Enriched) CS 138 or (85%+ in CS 136/146) None CS 240, CS 247CS 349CS 350CS 360CS 365CS 370CS 436CS 449 Fall as permitted by demand and available resources Yes No
CS 245 Logic and Computation CS 136/138/146 and MATH 135/145 None CS 240CS 341 CS 450 Fall/Winter/Spring Yes Yes
CS 245E Logic and Computation  (Enriched) 85%+ in CS 136/146 None CS 240CS 341, CS 450 Fall as permitted by demand and available resources Yes No
CS 246 Object-Oriented Software Development

One of:
i. 60%+ in CS 136/138
ii. CS 146

None CS 240CS 241CS 338CS 350CS 370CS 398CS 399CS 436CS 457 Fall/winter/spring Yes Yes
CS 246E Object-Oriented Software Development (Enriched) 85%+ in CS 136/146 None CS 240CS 241CS 338CS 350CS 370CS 398CS 399CS 436CS 457 Fall as permitted by demand and available resources Yes No
CS 247 Software Engineering Principles CS 241/241E None CS 346 Spring No No
CS 251 Computer Organization and Design CS 136/138/146 None CS 350CS 431CS 436, Fall/Winter/Spring Yes No
CS 251E Computer Organization and Design (Enriched) 85%+ in CS 136/146 None CS 350CS 431CS 436, As permitted by demand and available resources Yes No
CS 330 Management Information Systems

​Level 2B and one of:
i. CS 106/116/136/138/146
ii. (60%+ in CS 114) and CS 115/135/145

None CS 338CS 430CS 431CS 432 Fall/Winter/Spring No Yes
CS 335 Computational Methods in Business and Finance All of:
i. One of CS 106/116/136/138/146 or (60%+ in CS 114) and CS 115/135/145
ii. (70%+ in MATH 106) or MATH 136/146
iii. MATH 237/247
iv. STAT 206/231/241
None None Fall/Winter No Yes
CS 338 Computer Applications in Business: Databases

One of:
i. CS 230/231/234/246/246E/330
ii. CS 116/136/146 and AFM 341

None None Fall/Winter/Spring No Yes
CS 341 Algorithms

All of:
i. CS 240/240E
ii. CS 245/245E or SE 212
iii. MATH 239/249
iv. STAT 206/230/240

None CS 431, CS 445CS 451CS 466CS 480CS 482CS 485CS 486CS 488CS 493 Fall/Winter/Spring Yes No
CS 343 Concurrent and Parallel Programming CS 350 or SE 350 None None Fall/Winter Yes No
CS 346 Application Development CS 246/246E/247 None None Fall/Winter Yes No
CS 348 Introduction to Database Management None CS 240 CS 448CS 451 Fall/Winter/Spring Yes No
CS 349 User Interfaces

CS 241/241E and MATH 115/136/146

None None Fall/Winter/Spring Yes No
CS 350 Operating Systems

All of:
i. CS 240/240E
ii. CS 241/241E
iii. CS 246/246E
iv. CS 251/251E or ECE 222

None CS 343CS 444CS 445CS 446CS 447CS 448CS 450CS 451CS 452, CS 453CS 454CS 456CS 458CS 459CS 488CS 490CS 493 Fall/Winter/Spring Yes No
CS 360 Introduction to the Theory of Computing All of:
i. CS 240/240E
ii. CS 241/241E
iii. MATH 239/249
None CS 462 Fall/Winter/Spring Yes No
CS 365 Models of Computation All of:
i. CS 240/240E
ii. CS 241/241E
iii. MATH 239/249
None CS 462 Winter Yes No
CS 370 Numerical Computation All of:
i. MATH 106/114/115/136/146
ii. MATH 118/119/128/138/148
iii. CS 231/234/241/241E/246/246E
None CS 475CS 476CS 484CS 488 Fall/Winter/Spring Yes Yes
CS 371 Introduction to Computational Mathematics All of:
i. CS 116/136/138/146
ii. MATH 235/245
iii. MATH 237/247
None CS 475CS 476CS 484CS 488 Winter/Spring Yes Yes
CS 383 Computational Digital Art Studio CS 240/240E and FINE 228/247 None None Winter Yes Yes
CS 398 Topics in Computer Science CS 240/240E and CS 246/246E/247 None None On demand Yes No
CS 399 Readings in Computer Science CS 240/240E and CS 246/246E/247 None None On demand Yes No
CS 430 Applications Software Engineering Level 3A and CS 330 None None Fall/Winter No Yes
CS 431 Data-Intensive Distributed Analytics CS 231/234/341 and CS 251/251E/330 None None Winter/Spring No Yes
CS 432 Business Systems Analysis -- -- -- Currently not offered. -- --
CS 436 Networks and Distributed Computer Systems CS 230/241/241E/246/246E/251/251E None None Winter No Yes
CS 442 Principles of Programming Languages CS 240/240E None None Winter Yes No
CS 444 Compiler Construction CS 350 or SE 350 None None Winter Yes No
CS 445 Software Requirements Specification and Analysis CS 341/350 None None Fall/Winter/Spring Yes No
CS 446 Software Design and Architectures CS 350 None None Winter/Spring Yes No
CS 447 Software Testing, Quality Assurance and Maintenance CS 350 None None Winter Yes No
CS 448 Database Systems Implementation CS 350 None None Winter Yes No
CS 449 Human-Computer Interaction Level 3B, CS 240/240E, and CS 241/241E None None Fall/Spring Yes No
CS 450 Computer Architecture All of:
i. CS 245/245E or SE 212
ii. CS 350 or SE 350
None None Winter Yes No
CS 451 Data-Intensive Distributed Computing CS 341CS 348, and (CS 350 or SE 350) None None Winter/Spring Yes No
CS 452 Real-Time Programming CS 350 or SE 350 None None Winter/Spring Yes No
CS 453 Software and Systems Security CS 350 or SE 350 None None Fall Yes No
CS 454 Distributed Systems CS 350 or SE 350 None None Winter/Spring Yes No
CS 456 Computer Networks CS 350 or SE 350 None None Fall/Winter/Spring Yes No
CS 457 System Performance Evaluation CS 246/246E/247 and STAT 206/231/241 None None No term specified Yes No
CS 458 Computer Security and Privacy -- -- -- Currently not offered. -- --
CS 459 Privacy, Cryptography, Network and Data Security (CS 350 or SE 350) and MATH 135/145 None None Fall Yes No
CS 462 Formal Languages and Parsing CS 360/365 None None Currently not offered. Yes No
CS 466 Algorithm Design and Analysis CS 341 None None Fall/Spring Yes No
CS 467 Introduction to Quantum Information Processing Level 3A and 80% in MATH 235/245 None None Winter Yes Yes
CS 475 Computational Linear Algebra CS 370/371 or AMATH 242 None None Spring Yes Yes
CS 476 Numeric Computation for Financial Modeling

All of:
i. CS 370/371 or AMATH 242
ii. (60%+ in STAT 206) or STAT 231/241

None None Winter Yes Yes
CS 479 Neural Networks All of:
i. CS 335/370/371 or AMATH 242
ii. (60%+ in STAT 206) or STAT 230/240
None None Winter Yes Yes
CS 480 Introduction to Machine Learning CS 341 and STAT 206/231/241 None None Fall/Winter/Spring No No
CS 482 Computational Techniques in Biological Sequence Analysis CS 341 and one of:
i. 70%+ in STAT 206
ii. 60%+ in STAT 231
iii. STAT 241
None None Winter   Yes
CS 484 Computational Vision All of:
i. CS 370/371 or AMATH 242 or MATH 235/245
ii. STAT 206/230/240
None None Fall/Winter Yes No
CS 485 Statistical and Computational Foundations of Machine Learning CS 341 and STAT 206/230/240 None None Fall Yes No
CS 486 Introduction to Artificial Intelligence CS 341 STAT 206/231/241 None Fall/Winter/Spring Yes No
CS487 Introduction to Symbolic Computation CS 231/234/240/240E None None Winter Yes Yes
CS 488 Introduction to Computer Graphics All of:
i. CS 341
ii. CS 350 or SE 350
iii. CS 370/371
None None Fall/Winter/Spring Yes No
CS 489 Advanced Topics in Computer Science Level at least 3B None None Fall/Winter/Spring Yes No
CS 490 Information Systems Management CS 350 or SE 350 None None Winter/Spring Yes No
CS 492 The Social Implications of Computing CS 240/240E None None Winter/Spring Yes No
CS 493 Team Project 1 CS 341 and CS 350 None CS 494 Fall Yes No
CS 494 Team Project 2 CS 493 None None Winter Yes No
CS 497 Multidisciplinary Studies in Computer Science Level at least 3B None None No term specified Yes No
CS 499R Readings in Computer Science Level at least 3B None None On demand Yes No
CS 499T Honours Thesis Department Consent None None On demand Yes No