Course Description

Topics include plan-driven development, Agile development, software requirements elicitation, software design and analysis, design patterns, software testing, software maintenance, software observability, software robustness, safety and security, AI in software engineering, And introduction to tools such as Git, GitHub, Azure DevOps, and GitHub AI CoPilot.

Credit Hours: 36
Location: TH242
Period: Sep 06, 2023 to Dec 05, 2023
Time: Monday: 8:00 to 9:30, Friday: 8:00 to 9:30
TAs: Ghazal Khodabandeh (zw22sr@brocku.ca), Alireza Ezaz (ow23gq@brocku.ca), Nikta Gohari Sadr (zu22of@brocku.ca)
Prerequisite: COSC 2P03 (minimum 60 percent)
Exclusions: Completion of this course will replace previous assigned grade and credit obtained in COSC 4F00.

  • Software Engineering (10e) by Ian Sommerville, ISBN: 9780133943030.
  • Software Engineering: A Practitioner’s Approach (9e) by Roger S. Pressman, ISBN: 9780078022128.

Tentative Outline

  • Introduction to Software Engineering
  • Software Processes & Agile
  • Requirements Engineering
  • System Modelling
  • Architectural Design and Design Patterns
  • Design & Implementation
  • Software Testing
  • Software Evolution and Maintenance
  • Observable Systems
  • Safety and Security Engineering
  • Artificial Intelligence in Software Engineering

Office hours

  • In-person: Monday, Friday: 9:30 to 11
  • Online session: by appointment