Curriculum for entry from CEGEP program can be found below.
For a printer friendly version, you can download the following file:
Software Engineering 7 Semester Program [.pdf]
First ( Fall ) Semester ( TOTAL = 15 cr )
COMP 202. Foundations of Programming.
Credits: 3
Offered by: Computer Science (Faculty of Science)
Terms offered: Summer 2025
View offerings for in Visual Schedule Builder.
Description
Introduction to computer programming in a high level language: variables, expressions, primitive types, methods, conditionals, loops. Introduction to algorithms, data structures (arrays, strings), modular software design, libraries, file input/output, debugging, exception handling. Selected topics.
- Restriction Note N: COMP 202 cannot be taken for credit with or after COMP 250.
- 3 hours
- Restrictions: Not open to students who have taken or are taking COMP 204, COMP 208, or GEOG 333; not open to students who have taken or are taking COMP 206 or COMP 250.
- COMP 202 is intended as a general introductory course, while COMP 204 is intended for students in life sciences, and COMP 208 is intended for students in physical sciences and engineering.
- To take COMP 202, students should have a solid understanding of pre-calculus fundamentals such as polynomial, trigonometric, exponential, and logarithmic functions.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Credits: 3
Offered by: Mathematics and Statistics (Faculty of Engineering)
Terms offered: Summer 2025
View offerings for in Visual Schedule Builder.
Description
Series and power series, including Taylor's theorem. Brief review of vector geometry. Vector functions and curves. Partial differentiation and differential calculus for vector valued functions. Unconstrained and constrained extremal problems. Multiple integrals including surface area and change of variables.
- Restrictions: Open only to students in the Faculty of Engineering. Not open to students who are taking or have taken MATH 151, MATH 152, OR MATH 222.
- (3-1-5)
- Prerequisites: MATH 141, MATH 133 or equivalent.
- Restrictions: Open only to students in the Faculty of Engineering. Not open to students who are taking or have taken MATH 151, MATH 152, OR MATH 222.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
MATH 263. Ordinary Differential Equations for Engineers.
Credits: 3
Offered by: Mathematics and Statistics (Faculty of Engineering)
Terms offered: Summer 2025
View offerings for in Visual Schedule Builder.
Description
First order ODEs. Second and higher order linear ODEs. Series solutions at ordinary and regular singular points. Laplace transforms. Linear systems of differential equations with a short review of linear algebra.
- Restrictions: Open only to students in the Faculty of Engineering. Not open to students who are taking or have taken MATH 315 or MATH 325.
- (3-1-5)
- Corequisite: MATH 262.
- Restrictions: Open only to students in the Faculty of Engineering. Not open to students who are taking or have taken MATH 315 or MATH 325.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
XXXX xxx g1 (3) General Complementary 1
Second ( Winter ) Semester ( TOTAL = 17 cr )
COMP 250. Introduction to Computer Science.
Credits: 3
Offered by: Computer Science (Faculty of Science)
This course is not offered this catalogue year.
Description
Mathematical tools (binary numbers, induction,recurrence relations, asymptotic complexity,establishing correctness of programs). Datastructures (arrays, stacks, queues, linked lists,trees, binary trees, binary search trees, heaps,hash tables). Recursive and non-recursivealgorithms (searching and sorting, tree andgraph traversal). Abstract data types. Objectoriented programming in Java (classes andobjects, interfaces, inheritance). Selected topics.
- Restriction Note M: COMP 250 and COMP 203 cannot both be taken for credit.
- 3 hours
- Prerequisite(s): MATH 140 or equivalent. COMP 202 or COMP 204 or COMP 208 (or equivalent).
- Corequisite(s): MATH 133
- Restriction(s): Not open to students who have taken or are taking ECSE 250.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 200. Electric Circuits 1.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Circuit variables. Analysis of resistive circuits, network theorems (Kirchhoff’s laws, Ohm’s law, Norton and Thevenin equivalent). Ammeters, Voltmeters, and Ohmmeters. Analysis methods (nodal and mesh analysis, linearity, superposition). Dependent sources and Op-Amps. Energy storage elements. First and second order circuits.
- Corequisite: MATH 261 or MATH 263 or MATH 325.
- Tutorials assigned by instructor.
- This course in the Faculty of Engineering is open only to 51³Ô¹ÏÍøstudents.
- (4-2-3)
- Prerequisite: PHYS 142 or CEGEP equivalent.
- Corequisite: MATH 263
- Tutorials assigned by instructor.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
MATH 264. Advanced Calculus for Engineers.
Credits: 3
Offered by: Mathematics and Statistics (Faculty of Engineering)
Terms offered: Summer 2025
View offerings for in Visual Schedule Builder.
Description
Review of multiple integrals. Differential and integral calculus of vector fields including the theorems of Gauss, Green, and Stokes. Introduction to partial differential equations, separation of variables, Sturm-Liouville problems, and Fourier series.
- Restrictions: Open only to students in the Faculty of Engineering. Not open to students taking or having taken MATH 248, MATH 265 or MATH 314.
- Restrictions: Open only to students in the Faculty of Engineering. Not open to students who are taking or have taken MATH 319 or MATH 375.
- (3-1-5)
- Prerequisite: MATH 262 or MATH 151 or MATH 152 or equivalent.
- Corequisite: MATH 263
- Restrictions: Open only to students in the Faculty of Engineering. Not open to students who are taking or have taken MATH 319 or MATH 475.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
Course information not available.
Third ( Fall ) Semester (TOTAL = 17 cr )
COMP 206. Introduction to Software Systems.
Credits: 3
Offered by: Computer Science (Faculty of Science)
This course is not offered this catalogue year.
Description
Comprehensive overview of programming in C, use of system calls and libraries, debugging and testing of code; use of developmental tools like make, version control systems.
- Restriction Note G: Open only to students registered in a Core Group* or Mathematics Group* program, or the Minor in Computer Science. * as defined in the SOCS section, Undergraduate Programs Calendar
- Prerequisite: COMP 202 or COMP 250
- 3 hours
- Prerequisite: COMP 202 or COMP 250
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
COMP 302. Programming Languages and Paradigms.
Credits: 3
Offered by: Computer Science (Faculty of Science)
This course is not offered this catalogue year.
Description
Programming language design issues and programming paradigms. Binding and scoping, parameter passing, lambda abstraction, data abstraction, type checking. Functional and logic programming.
- Restriction Note G: Open only to students registered in a Core Group* or Mathematics Group* program, * as defined in the SOCS section, Undergraduate Programs Calendar
- Prerequisite: COMP 250 or COMP 203
- 3 hours
- Prerequisite(s): COMP 250 and (MATH 240 or MATH 235 or MATH 318 or COMP 230 or PHIL 210)
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 210. Electric Circuits 2.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
Terms offered: Summer 2025
View offerings for in Visual Schedule Builder.
Description
Second-order circuits. Sinusoidal sources and phasors. AC steady-state analysis. AC steady-state power. Laplace transform. Circuit analysis in the s-Domain. Two-port circuits. Elementary continuous signals, impulse functions, basic properties of continuous linear time-invariant (LTI) systems. Frequency analysis of continuous-time LTI systems.
- This course in the Faculty of Engineering is open only to 51³Ô¹ÏÍøstudents.
- Tutorials assigned by instructor.
- This course in the Faculty of Engineering is open only to 51³Ô¹ÏÍøstudents.
- For Fall Term: Limited to Electrical Honours and Computer Engineering students only.
- For Winter Term: Limited to Regular Electrical Engineering students only.
- Tutorials assigned by instructor.
- (4-2-3)
- Prerequisite: ECSE 200
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
ECSE 321. Introduction to Software Engineering.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Design, development and testing of software systems. Software life cycle: requirements analysis, software architecture and design, implementation, integration, test planning, and maintenance. The course involves a group project.
- (3-2-4)
- Prerequisites: ECSE 223 and (COMP 202 or COMP 208 or ECSE 202)
- Tutorials assigned by instructor.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
Fourth ( Winter ) Semester ( TOTAL = 15 cr )
Course information not available.
Course information not available.
ECSE 330. Introduction to Electronics.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Introduction to electronic circuits using operational amplifiers, PN junction diodes, bipolar junction transistors (BJTs), and MOS field-effect transistors (MOSFETs), including: terminal characteristics, large- and small-signal models; configuration and frequency response of single-stage amplifiers with discrete biasing. Introduction to SPICE. Simulation experiments.
- (3-2-4)
- Prerequisite: ECSE 210
- Tutorials assigned by instructor.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
Course information not available.
Fifth ( Fall ) Semester ( TOTAL = 15 cr )
COMP 251. Algorithms and Data Structures.
Credits: 3
Offered by: Computer Science (Faculty of Science)
This course is not offered this catalogue year.
Description
Data Structures: priority queues, balanced binary search trees, hash tables, graphs. Algorithms: topological sort, connected components, shortest paths, minimum spanning trees, bipartite matching, network flows. Algorithm design: greedy, divide and conquer, dynamic programming, randomization. Mathematicaltools: proofs of asymptotic complexity and program correctness, Master theorem.
- Restrictions: Not open to students who have taken or are taking COMP 252.
- Restrictions: Not open to students who have taken or are taking COMP 252.
- 3 hours
- Prerequisites: COMP 250; MATH 235 or MATH 240
- COMP 251 uses basic counting techniques (permutations and combinations) that are covered in MATH 240 but not in MATH 235. These techniques will be reviewed for the benefit of MATH 235 students.
- Restrictions: Not open to students who have taken or are taking: COMP 252 or COMP 260.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 305. Probability and Random Signals 1.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
The basic probability model, the heuristics of model-building and the additivity of probability; classical models; conditional probability and Bayes rule; random variables and vectors, distribution and density functions, expectation; statistical independence, laws of large numbers, central limit theorem; introduction to random processes and random signal analysis.
- (3-2-4)
- Prerequisite: ECSE 303 or ECSE 306.
- Tutorials assigned by instructor.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 429. Software Validation.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Correct and complete implementation of software requirements. Verification and validation lifecycle. Requirements analysis, model based analysis, and design analysis. Unit and system testing, performance, risk management, software reuse. Ubiquitous computing.
- (3-2-4)
- Prerequisite: ECSE 321 or COMP 303
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
ECSE 4xx t1 (3) Technical Complementary 1
Sixth ( Winter ) Semester ( TOTAL = 16 cr )
COMP 360. Algorithm Design.
Credits: 3
Offered by: Computer Science (Faculty of Science)
This course is not offered this catalogue year.
Description
Advanced algorithm design and analysis. Linear programming, complexity and NP-completeness, advanced algorithmic techniques.
- Restriction Note I: Open only to students registered in a Core Group* or Mathematics Group* program, or the Minor in Computer Science. * as defined in the SOCS section, Undergraduate Programs Calendar
- Restriction Note G: Open only to students registered in a Core Group* or Mathematics Group* program, * as defined in the SOCS section, Undergraduate Programs Calendar
- Restriction: Not open to students who have taken or are taking COMP 362.
- 3 hours
- Prerequisite: Either COMP 251 or COMP 252, and either MATH 240 or MATH 235 or MATH 363.
- Restriction: Not open to students who have taken or are taking COMP 362.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
ECSE 427. Operating Systems.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Operating system services, file system organization, disk and cpu scheduling, virtual memory management, concurrent processing and distributed systems, protection and security. Aspects of the DOS and UNIX operating systems and the C programming language. Programs that communicate between workstations across a network.
- (3-1-5)
- Prerequisite: ECSE 324 or COMP 273
- Tutorials assigned by instructor.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
ECSE 428. Software Engineering Practice.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Software engineering practice in industry, related to the design and commissioning of large software systems. Ethical, social, economic, safety and legal issues. Metrics, project management, costing, marketing, control, standards, CASE tools and bugs. The course involves a large team project.
- (3-1-5)
- Students meet with the instructor and/or teaching assistant for one hour each week to discuss their project.
- Prerequisite: ECSE 321
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
XXXX xxx g2 (3) General Complementary 2
ECSE 4xx t2 (3) Technical Complementary 2
Seventh ( Fall ) Semester ( TOTAL = 17 cr )
Course information not available.
ECSE 420. Parallel Computing.
Credits: 3
Offered by: Electrical & Computer Engr (Faculty of Engineering)
This course is not offered this catalogue year.
Description
Modern parallel computing architectures for shared memory, message passing and data parallel programming models. The design of cache coherent shared memory multiprocessors. Programming techniques for multithreaded, message passing and distributed systems. Use of modern programming languages and parallel programming libraries.
- (3-2-4)
- Prerequisite: ECSE 427
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Course information not available.
XXXX xxx s2 (3) Basic Science Complementary 2
ECSE 4xx t3 (3) Technical Complementary 3
ECSE 4xx t4 (3) Technical Complementary 4
NOTES
Core courses are shown in boldface above. All core courses must be passed with a grade "C" or better. Also, a grade of "C" is required for an ECSE xxx core course in order to proceed with its follow-on ECSE xxx course(s), and a grade of "C" is required for a MATH xxx course in order to proceed with its follow-on MATH xxx course(s). A grade of "D" is only acceptable for non-core courses (ie - technical, laboratory, and general complementaries).
Technical Complementary courses are selected from this list.
The Lab Complementary course is normally taken in conjuction with a technical complementary.
General Complementary courses must be chosen according to the rules in Section 8.3.4, Page 229 of the
The Basic Science Complementary courses must be selected from this list.
This sample curriculum is only for students who wish to complete their degree requirements in 7 semesters. Students may, at any time, deviate from this structure. However, it will be the student's responsibility to devise a study plan that has no course conflicts or prerequisite/corequisite violations. Academic advisors are available for course selection.