production
Skip to Content

Postgraduate Computing Science 2016-2017

CS1026: WEB APPLICATION DEVELOPMENT (DISTANCE LEARNING)

15 credits

Level 1

First Term

This course will introduce you to programming and software development for the Web using the object-oriented scripting language Ruby. It will teach you how to develop software that underpins database-driven interactive Web and cloud applications, and give you a broad knowledge of the basics needed for professional software development such as testing and version control. The course uses examples based on real world applications. You will also learn a limited range of core theoretical concepts such as structured programming, variable declaration, conditional statements, iterative constructs, object-oriented programming and meta-programming.

CS1524: WEB APPLICATION DEVELOPMENT (DISTANCE LEARNING)

15 credits

Level 1

Second Term

This course will introduce you to programming and software development for the Web using the object-oriented scripting language Ruby. It will teach you how to develop software that underpins database-driven interactive Web and cloud applications, and give you a broad knowledge of the basics needed for professional software development such as testing and version control. The course uses examples based on real world applications. You will also learn a limited range of core theoretical concepts such as structured programming, variable declaration, conditional statements, iterative constructs, object-oriented programming and meta-programming.

CS2014: ADVANCED WEB APPLICATION DEVELOPMENT (DISTANCE LEARNING)

15 credits

Level 2

First Term

This course builds on the previous course so that you can build more complex database driven web applications using a suitable framework to guide you. This also continues to round out your computing science craftsmanship skills with more emphasis on learning appropriate practices such as version source control, testing and group collaboration, so that you can build good habits, which will help your further during your degree.

CS2514: ADVANCED WEB APPLICATION DEVELOPMENT

15 credits

Level 2

Second Term

This course builds on the previous course so that you can build more complex database driven web applications using a suitable framework to guide you. This also continues to round out your computing science craftsmanship skills with more emphasis on learning appropriate practices such as version source control, testing and group collaboration, so that you can build good habits, which will help your further during your degree.

CS5012: DATA MINING AND VISUALISATION

15 credits

Level 5

First Term

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.



CS5037: SYSTEMS ANALYSIS & DESIGN

15 credits

Level 5

First Term

This course will be of interest to anyone who wishes to learn about the processes associated with modern systems analysis and design. In the course you will develop a critical understanding of how to analyse and evaluate systems, and to design and specify corresponding functionalities in a succinct and official way. The course will introduce you to the tools and techniques used by business and system analysts/designers and cover the fundamental issues associated with software engineering and project management.





CS5054: MANAGING SOFTWARE TECHNOLOGIES

15 credits

Level 5

First Term

This module provides an introduction to a variety of technologies that are suitable for adoption in industrial software development. The module encourages students to research and evaluate new technologies, identi fying issues affecting their suitability for adoption in particular projects. It stimulatesdiscussion between students, encouraging the exchange of personal knowledge and experience. The module is assessed on topics proposed both by the tutor and by the students, allowing further investigation into relevant subjects of particular interest. In addition to the assessments, students are expected to participate in the we ekly discussions for each unit on the module’s MyAberdeen discussion board.



CS5071: SYSTEMS ANALYSIS AND DESIGN

15 credits

Level 5

First Term

This course will be of interest to anyone who wishes to learn about the processes associated with modern systems analysis and design. In the course you will develop a critical understanding of how to analyse and evaluate systems, and to design and specify corresponding functionalities in a succinct and official way. The course will introduce you to the tools and techniques used by business and system analysts/designers and cover the fundamental issues associated with software engineering and project management.





CS5083: GROUP PROJECT IN SOFTWARE MANAGEMENT

15 credits

Level 5

First Term

This module is designed to stimulate the acquisition of skill in software project management. Students will be put into small teams and will have to act as the project management team for the assigned project. There will be no requirement to produce any software as the emphasis is on project management strategies. Students will be required to short list the projects they would like to work on. The teams will have to take on the role of the project management team dealing with a series of activities that constitute the life cycle of the project.



CS5092: SOFTWARE ENTREPRENEURSHIP: ISSUES IN STARTUPS

15 credits

Level 5

First Term

Within this module students deepen their understandings of the business startups through a mixture of self-directed study and guided discussion with guest speakers. The class under the guidance of the course organizer determines the classroom topics of discussion. Suggestions topics could be finance, staffing, burnout and motivation as well as customer development, risk and legal issues.



CS5093: SERVICE DESIGN AND INNOVATION

15 credits

Level 5

First Term

Students study service design and how co-creation of their product with customers will develop a better experience and service for their users. This is a practical based approach with regular workshops to learn the practices involved and how they can be used with their business idea.



CS5097: DATABASE SYSTEMS AND BIG DATA

15 credits

Level 5

First Term

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.





CS5098: DATABASE SYSTEMS AND BIG DATA

15 credits

Level 5

First Term

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 Term

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.

CS50AB: SEMANTIC WEB ENGINEERING

15 credits

Level 5

First Term

The World Wide Web (WWW) has become a major part of many people's lives. The Semantic Web is an evolving development of the World Wide Web in which the meaning (semantics) of information and services on the web is defined, making it possible for the web to understand and satisfy the requests of people and machines to use the web content. The goal of the course is to introduce advanced techniques for Web 1.0 (XML and XML Schema), Web 2.0 (AJAX and mashups) and Web 3.0 (RDF, OWL, microformats and microdata). It also covers some data exploitation techniques.

CS50AD: NATURAL LANGUAGE GENERATION

15 credits

Level 5

First Term

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.

CS50AE: INFORMATION EXTRACTION AND TEXT ANALYTICS

15 credits

Level 5

First Term

An abundance of textual information is available on the Internet. As it is dispersed over web pages, it is difficult to extract the information and understand its overall meaning. In this course, students will learn information extraction and text mining theory and techniques, corpus construction, and programming tools (e.g. NLTK and GATE) in order to extract and structure information from text. The emphasis is hands-on and realistic. Using the techniques and tools, students will be able to start to unlock the economic, cultural, and social value of web-based textual information, gaining valuable skills in an expanding market.

CS50AH: INFORMATION SECURITY

15 credits

Level 5

First Term

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 Term

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 marlet for CS graduates and post-grads.

CS551B: ENTERPRISE COMPUTING AND BUSINESS

15 credits

Level 5

Second Term

This course provides insight into the business reasons for large software systems such as loyalty card systems, backend systems integrating firms and their suppliers and larges systems that integrate payroll, finance and operational parts of a business. You also learn the entrepreneurial aspects of business during the practical sessions where you explore and develop your own business application idea using service design and lean startup approaches centred around customer development, which you will find useful in any future work.



CS551C: ENTERPRISE COMPUTING AND BUSINESS

15 credits

Level 5

Second Term

This course provides insight into the business reasons for large software systems such as loyalty card systems, backend systems integrating firms and their suppliers and larges systems that integrate payroll, finance and operational parts of a business. You also learn the entrepreneurial aspects of business during the practical sessions where you explore and develop your own business application idea using service design and lean startup approaches centred around customer development, which you will find useful in any future work.



CS551D: FUNDAMENTALS OF SOFTWARE PROJECT MANAGEMENT

15 credits

Level 5

Second Term

​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 marlet for CS graduates and post-grads.

CS551F: MSC PROJECT IN ADVANCED COMPUTER SCIENCE

60 credits

Level 5

Second Term

The purpose of this course is to develop the students' creative, analytical, practical and presentational skills and to allow the students to consolidate material learnt earlier in the programme, to extend their skills, and to research new areas.

CS5541: HUMAN COMPUTER INTERACTION

15 credits

Level 5

Second Term

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.



CS5563: ADVANCED COMPUTER SCIENCE WORKSHOP

20 credits

Level 5

Second Term

The module delivers practical experience in the technical issues involved in creating an effective showcasing proof of concept for a real product in the wider software sector. It is a follow-up of the CS5594 module, where students have devised a business plan for a company centred around such product. Students work in teams alreadyset up during CS5594, implementing the requirements specifications for the product devised in that module. On the final day of the module, an Industrial Assessment Group listens to the technical presentation of the showcasing proof of concept developed as part of this module and provides feedback.




CS5568: SOFTWARE PROJECT PLANNING AND CONTROL

15 credits

Level 5

Second Term

The course covers methods and techniques currently adopted in the software sector to devise and analyse software project plans and to control them. Industry standard software tools will be explored throughout the course. This deepens the comparative study of traditional and agile approaches to issues in software development in order to better understand which approaches work better in which situations.



CS5569: SOFTWARE QUALITY ASSURANCE AND CONTROL

15 credits

Level 5

Second Term

This module provides an overview of software quality assurance activities at all stages of software development. It covers not only software testing, but the broader topic of quality assurance and control, including early quality assurance activities such as contract review, and the infrastructure components that support quality assurance activities. The course looks at well-established techniques, often rooted in the waterfall mindset, and consider how these fit in an iterative development methodology. Students are expected to undertake further reading when indicated by the course tutor, and to participate in the weekly discussions for each unit on the module’s MyAberdeen discussion board.





CS5570: INDIVIDUAL PROJECT IN SOFTWARE MANAGEMENT

30 credits

Level 5

Second Term

This module, which spans two terms, delivers the individual dissertation (the “thesis”) that each student must submit at the end of the MSc course. It focuses on an individual topic of software project management relevance agreed between the programme director and each student during the preparatory part of the module itself, before a project supervisor is assigned to the student. The research leading to the dissertation, which can include a broad range of SWPM-relevant topics, focuses on specific projects the student is currently working on (or has worked on, or expects to be working on).



CS5572: SOFTWARE PROJECT PORTFOLIO

15 credits

Level 5

Second Term

This module focuses on software project management at portfolio level, where suites of projects are managed in accordance with the broader strategy of an organisation. The module guides students to appreciate the need for and the benefits of a software project portfolio management system. It introduces both the principles that must be adopted fo a portfolio management system to operate successfully and the processes involved in defining a portfolio of software projects. The module also focuses on the activities required in order to ensure that the intended results of the portfolio management are delivered.





CS5577: TECHNOLOGICAL, SCIENTIFIC AND MARKET RESEARCH

25 credits

Level 5

Second Term

This course serves as a lead in to the individual summer project. In it you will analyse the domain of your chosen research topic and provide a report on the background or literature.




CS5584: COMMERCIAL AND CONTRACTUAL ISSUES IN THE SOFTWARE SECTOR

15 credits

Level 5

Second Term

This module provides an introduction to a number of legal issues relevant to software development and exploitation. It aims to increase students' awareness of commercial and legal issues relevant to their own work in the context of the wider software industry sector.The module thus focuses on legal topics relevant to those establishing their own business, including types of business and the fundamentals of contract law, also covering legal issues specific to software, such as the application of intellectual property law to software products. Students are expected to participate in the weekly discussions on the module’s MyAberdeen discussion board.



CS5586: HUMAN COMPUTER INTERACTION

15 credits

Level 5

Second Term

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.

CS5594: INNOVATION STRATEGIES

15 credits

Level 5

Second Term

This module gives students a unique opportunity to develop entrepreneurial skills, which are required to help in the development of a business-oriented mindset. Even students who have no ambitions to set up a new business, there is a great deal that they can learn about entrepreneurial tools and techniques which would benefit their future career in different employment capacities. From the very beginning, students are asked to identify a novel software-based niche product/service (i.e., a still-to-be-devised, currently non-existing but potentially appealing product/service idea) and to find out how to set up a company which would develop and commercialise such product.





CS5598: SOFTWARE DEVELOPMENT GROUP PROJECT IN O&G EXPLORATION 1

15 credits

Level 5

Second Term

​The maturity of the O&G exploration sector and the current hydrocarbon price dynamics is forcing companies in this sector to achieve dramatically higher levels of efficiency through the introdution of digital technologies that can indeed "deliver more spending less". Central to this objective is the wide-scale adoption of a variety of software-centric systems that can increase both the level of certainty about oil and gas presence in a certain field and the confidence on geophysical and engineering data needed for cost-effective hydrocarbon extraction.

CS5599: SOFTWARE DEVELOPMENT GROUP PROJECT IN OIL AND GAS EXPLORATION 2

15 credits

Level 5

Second Term

​The maturity of the O&G exploration sector and the current hydrocarbon price dynamics is forcing companies in this sector to achieve dramatically higher levels of efficiency through the introdution of digital technologies that can indeed "deliver more spending less". Central to this objective is the wide-scale adoption of a variety of software-centric systems that can increase both the level of certainty about oil and gas presence in a certain field and the confidence on geophysical and engineering data needed for cost-effective hydrocarbon extraction.

CS5942: PROJECT IN INFORMATION TECHNOLOGY

60 credits

Level 5

Second Term

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.




CS5950: MSC PROJECT IN ADVANCED COMPUTER SCIENCE

60 credits

Level 5

Second Term

The purpose of this course is to develop the students' creative, analytical, practical and presentational skills and to allow the students to consolidate material learnt earlier in the programme, to extend their skills, and to research new areas.

CS5970: INDIVIDUAL PROJECT IN SOFTWARE MANAGEMENT

30 credits

Level 5

Second Term

This module, which spans two terms, delivers the individual dissertation (the “thesis”) that each student must submit at the end of the MSc course. It focuses on an individual topic of software project management relevance agreed between the programme director and each student during the preparatory part of the module itself, before a project supervisor is assigned to the student. The research leading to the dissertation, which can include a broad range of SWPM-relevant topics, focuses on specific projects the student is currently working on (or has worked on, or expects to be working on).





CS5974: PROJECT IN INFORMATION TECHNOLOGY

60 credits

Level 5

First Term

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.