|
US Credits
|
UK Credits
|
- COMP 4101 Introduction to Programming
This course provides the fundamentals of object-oriented programming. This will include usage of variables, objects, classes; assignment and control through statements, loops, functions, procedures, interaction between objects and inheritance. This course may introduce any current specialists programming topics, eg. programming for mobile applications.
|
4 |
16 |
- COMP 5101 AI for Games
This course introduces students to fundamental AI techniques and their applications in game development. Students will learn to design and implement simple AI-driven behaviours to control non-player characters (NPCs) and create dynamic interactions in 2D game environments. Building upon earlier programming skills, this course offers practical insights into integrating AI logic into games, emphasizing interactivity and engaging gameplay.
|
4 |
16 |
- COMP 5102 Cyber Security
This course considers online security and protection. Students will learn how to identify threats and take steps to reduce vulnerabilities. The course will frame digital safety in the context of the Web, introducing concepts like malware, viruses, Trojans, network security, cryptography, identity theft and risk management, and will outline contemporary security strategies being developed. This class would be of particular interest to business, communications and international relations students. It is highly recommended that students have access to the use of a laptop and a smartphone for the duration of the course.
|
4 |
16 |
- COMP 5103 Ethical and Sustainable Computing
This course explores ethics and sustainability in the context of computing technologies giving an overview of ethical theories, sustainable practices and their application to computer science. Students use the ACM and IEEE codes of conduct frameworks to explore in detail ethical issues in data collection, surveillance, bias and fairness in AI algorithms, as well as the BCS codes of ethics for computing professionals, whistleblowing and ethical responsibilities in the workplace, ethical decision-making, frameworks for IT professionals. Case studies are used across various contexts relating UN SDGs to computer architectures, networks, data storage systems and how they could be improved to be more ethical and sustainable.
|
4 |
16 |
- COMP 5104 Human Computer Interaction
This course introduces key concepts, methods, and tools used in Human-Computer Interaction (HCI). Students will explore the design, evaluation, and implementation of user interfaces, focusing on how to create systems that are efficient, usable, and enjoyable for a diverse range of users. By the end of the course, students will have practical experience in user research, UI interface design, prototyping, designing for responsive and adaptive interfaces and usability testing ready for implementation by a programmer.
|
4 |
16 |
- COMP 6101 Advanced Secure Programming
This module delves into the advanced principles of secure programming, focusing on identifying and addressing programming errors that lead to system vulnerabilities. Students will explore various secure coding techniques and best practices across several programming languages (e.g., C, C++, python). The course emphasizes balancing security
with performance, usability, and other software quality attributes, enabling students to create robust, secure code. Key topics include string security, dynamic memory management, concurrency, and file I/O security, along with mitigation strategies for common vulnerabilities such as buffer overflows and race conditions.
|
4 |
16 |
- COMP 6103 Web Application Development
This course focuses on developing modern web applications using a popular web framework and a lightweight database engine. Students will learn the fundamental concepts of backend web development, including model-view-controller (MVC) design patterns, database modelling, URL routing, form handling, and user authentication. Additionally, students will
gain hands-on experience with a lightweight database solution and the integration of frontend technologies with the back-end framework’s templating system. Emphasis will also be placed on deployment, security, and performance optimization. By the end of the course, students will be able to create, deploy, and maintain scalable web applications.
|
4 |
16 |
| Minor Requirements |
12 |
48 |