Teaching

COMP 303 - Software Design Fall 2024
COMP 555 - Information Privacy Winter 2024
COMP 303 - Software Design Fall 2023
COMP 555 - Software Privacy Fall 2022
COMP 303 - Software Design Fall 2022
COMP 529 - Software Architecture Winter 2022
COMP 303 - Software Design Fall 2021
COMP 599 - Topics in Mobile Application Development Winter 2021
COMP 303 - Software Design Fall 2020
COMP 599 - Topics in Mobile Application Development Winter 2020
COMP 303 - Software Design Fall 2019
COMP 529 - Software Architecture Winter 2019
COMP 250 - Introduction to Computer Science Winter 2019
COMP 303 - Software Design Fall 2017
COMP 303 - Software Design Winter 2017
COMP 762 - Software Evolution Fall 2017
COMP 303 - Software Development Winter 2016
COMP 529 - Software Architecture Fall 2015
COMP 250 - Introduction to Computer Science Winter 2015
COMP 303 - Software Development Fall 2014
COMP 762 - Recommendation Systems Winter 2014
COMP 303 - Software Development Fall 2013
COMP 529 - Software Architecture Winter 2013
COMP 303 - Software Development Fall 2012
COMP 762 - Recommendation Systems for Software Engineering Winter 2012
COMP 303 - Software Development [Best Projects] Fall 2010
COMP 529 - Software Architecture Winter 2010
COMP 303 - Software Development [Best Projects] Fall 2009
COMP 303 - Software Development [Best Projects] Fall 2008
COMP 762 - Software Evolution Fall 2008
COMP 303 - Software Development [Best Projects] Fall 2007
COMP 529 - Software Architecture Fall 2007
COMP 762 - Software Evolution Winter 2007
COMP 303 - Programming Techniques [Best Projects] Fall 2006
COMP 529 - Software Architecture and Analysis Fall 2006
COMP 762 - Software Evolution Fall 2005
COMP 303 - Programming Techniques Fall 2005
COMP 762 - Software Evolution Fall 2004

From the Course Catalog


COMP 303 - Software Design: Principles, mechanisms, techniques, and tools for object-oriented software design and its implementation, including encapsulation, design patterns, and unit testing.

COMP 555 - Information Privacy: Conceptual foundations of information privacy: security and cryptography, privacy by design, privacy threats. Technical controls for supporting privacy: authorization, authentication, access control, malware and intrusion detection. Application-specific privacy concerns of databases, web and mobile applications, cloud storage.

COMP 529 - Software Architecture: Development, analysis, and maintenance of software architectures, with special focus on modular decomposition and reverse engineering.