General course objectives
To provide an overview of the most critical application security risks and introduce proactive techniques to prevent them.
Learning objectives
A student who has met the objectives of the course will be able to:
- Understand the basic principles of security-by-design
- Understand basic approaches to manage security aspects in software
- Identify security requirements in a given application
- Identify common vulnerabilities
- Describe a given application at a high-level using models
- Understand the spectrum of security assurance methodologies (“Formal Method Mountain”)
- Identify tools to find and mitigate vulnerabilities
Content
The course will cover the following topics:
- Basic principles of security-by-design
- Approaches to manage security aspects in software
- Software security requirements
- Common software vulnerabilities
- Application threat modelling
- Security assurance spectrum
- Tools to find and mitigate software vulnerabilities