Schedules: class schedule , midterm schedule, final exam schedule,Ìýclass prof hour schedule
Spring 2019 Class reps
Academic reps:
EngSoc Reps:
SE Society Reps:
Women in SE:
MathSoc Reps:
WEEF Reps:
MEF Rep:
Athletic Rep:
Yearbook:
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
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
- 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.
- Students may choose to take three electives in 4A and four electives in 4B, instead of two in 4A and five in 4B.Ìý
- 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.
- 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.
- Students may replaceÌý and one of their unrestricted electives with the combination ofÌý and .
- 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.