uwloo

Software Engineering (SE)

19 courses in Waterloo’s course catalog for 2021–22 (Fall 2021, Winter 2022, Spring 2022), from UW Open Data. ucalendar asks programs not to read that year’s calendar, so this stands in for it. Original: ucalendar.uwaterloo.ca/2122/COURSE/course-SE.html

SE 101 Introduction to Methods of Software Engineering

An introduction to some of the basic methods and principles used by software engineers, including fundamentals of technical communication, measurement, analysis, and design. Some aspects of the software engineering profession, including standards, safety and intellectual property. Professional development including résumé skills, interview skills, and preparation for co-op terms. Safety-orientation training, including WHMIS assessment, is included in this course. [Offered: F]

Prereq: Software Engineering students only

LEC · Course ID 010030On ucalendarSE 101 today

SE 102 Seminar

General seminar. [Offered: W]

Prereq: Software Engineering

SEM · Course ID 011339On ucalendarSE 102 today

SE 201 Seminar

General seminar. [Offered: F]

Prereq: Software Engineering

SEM · Course ID 011341On ucalendarSE 201 today

SE 202 Seminar

General seminar. [Offered: S]

Prereq: Software Engineering

SEM · Course ID 011330On ucalendarSE 202 today

SE 212 Logic and Computation

Formal logic. Proof systems and styles. Rudimentary model theory. Formal models of computation. Logic-based specification. Correctness proofs. Applications in software engineering. [Offered: F]

Prereq: MATH 135; Software Engineering students only

LEC · Course ID 010031On ucalendarSE 212 today

SE 301 Seminar

General seminar. [Offered: W]

Prereq: Software Engineering

SEM · Course ID 011335On ucalendarSE 301 today

SE 302 Seminar

General seminar. [Offered: F]

Prereq: Software Engineering

SEM · Course ID 011336On ucalendarSE 302 today

SE 350 Operating Systems

An introduction to the fundamentals of operating system function, and implementation. Topics include concurrency, synchronization, processes, threads, scheduling, memory management, file systems, device management, and security. [Offered: W]

Prereq: CS 240, (CS 246 or 247), ECE 222; Software Engineering. Antireq: CS 350, ECE 254, 354, MTE 241

LEC · Course ID 013372On ucalendarSE 350 today

SE 380 Introduction to Feedback Control

Introduction to control systems. Advantages of closed-loop feedback systems. The role of the system mathematical model. Block diagrams and signal flow graphs. The basic control system design problem, stability in control systems. Frequency response analysis techniques. Root-locus analysis. Elementary lead-lag compensation. [Offered: F]

Prereq: MATH 213; Software Engineering. Antireq: ECE 380, ME 360, MTE 360, SYDE 352

LEC · Course ID 013373On ucalendarSE 380 today

SE 390 Design Project Planning

Students undertake a substantial customer-driven group project as part of the SE 390/490/491 design-project sequence covering all major phases of the software-engineering lifecycle. Lectures describe expectations and project-planning fundamentals. Students form groups, decide on a project concept, complete a project-approval process, develop high-level requirements for the project, perform a risk assessment, develop a test plan, and complete a first-iteration prototype. Social, legal, and economic factors are considered. [Offered: F]

Prereq: CS 240, (CS 246 or 247);PD 10; Software Engineering students only

LEC · Course ID 012940On ucalendarSE 390 today

SE 401 Seminar

General seminar. [Offered: S]

Prereq: Software Engineering

SEM · Course ID 011337On ucalendarSE 401 today

SE 402 Seminar

General seminar. [Offered: W]

Prereq: Software Engineering

SEM · Course ID 011338On ucalendarSE 402 today

SE 463 Software Requirements Specification and Analysis

Introduces students to the requirements definition phase of software development; models, notations, and processes for software requirements, identification, representation, analysis, and validation. Cost estimation from early documents and specifications. [Note: Lab is not scheduled and students are expected to find time in open hours to complete their work. Offered: S]

Prereq: CS 246 or 247; Software Engineering. Antireq: CS 445, ECE 451.

LEC · Course ID 010034On ucalendarSE 463 today

SE 464 Software Design and Architectures

Introduces students to the design, implementation, and evolution phases of software development. Software design processes, methods, and notation. Implementation of designs. Evolution of designs and implementations. Management of design activities. [Note: Lab is not scheduled and students are expected to find time in open hours to complete their work. Offered: F]

Prereq: CS 246 or 247; Software Engineering students only. Antireq: CS 446, ECE 452

LEC · Course ID 010035On ucalendarSE 464 today

SE 465 Software Testing and Quality Assurance

Introduces students to systematic testing of software systems. Software verification, reviews, metrics, quality assurance, and prediction of software reliability and availability. Related management issues. [Note: Lab is not scheduled and students are expected to find time in open hours to complete their work. Offered: W]

Prereq: CS 246 or 247; Software Engineering students only. Antireq: CS 447, ECE 453

LEC · Course ID 010036On ucalendarSE 465 today

SE 490 Design Project 1

Continuing from SE 390, students undertake a substantial customer-driven group project. Project groups establish and maintain project control processes, delivering a series of iterations on their initial SE 390 prototype. Adaptive methodologies are encouraged and supported. [Offered: S]

Prereq: SE 390; Software Engineering

LEC · Course ID 012941On ucalendarSE 490 today

SE 491 Design Project 2

Final implementation, testing, and communication of the design project started in SE 390. Technical presentations by groups. Analysis of social, legal, and economic impacts. Final release of the project. Project retrospective. [Offered: W]

Prereq: SE 490; Software Engineering

LEC · Course ID 012942On ucalendarSE 491 today

SE 498 Advanced Topics in Software Engineering

See the course offerings list for topics available. [Offered: As available]

Prereq: Level at least 3B Software Engineering

LEC · Course ID 012292On ucalendarSE 498 today

SE 499 Project

A software engineering project requiring the student to demonstrate initiative and assume responsibility. The student normally proposes their own project, which must involve substantial engineering science or engineering design. The student must find a faculty supervisor. A project report is required at the end of the term. Plan consent required. [Offered: F, W, S]

Prereq: Level at least 4A Software Engineering

PRJ · Course ID 012293On ucalendarSE 499 today