Current Courses (2024/2025)
SYSC 3120: Software Requirements Engineering (Fall 2024) Current techniques, notations, methods, processes and tools used in Requirements Engineering. Requirements elicitation, negotiation, modeling requirements, management, validation. Skills needed for Requirements Engineering and the many disciplines on which it draws. Requirements analysis: domain modeling, modeling object interactions; UML modeling. Introduction to software development processes.
SYSC 4120: Software Architecture and Design (Winter 2025) Introduction and importance of software architectures and software system design in software engineering. Current techniques, modeling notations, methods, processes and tools used in software architecture and system design. Software architectures, architectural patterns, design patterns, software qualities, software reuse.
SYSC 5805: Model-Driven Security Engineering (Winter 2025) Fundamentals of security engineering and its activities, with emphasis on model-driven approaches for asset identification, threat and risk assessment, security requirements elicitation, security controls selection, security evaluation, and security assurance for software intensive-systems. Examination of challenges for engineering secure software.
Past Courses
- SYSC 5805: Model-Driven Security Engineering (Winter 2023)
- SYSC 4120: Software Architecture and Design (Winter 2023)
- SYSC 4810: Introduction to Network and Software Security (Fall 2018, 2019, 2020, 2021, 2022)
- SYSC 5807X: Advanced Topics in Computer Systems – Security Engineering (Winter 2019, 2020, 2021, 2022)
- SYSC 3120: Software Requirements Engineering (Winter 2018, 2019, 2020, 2021, 2022)
- SYSC 3020: Introduction to Software Engineering (Summer 2018)