Overview

This unit aims to introduce secure software development issues from the design stage, through to implementation, testing and deployment. Topics studied include the secure software development life cycle, secure software design principles, threat evaluation models, secure coding and development practices, software security testing, deployment and maintenance. You are provided with … For more content click the Read More button below.

Offerings

S1-01-CLAYTON-FLEXIBLE
SSB-01-CLAYTON-BLD-BLK

Contacts

Chief Examiner(s)

Dr Hui Cui

Learning outcomes

On successful completion of this unit, you should be able to:
1.

Understand the fundamentals of software security.

2.

Model the possible software vulnerabilities and threats for a given application system

3.

Apply a wide range of tools and technologies to evaluate software vulnerabilities.

4.

Apply appropriate methods for the design and realisation of secure software for memory exploits and web applications security.

5.

Analyse and evaluate security properties of concurrent and networked applications.

6.

Discuss and evaluate the significance of various software security weaknesses.

7.

Describe and select mitigation strategies for common vulnerabilities and attacks.

8.

Investigate, implement and exploit security vulnerabilities in a lab environment.

Teaching approach

Enquiry-based learning
Active learning
Problem-based learning

Assessment

1 - Assignment 1
2 - Assignment 2
3 - Assignment 3

Scheduled and non-scheduled teaching activities

Laboratories
Seminars

Workload requirements

Workload

Availability in areas of study

Advanced computer science
Computer networks and security
Cybersecurity
Software development