This page outlines the courses you must take as part of the BSEng curriculum, organized according to our recommended schedule. There are also additional schedules for your first year of engineering.

While there is some flexibility in how you organize your terms at UVic, following this schedule helps you stay on track with the BSEng degree requirements—certain required (core) courses are only offered one time per year, and there are many prerequisites/co-requisites that determine the order courses can be taken, which our recommendations take into account. For help organizing your course schedule, contact one of our program advisors in the Engineering Undergraduate Office.

Consult the UVic Calendar for the official list of BSEng program requirements, other approved course substitutions, and to verify course schedules. Information about complementary studies electives, natural science electives, and technical electives can be found on the Curriculum page.

Note: ECE 458 Communication Networks will be renumbered ECE 363 in May 2023. The course content remains the same and it will continue to be offered in term 3A (spring).

Term 1A - Fall
Term 1B - Spring

CSC 111 - Fundamentals of Programming with Engineering Applications

CSC 115 - Fundamentals of Programming II
ENGR 110 - Design and Communication I ENGR 120 - Design and Communication II
ENGR 130 - Introduction to Professional Practice ENGR 141 - Engineering Mechanics
MATH 100 - Calculus I OR
MATH 109 - Introduction to Calculus
MATH 101 - Calculus II
MATH 110 - Matrix Algebra for Engineers PHYS 111 - Introductory Physics II
PHYS 110 - Introductory Physics I
Term 2A - Fall
Term 2B - Summer

ECE 255 - Introduction to Computer Architecture1 OR
CSC 230 - Introduction to Computer Architecture1

CSC 225 - Algorithms and Data Structures I

CHEM 101 - Properties of Materials

ECON 180 - Introduction to Principles of Microeconomics and Financial Project Evaluation

ECE 260 - Continuous-Time Signals and Systems ECE 310 - Digital Signal Processing I
MATH 122 - Logic and Foundations SENG 275 - Software Testing
SENG 265 - Software Development Methods SENG 310 - Human Computer Interaction
STAT 260 - Introduction to Probability and Statistics I Complementary Studies Elective
Term 3A - Spring
Term 3B - Fall
ECE 458 - Communication Networks1 OR
CSC 361 - Computer Communications and Networks1
ECE 355 - Microprocessor-Based Systems1 OR
CSC 355 - Digital Logic and Computer Organization1
CSC 226 - Algorithms and Data Structures II CSC 320 - Foundations of Computer Science
ECE 360 - Control Theory and Systems I CSC 360 - Operating Systems
SENG 321 - Requirements Engineering CSC 370 - Database Systems
SENG 371 - Software Evolution SENG 350 - Software Architecture and Design
Natural Science Elective SENG 360 - Security Engineering
Term 4A - Summer
Term 4B - Spring
SENG 426 - Software Quality Engineering ECE 455 - Real-Time Computer Systems Design Project1 OR
CSC 460 - Design and Analysis of Real-time Systems1
SENG 440 - Embedded Systems SENG 401 - Social and Professional Issues
SENG 499 - Design Project II Technical Elective
Technical Elective Technical Elective
Technical Elective Technical Elective
Complementary Studies Elective Natural Science Elective

1. When both courses are offered in the same term, only one of them may be open to BSEng students.


You are responsible for ensuring that all degree requirements have been satisfied as outlined in the University of Victoria Calendar. Any errors or omissions on this site do not absolve you from having to complete all of the program requirements.