Software and application security

CYM070

This module explores the key aspects of software and network/distributed applications and their development life cycle which are at the heart of our lives, businesses and infrastructure.

This module introduces the principles around software and applications, including security and the issues of malicious software. You’ll study the techniques used for secure software development, the principles of secure programming and the most common software vulnerabilities that can be introduced during software development. At the end of the module, you’ll discuss the wider considerations and research direction for software and application security.

You’ll explore key aspects of software and application security through a number of topical case studies, such as web and cloud. This module complements the Computer Systems Security and Infrastructure Security modules.

Topics covered:

  • An introduction to software and application security
  • Principles of secure software, the secure software development lifecycle and development methodologies
  • Principles of secure programming and security
  • Software vulnerabilities
  • Malicious software
  • Wider considerations in software and application security.

Learning outcomes:

On successful completion of this module, you will be expected to be able to:

  • explain the importance of security in the development of applications
  • consider the application of the secure software development life cycle
  • explain the main issues relating to software security and their effect on the security of computer systems
  • interpret how software vulnerabilities can be used to manipulate the execution of applications
  • consider the threat posed by malicious software and a selection of the techniques used in malicious software
  • show a critical appreciation of some of the trends that are likely to influence software security.

Assessment:

  • End of module examination (100%)