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.
15 credits
Level 1
Second Term
15 credits
Level 2
First Term
15 credits
Level 2
Second Term
15 credits
Level 5
First Term
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.
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.
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.
15 credits
Level 5
First Term
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.
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.
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.
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.
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.
15 credits
Level 5
First Term
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.
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.
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.
15 credits
Level 5
Second Term
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.
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.
15 credits
Level 5
Second Term
60 credits
Level 5
Second Term
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.
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.
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.
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.
30 credits
Level 5
Second Term
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.
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.
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.
15 credits
Level 5
Second Term
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.
15 credits
Level 5
Second Term
15 credits
Level 5
Second Term
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.
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.
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).
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.
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.