Class of 2022 2B

Spring 2019 Class reps

Class rep meetings

  • Wednesday May 22, 11:30am-12:20pm, DC-2102
  • Wednesday June 26th, 11:30am-12:20pm, DC-2102
  • Wednesday July 24th, 11am:30-12:20pm, meet at DC 2539

* lunch will be provided

Class Prof: Dan Berry

class prof hour schedule

2017 - 2018 Course sequence

Term Course and Title Cls Tut Lab

1A Fall

2017Ìý

ÌýProgramming Principles 3 1 2
Classical Mechanics 3 1 1.25
ÌýLinear Algebra for Engineering 3 2 0
ÌýCalculus 1 for Engineering 3 2 0
ÌýAlgebra for Honours Mathematics 3 1 0
ÌýIntroduction to Methods of Software Engineering* 1 0 2

1B Winter

2018Ìý

ÌýSeminar 1 0 0
ÌýIntroduction to Data Abstraction and Implementation 3 1 2
Electricity and Magnetism 3 1 1.25
ÌýDigital Circuits and Systems 3 1 1.25
ÌýLinear Circuits 3 2 1.25
ÌýCalculus 2 for Engineering 3 2 0

2A Fall

2018Ìý

ÌýSeminar 1 0 0
ÌýChemistry for Engineers 3 2 0
ÌýFoundations of Sequential Programs 3 1 2
ÌýDigital Computers 3 1 1.25*
ÌýLogic and Computation 3 1 0
ÌýStatistics for Software Engineering (see note 5) 3 1 0
Communication Elective (see note 6) 3 + +

2B Spring

2019Ìý

ÌýSeminar 1 0 0
ÌýData Structures and Data Management 3 0 3
ÌýSoftware Engineering Principles ** 3 1 3
ÌýEngineering Economics:Ìý Financial Management for Engineers 3 1 0
ÌýIntroduction to Combinatorics 3 1 0
Elective (see note 1) 3 + +
ÌýWork-term Report

3A Winter

2020Ìý

ÌýSeminar 1 0 0
ÌýAlgorithms 3 0 3
ÌýUser Interfaces ** 3 0 1
ÌýAdvanced Mathematics for Software Engineers 3 1 0
ÌýOperating Systems 3 1 1.25
ÌýSoftware Testing and Quality Assurance ** 3 1 3
Elective (see note 1) 3 + +

3B Fall

2020Ìý

ÌýSeminar 1 0 0
ÌýConcurrent and Parallel Programming 3 0 3
ÌýIntroduction to Database Management 3 0 0
ÌýIntroduction to Feedback Control 3 1 1.25
ÌýDesign Project Planning ** 2 0 2
ÌýSoftware Design and Architectures ** 3 1 3
Elective (see note 1) 3 + +
ÌýWork-term Report

4A Spring

2021Ìý

ÌýSeminar 1 0 0
ÌýComputer NetworksÌý 3 1 1.25
ÌýSoftware Requirements Specification and Analysis ** 3 1 3
ÌýDesign Project 1 ** 2 0 9
Two Electives (see notes 1 and 2) 3 + +
ÌýWork-term ReportÌý

4B Winter

2022Ìý

ÌýSeminar 1 0 0
ÌýDesign Project 2 *** 2 0 2
Five Electives (see notes 1 and 2) 3 + +

Advanced technical electives (ATEs)

The advanced technical electives comprise fourth-year course offerings in CS or ECE. Students are advised to plan ahead when selecting ATEs. Most ATEs are not offered every term, and some ATEs have other ATEs as prerequisites. Other courses may be approved by the program advisors.

One of the following CS courses (CS List):

Principles of Programming Languages
Compiler Construction
Database Systems Implementation
Human-Computer InteractionÌý
Computer Architecture
Real-time Programming
Distributed Systems
System Performance Evaluation
Computer Security and Privacy
ÌýFormal Languages and Parsing
ÌýAlgorithm Design and AnalysisÌýÌý

Ìý Introduction to Machine LearningÌý
Computational VisionÌý
Statistical and Computational Foundations of Machine LearningÌý
Introduction to Artificial IntelligenceÌýÌý
ÌýIntroduction to Symbolic ComputationÌýÌý
Introduction to Computer Graphics

One of the following ECE courses (ECE list):

ÌýCryptography and System Security
Higher Level Network Protocols
Image Processing
Communications Networks
Embedded Computer SystemsÌý
ComputerÌýArchitecture
Distributed Computing
Embedded SoftwareÌý
Ìý Cooperative and Adaptive Algorithms
Fundamentals of Computational Intelligence
Computer Security
Programming for Performance
Digital Control SystemsÌý
Robot Dynamics and Control
Multivariable Control Systems

One additional course from the CS and ECE lists above

Science electives

Normally these courses are in the natural sciences, chosen from the list below. Alternate courses may be chosen in consultation with the SE Program Advisors.

Science Elective Courses:
,Ìý(Ìýand ), ,Ìý, , , , (and ), , , ,Ìý, ,Ìý, , , ,ÌýÌý

Linkage electives

At least one from each of the areas of Societal Issues, Humanities and Social Sciences, and Communications, as specified below. Students should be aware that these courses may have enrolment limits, or may not fit their schedules.

One course on Societal Issues:
,Ìý List A

One course on Communication:
,Ìý/, , , ,

OneÌýadditional course on Humanities and Social Sciences:
List C

Notes

  1. There are eleven electives.ÌýAs detailed above, these electives must includeÌýthree advanced technical electives, two science electives, andÌýthree linkage electives.ÌýFor their remaining three electives, students may choose to takeÌýadditional courses from theÌýelective lists above or any other 0.5 credit course(s) for which they meet the requisites.ÌýAdvanced Technical Electives may not be taken before the 3A term.
  2. Students may choose to take three electives in 4A and four electives in 4B, instead of two in 4A and five in 4B.Ìý
  3. Students enrolled in Software Engineering will only be permitted to use the WD and WF (seeÌý for descriptions) provisions used in the Faculty of Mathematics to withdraw from extra courses taken above and beyond the degree requirements.
  4. With the permission of the program advisors,Ìý may beÌýtaken inÌý3A or 3B and replaced with a technical elective in 4A if required as a prerequisite for an ATE.
  5. Students may replaceÌý and one of their unrestricted electives with the combination ofÌý and .
  6. The Linkage elective on Communication is normally taken in the 2A term. It must be completed with a grade of at least 60% prior to enrolling in the 3A term.

Ìý

Strong communication skills are essential to academic, professional, and personal success. As such, Software Engineering students must take a course from the Linkage Elective Communication List in the 2A term. This elective list parallels the Math Communication Skills Requirements List 1. Communication skills are further developed and evaluated in three work-term reports (described below) and in , , , and .


Use of this information for the purposes of solicitation of business or contributions is forbidden.