production
Skip to Content

Postgraduate Computing Science 2022-2023

CS502A: INTRODUCTION TO CYBERSECURITY

15 credits

Level 5

First Sub Session

This course presents the fundamental concepts of Cyber Security, including but not limited to cryptography, network protocols, access control, authentication, security management and web security. This course provides students with the Cyber Security principles for continuing learning and working in the area of Cyber Security. 

CS502B: SECURITY IN EMERGING NETWORKS

15 credits

Level 5

First Sub Session

This course will cover emerging technologies in cybersecurity such as Software-defined Networking (SDN), Internet of Things (IoT), and Blockchain. It will deliver the role of emerging technologies in cyberspace, what impact we will have on our legacy system and how we can remain agile and efficient. The course will provide a foundation for identifying the significance of technological advancements and cybersecurity issues, and challenges raised in adapting the 5G & beyond network.

CS502C: ENTERPRISE SECURITY ARCHITECTURE

15 credits

Level 5

First Sub Session

A major contributing factor to cyber risk is the lack of well-designed cybersecurity architecture that protects against ever-evolving cyber-attacksA well-designed architecture provides a streamlined workflow for security and non-security practitioners, along with increasing the robustness of an organisation’s cybersecurityIn this course you will gain the advance knowledge to develop, design and analyse security solution architectures to meet your organisation's cybersecurity objectives.   

CS502D: ARTIFICIAL INTELLIGENCE, PRIVACY AND CYBERSECURITY

15 credits

Level 5

First Sub Session

This course will provide an introduction to Artificial Intelligence, and how it relates to Cybersecurity and Privacy. It will discuss how AI can be used for both defensive and offensive purposes in Cybersecurity. The course will also discuss the security and privacy issues arising from the use of AI systems in software systems. 

CS502K: SYMBOLIC AI

15 credits

Level 5

First Sub Session

This course presents the fundamental techniques of Artificial Intelligence, used in system such as Google Maps, Siri, IBM Watson, as well as industrial automation systems, and which are core to emerging products such as self-driving vehicles. This course will equip the student to understand how such AI technologies operate, their implementation details, and how to use them effectively. This course therefore provides the building blocks necessary for understanding and using AI techniques and methodologies.

CS5062: MACHINE LEARNING

15 credits

Level 5

First Sub Session

This course will deliver the most sophisticated Machine Learning methodologies and algorithms which would be illustrated across a wide range of applications including but not limited to images, videos, health, time series data, language processing, etc. This course provides students with the Machine Learning principles for continuing learning and working in the area of Data Science and Artificial Intelligence. 

CS5063: EVALUATION OF AI SYSTEMS

15 credits

Level 5

First Sub Session

One of the biggest challenges in Artificial Intelligence is evaluating how well AI systems work.   This course will provide students of our MSc in AI with knowledge of core evaluation concepts, approaches, tools, techniques and technologies; we will also look at software testing of AI systems.

CS5075: HUMAN COMPUTER INTERACTION

15 credits

Level 5

First Sub Session

This course looks at why a computer system that interacts with human beings needs to be usable. It covers a set of techniques that allow usability to be taken into account when a system is designed and implemented, and also a set of techniques to assess whether usability has been achieved. Weekly practical sessions allow students to practice these techniques. The assessed coursework (which is normally carried out by groups of students) gives an opportunity to go through the design process for a concrete computer system, with a particular focus on ensuring usability.



CS5076: INTRODUCTION TO PROGRAMMING

15 credits

Level 5

First Sub Session

Students will be exposed to the basic principles of computer programming, e.g. fundamental programming techniques, concepts, algorithms, data structures, and object orientated programming. The course contains lectures where the principles are systematically developed. As the course does not presuppose knowledge of these principles, we start from basic intuitions so that students know the basics of programming as the foundation for their future study.

CS5077: WEB DEVELOPMENT

15 credits

Level 5

First Sub Session

Students will learn to develop modern web applications using a variety of languages and frameworks as part of their degree. A key focus will be on the integration of HTML with CSS and JavaScript with the support of the NODE.js runtime environment to develop dynamic web applications. The course focuses on building basic software programming skills required to become full stack developers.  

CS5079: APPLIED ARTIFICIAL INTELLIGENCE

15 credits

Level 5

First Sub Session

This course will allow students to use cutting-edge AI technologies to investigate the creation and application of AI systems. Such tools include deep learning libraries and simulation environments.

CS5097: DATABASE SYSTEMS AND BIG DATA

15 credits

Level 5

First Sub Session

This course will be of interest to anyone who wishes to learn to design and query databases. The course aims to teach the material using case studies from real-world applications. You will develop a critical understanding of the principal theories, principles and concepts, such as modelling techniques used in the design, administration and security of database systems. You will also learn core theoretical concepts such as relational algebra, file organisation and indexing. At the end of this course you will be able to design and build Web and cloud-based databases and have a critical understanding of how database-driven applications operate.







CS5099: INFORMATION SECURITY

15 credits

Level 5

First Sub Session

This course provides a comprehensive introduction to techniques for engineering secure information systems. Identity theft and fraudulent scams are some examples where computer systems have been utilised and compromised, and information exploited in ways not intended or authorized. In addition to developing critical knowledge of the theories, principles and concepts associated with information security and systems, this course will enhance your understanding of core topics such as access control, usability and psychology, security policy, ethical hacking, and cryptography. Students study how users and organisations must become better prepared to best exploit emerging technologies and issues arising.

CS551A: FUNDAMENTALS OF SOFTWARE PROJECT MANAGEMENT

15 credits

Level 5

Second Sub Session

Software Project Management skills are fundamental in current software-centric industrial development projects, whether these focus on purchasing and customising an off-the-shelf application or on developing a complete system from scratch. However, computer science courses and programmes typically teach specific technical skills that tend to leave out SWPM principles and the practice. This course thus addresses such shortcomings, providing students with much project management skills for the software sector that are highly sought in the job market for CS graduates and post-grads.

CS551H: NATURAL LANGUAGE GENERATION

15 credits

Level 5

Second Sub Session

The aim of the course is to introduce students who have some background in computing to (1) the varied aims for which Natural Language Generation (NLG) is pursued, (2) the main rule based and statistical methods that are used in NLG, and (3) some of the main NLG algorithms and systems. The course will cover NLG both as a theoretical enterprise (e.g., for constructing models of language production) and as practical language engineering, paying particular attention to the link between NLG and data science. Some programming experience is expected.



CS551J: KNOWLEDGE REPRESENTATION AND REASONING

15 credits

Level 5

Second Sub Session

Recent advances in AI have changed the perception of what machines can do, from on-line search to answering questions. An underlying feature of many AI systems concern how knowledge is acquired, represented, and reasoned with. Companies such as Google, IBM, and Facebook have been developing sophisticated tools for knowledge representation and reasoning. This module provides the theory and practice of knowledge representation and reasoning, also presenting cutting-edge technologies, libraries and tools. At the end of the course students will be able to design, implement and evaluate knowledge-intensive AI systems.

CS551K: SOFTWARE AGENTS AND MULTI-AGENT SYSTEMS

15 credits

Level 5

Second Sub Session

The global autonomous systems market is expected to be valued at over £13 billion by 2025, involving both software systems and robots. Such autonomous systems act to achieve goals with no human intervention, and are already found in Tesla's self-driving cars, NASA space probes and systems such as Amazon's Echo. This course provides the student with a solid grounding in the theory and tools which underpin such systems, teaching them both how to develop such systems, and use them effectively as part of a larger product.

CS551N: INTRODUCTION TO PROGRAMMING

15 credits

Level 5

Second Sub Session

Students will be exposed to the basic principles of computer programming, e.g. fundamental programming techniques, concepts, algorithms, data structures, and object orientated programming. The course contains lectures where the principles are systematically developed. As the course does not presuppose knowledge of these principles, we start from basic intuitions so that students know the basics of programming as the foundation for their future study.

CS551P: ADVANCED PROGRAMMING

15 credits

Level 5

Second Sub Session

Students will learn the context of software development and engineering so that they know they are building the application needed by the client, and that it is being built well. This course is about the design of the software, and the software development life-cycle. We focus on moving from the idea of the software to its deployment and use by someone through the delivery of small working solutions that grow in features based on regular feedback, which helps improve the working solution. 

CS551Q: ENTERPRISE SOFTWARE DEVELOPMENT

15 credits

Level 5

Second Sub Session

This is a look at data science with respect to business intelligence, dashboards whereby students learn to create applications for handling larger datasets, as well as as a knowledge of visualisations for different situations. This also covers networking and fault tolerance issues as part of learning to development for continuous integration and continuous deployment of the applications.

CS551R: MSC PROJECT IN INFORMATION TECHNOLOGY

60 credits

Level 5

Second Sub Session

The project is a group project where you will work with fellow students to build an application for an external client. In order to do this successfully you will follow practicals that procude successful projects, which will be introduced to you during the first week of the project and continued during the rest of the summer.

Past teams have worked with Survival International, Grampian Fire and Rescue, the Small Isles, local volunteer groups, and an Edinburgh film company.

CS551S: WEB DEVELOPMENT

15 credits

Level 5

Second Sub Session

Students will learn to develop modern web applications using a variety of languages and frameworks as part of their degree. A key focus will be on the integration of HTML with CSS and JavaScript with the support of the NODE.js runtime environment to develop dynamic web applications. The course focuses on building basic software programming skills required to become full stack developers.  

CS551T: MSC PROJECT IN ARTIFICIAL INTELLIGENCE

60 credits

Level 5

Second Sub Session

This course will provide students of our MSc in AI programme with the opportunity to develop their own AI research project, under the supervision of a member of staff. Typical projects include extending, improving or adapting existing AI theories or techniques to solve different problems, comparing competing techniques or tools to solve a particular problem, and so on. Students will improve their problem-solving and communication skills, as well as broaden, deepen and consolidate knowledge obtained in other components of the degree.

CS552E: DIGITAL FORENSICS AND INCIDENT MANAGEMENT

15 credits

Level 5

Second Sub Session

Data breaches are everywhere, and cyber incidents can be extremely costly for an organization. Therefore, the speed at which you identify a violation and respond to the incident is critical to your data and systems' security. This course will provide technical and legal discussions on incident detection, investigation, response, and digital forensic techniques. It will walk you through best practices for everything from incident response to in-depth digital forensics. This will help the student identify vulnerabilities and better communicate breaches to those impacted.

CS552F: INFORMATION GOVERNANCE, DATA SECURITY AND PRIVACY

15 credits

Level 5

Second Sub Session

The course will discuss the higher-level context for cybersecurity in an organization, specifically through its relation to information governance.  Requirements, policies, procedures, processes, and controls for data security will be a central topic. Individual privacy, and data protection of sensitive private data within organizations, will be covered in detail. 

CS552G: ETHICAL HACKING AND WEB SECURITY

15 credits

Level 5

Second Sub Session

This course will deliver approaches and methodologies used for carrying out and managing security and penetration testing, including but not limited to web applications, network protocols, common attacks and security countermeasures. The course will help the student build the ability to design secure systems and defend against intrusion.  

CS552H: SECURE SOFTWARE DESIGN AND DEVELOPMENT

15 credits

Level 5

Second Sub Session

Software bugs and vulnerabilities are the main source of threats to security. This course introduces students to design, development, testing and  evaluating secure and dependable software. This course develops students both theoretical and practical skills to define, implement, examine, and manage secure software lifecycle. The course provides  necessary skills needed for security professionals ranging from software architects, developers to penetration testers and IT Managers.

CS552J: DATA MINING WITH DEEP LEARNING

15 credits

Level 5

Second Sub Session

This course aims to make students familiar with basic data mining and visualisation techniques and software tools. Students will learn how to analyse complex datasets by applying data pre-processing, exploration, clustering and classification, time series analysis, and many other techniques. This course will also cover text mining and qualitative modelling. Through this course students will be able to analyse real-world datasets in various domains and discover novel patterns from them. This course is particularly suitable for those who are interested in working as data analysts or data scientists in the future.



CS5917: MSC PROJECT IN ARTIFICIAL INTELLIGENCE

60 credits

Level 5

Third Sub Session

This course will provide students of our MSc in AI programme with the opportunity to develop their own AI research project, under the supervision of a member of staff. Typical projects include extending, improving or adapting existing AI theories or techniques to solve different problems, comparing competing techniques or tools to solve a particular problem, and so on. Students will improve their problem-solving and communication skills, as well as broaden, deepen and consolidate knowledge obtained in other components of the degree.

CS592A: PROJECT IN CYBERSECURITY

60 credits

Level 5

Third Sub Session

This course will provide students the opportunity to focus on a practical or theoretical problem and investigate the solutions. The research will be carried out under the supervision of a member of staff. Typical projects include improving, or adapting existing cybersecurity practices, theories, and techniques to solve different problems. Students will improve their problem-solving and communication skills, as well as broaden and consolidate knowledge obtained in other components of the degree.

CS5942: PROJECT IN INFORMATION TECHNOLOGY

60 credits

Level 5

Third Sub Session

The Project in Information Technology is a  group project where you will  work with a number of fellow students to build an application for an external client.  In order to do this successfully you will follow practices that produce successful projects, which will be introduced to you during the first week of the project, and continued during the rest of the summer.

Past teams have worked with Survival International, Grampian Fire and Rescue, the Small Isles, local volunteer groups, and an Edinburgh film company.




Compatibility Mode

We have detected that you are have compatibility mode enabled or are using an old version of Internet Explorer. You either need to switch off compatibility mode for this site or upgrade your browser.