Modules
This module offers an in-depth exploration of artificial intelligence (AI) and its transformative role in the development of advanced software systems. It introduces key theoretical approaches and practical techniques for designing and deploying intelligent technologies, empowering you with the skills to build AI-driven solutions.
Key topics covered include:
- Introduction to Artificial Intelligence: Understanding the foundations of AI and its significance in modern software development.
- Theoretical Approaches to AI: Exploring algorithms and models that underpin intelligent systems, such as decision trees, neural networks, and reinforcement learning.
- Practical AI Implementation: Gaining hands-on experience with AI techniques, including machine learning, natural language processing, and computer vision, through coding exercises and projects.
- Designing and Deploying Intelligent Systems: Examining methods for building robust, scalable, and ethically sound AI technologies.
- AI in Various Domains: Critically evaluating how AI is applied across industries such as business, healthcare, education, law, government, and scientific research, along with the ethical and societal implications of these applications.
This module blends theory with practical application, equipping you to develop intelligent systems and critically assess their impact in a wide range of real-world contexts.
The Robotics module provides an introduction to the foundational principles of robotics, exploring the theoretical aspects that underpin the design, application, and ethical considerations of robotic systems.
You will begin by examining the fundamental question: What is a robot? This includes understanding the diverse applications of robots across industries and their role in society. The module also delves into the ethical implications of robotics, such as their impact on employment, privacy, and safety.
Key technical topics include an overview of mechatronics, which integrates mechanical, electronic, and computer engineering; sensors, which enable robots to perceive their environment; and control systems, which ensure robots can perform tasks accurately and autonomously.
The module is assessed in a practical project where you will design a simulated robot, applying the concepts learned to demonstrate your understanding of robotic systems.
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.
This module offers an in-depth exploration of artificial intelligence (AI) and its transformative role in the development of advanced software systems. It introduces key theoretical approaches and practical techniques for designing and deploying intelligent technologies, empowering you with the skills to build AI-driven solutions.
Key topics covered include:
- Introduction to Artificial Intelligence: Understanding the foundations of AI and its significance in modern software development.
- Theoretical Approaches to AI: Exploring algorithms and models that underpin intelligent systems, such as decision trees, neural networks, and reinforcement learning.
- Practical AI Implementation: Gaining hands-on experience with AI techniques, including machine learning, natural language processing, and computer vision, through coding exercises and projects.
- Designing and Deploying Intelligent Systems: Examining methods for building robust, scalable, and ethically sound AI technologies.
- AI in Various Domains: Critically evaluating how AI is applied across industries such as business, healthcare, education, law, government, and scientific research, along with the ethical and societal implications of these applications.
This module blends theory with practical application, equipping you to develop intelligent systems and critically assess their impact in a wide range of real-world contexts.
The Robotics module provides an introduction to the foundational principles of robotics, exploring the theoretical aspects that underpin the design, application, and ethical considerations of robotic systems.
You will begin by examining the fundamental question: What is a robot? This includes understanding the diverse applications of robots across industries and their role in society. The module also delves into the ethical implications of robotics, such as their impact on employment, privacy, and safety.
Key technical topics include an overview of mechatronics, which integrates mechanical, electronic, and computer engineering; sensors, which enable robots to perceive their environment; and control systems, which ensure robots can perform tasks accurately and autonomously.
The module is assessed in a practical project where you will design a simulated robot, applying the concepts learned to demonstrate your understanding of robotic systems.
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.
Recognition of the need to apply data science applications in organisations.
Establishment of correct selection and application of data science techniques (i.e. data shaping, model type selection, testing and application) in various organisational contexts.
Application of common machine learning tools (e.g. logistic regression, non-linear model estimation, neural network) in a common development environment (e.g. R, Python, Scala) in preparation for the real world context.
Evaluation of the role of ethics in the application of data science techniques.