Modules

This module introduces students to developing applications for mobile devices on a major platform such as Android or iOS. This includes mobile device specific aspects such as working with location services, SDKs and libraries, making network requests, concurrency and dealing with resource limitations.

From a programming theory and application perspective, the module will consider, working with and further developing existing code, including the refactoring process, design patterns, the SOLID principles andwill  introduce students to the fundamentals of functional programming. Students will also consider the differing features of programming languages (such as type systems)

The module offers a comprehensive exploration of design thinking and its integration with human-centred design principles and practices to realise highly usable interactive systems. By the end of the module, students will be equipped to design innovative and user-friendly digital products and services, balancing business objectives with user satisfaction. This is supported by a focus on collaboration and teamwork, ensuring that the practices and processes of the industry are reflected. Over its duration, the module will engage with topics including, but not limited to, the following:

  • Human-centred design and ISO 9241-210
  • Balancing business goals with user needs
  • UX research
  • Experience mapping
  • Design thinking
  • Information architecture
  • Progressive enhancement
  • User interface design techniques
  • Defining inclusive design and accessibility
  • Style-guides and specifications for developers
  • Design sprints for software innovation
  • User testing and evaluation

The module covers a range of topics that include:

  • Basic cloud computing concepts, advantages, and service delivery models.
  • Identity and Access Management (IAM) for centrally managing access to cloud resources.
  • Secure networking practices within the cloud environments.
  • Design and implementation of highly available, and secure cloud architecture.
  • Design and implementation of cloud resources such as Virtual servers, Databases, and storage solutions.
  • Introduction to serverless architecture within the cloud environments.
  • Application Data protection, both in transit and at rest, with in the cloud environments.
  • Logging and Monitoring within the cloud.
  • Incident Response Management within the cloud environments.

Students will undertake a large self-directed software project in a specialist topic of their choice with guidance and support from a dedicated academic supervisor.

The project will begin with an appraisal of said topic, usually through a literature review and/or a commercial assessment of viability. This will be followed by planning and creation of a practical software artefact covering an implementation lifecycle, making use of project management techniques.

Ethical issues will be explored, leading to required approval for quantitative and/or qualitative testing, with results then analysed and used to inform futher development and to draw conclusions against a hypothesis.

This module is introduces the theory and practice of network protocol design, maintenance and evalutation. We will build from first principles towards a professional, research and development approach to the subject. This will include topics such as:

  • Routing
  • Traffic engineering
  • Distributed protocol design
  • Use of discrete event simulation tools
  • Evaluation and analysis of protocols
  • Mobile and wireless networking
  • Graph theory
  • Network optimisation
  • Computational complexity
  • Software defined networking
  • Information centric networking

The module combines relevant theoretical abstractions with essential practical networking approaches to build a strong profile of skills, abilities and knowledge for the successful student.

The module covers a range of topics that include: 

  • Open Source Intelligence (OSINT)
  • Social Media Intelligence (SOCMINT)
  • Human Intelligence (HUMINT)
  • Cyber crime
  • Cyber activism
  • Cyber espionage
  • Information Operations (INFO-OPS)
  • Incident Response

Students will learn how to use indicators of compromise to detect initial incidents.  YARA rules will be created to perform threat hunting.  Cyber Kill Chain and SANS incident response models will be used to map out the entire attack methodology used by threat actors. The module involves understanding critical infrastructure hacking.  Previous breach reports will be used to identify attackers' capabilities in order to identify potential threat actors.