The Software Engineering Specialization is available for both the Bachelor of Computer Science (BCS) and the Bachelor of Mathematics (BMath) (Computer Science) academic plans. This Specialization is offered jointly by the David R. Cheriton School of Computer Science and the Department of Electrical and Computer Engineering. Students who complete this Specialization do not qualify for the professional engineering designation. The course requirements are the same as for the BCS and BMath (CS) with the following additional requirements:
Foundations
Applications
- Two of
- CS 343 Concurrent and Parallel Programming
- CS 348 Introduction to Database Management
- CS 349 User Interfaces
- Two of
- CS 442 Programming Languages
- CS 444 Compiler Construction
- CS 448 Database Systems Implementation
- CS 449 Human-Computer Interaction
- CS 450 Computer Architecture
- CS 451 Intensive Distributed Computing
- CS 452 Real-time Programming
- CS 454 Distributed Systems
- CS 456 Computer Networks
- CS 457 System Performance Evaluation
- CS 458 Computer Security and Privacy
- CS 480 Introduction to Machine Learning
- CS 484 Computational Vision
- CS 486 Introduction to Artificial Intelligence
- CS 488 Introduction to Computer Graphics