CMPUT 664 - Secure Software Engineering


To study what it takes to develop secure software, this course will discuss the following topics in the context of software security: buffer overflow, integer overflow, speculative execution, side channels, smart contracts, fuzzing, app permissions, mobile ads, computer architecture, smart IoT devices, autonomous vehicles, web apps.


After this course, you will get a flavour of both classical and state-of-the-art research in the field of software security through discussing papers that cover various areas of software security.

Course Work

  • Paper seminars
  • Course project

Related Research Areas

  • Computer Security
  • Formal Methods
  • Software Engineering
  • Software Systems