COURSE STRUCTURE
The MSc in Advanced Computer Science is designed to teach a range of advanced topics and skills to students with a solid foundation of knowledge and programming, whose first degree is in Computing or a related subject.
With a September start date, this course is studied full-time over one year. Should you wish for more flexibility with your studies, we also offer 100% online part-time Computer Science programmes, with routes in Data Analytics and Artificial Intelligence (AI).
During the first part of the programme, you will study eight taught modules (120 credits) over the first two semesters. These modules provide you with advanced knowledge of the principles and concepts of Internet technologies, software development, and intelligent systems. Alongside this, you will develop the practical skills that are necessary for the design, build, deployment and evaluation of distributed information systems and complex, business applications.
The second part of the programme gives you freedom to choose between either a formal academic project supervised by an academic expert from the School or opt for an industry placement. You’ll be able to discuss with your academic supervisor which type of project or placement is most suitable, based on your performance during the taught modules. Both options will enable you to put in to practice and apply the skills and knowledge learned throughout the course.
To achieve the MSc, you must complete 180 credits. There are two interim awards available, depending on how many modules have been successfully completed: a Postgraduate Certificate for any two modules (60 credits); and a Postgraduate Diploma for all four taught modules (120 credits).
Core Taught Modules
CSC-40043 User Interaction Design (15 credits – Semester 1): Providing you with a comprehensive knowledge of user interaction design and related techniques, you’ll learn to analyse, understand, and design user interactions and experiences and implement appropriate applications to support user needs. Topics covered include: the systematic use of requirements engineering for user interaction and user experience design; the psychological and social-psychological foundations for understanding user interactions; the experimental design and evaluation of user experiences; and the development techniques and technologies for creating user interfaces for web-based and mobile applications.
CSC-40045 Distributed Intelligent Systems (15 credits – Semester 1): Intelligent systems are increasingly present in our life, including the home and industrial environments. These systems include intelligent household appliances, wearable computing devices (e.g., health and fitness monitors), computers, sensor networks in cars, buildings, and complex engines, and so on. This module provides the knowledge and skills required to develop applications to control intelligent systems in a distributed and collaborative context, including the programming of robots or intelligent home appliances such as, for example, a TV or fridge that are equipped with embedded computers.
CSC-40054 Data Analytics & Databases(15 credits – Semester 1): This module aims to equip you with the knowledge of database operations and a variety of tools and statistical techniques, such as clustering, dimensionality reduction, regression, to enable you to make sense of the exponential growth of big data. You learn to apply and evaluate big data issues, advanced analytics and statistical modelling techniques appropriate to different types of problems.
CSC-40039 Cloud Computing (15 credits – Semester 2): In recent years many organisations have migrated applications to cloud computing providers. This module explores the underlying technologies, the practical and ethical issues involved. Reliability and performance concerns are addressed, together with the crucial issues relating to the security and privacy of data stored and managed remotely. Key is the ability to analyse and objectively assess claims made by global software companies relating both to the efficacy of their products and compliance with global objectives in environmental impacts. Putting your knowledge into practice, you’ll design and implement a cloud-based application, producing a technical report to outline the features implemented and evaluating its performance. Previously, for example, students have assessed the benefits of a Cloud infrastructure when developing web-based or big data related applications.
CSC-40046 Web Technologies and Security (15 credits – Semester 2): Provides a practical and theoretical understanding of contemporary developments in the design and construction of distributed applications with particular emphasis on mobile web applications and security aspects on both the server and client side. You’ll produce a design overview for a preferably mobile web-based application requiring secure access and rich interactivity. One coursework assignment required students to create a specialised version of Facebook aimed at foodies called 'Afterchef', which enabled users to upload pictures of meals or other food as part of a post, allowing other users to reply with comments about that post.
CSC-40038 Collaborative Application Development (15 credits – Semester 2): In the modern world of Internet and web technology, professionals need to be able to function effectively as part of a development team, as well as the relevant technical analytical, design and web development skills. On this module, you have an opportunity to work with real-world clients to produce an application, experiencing all the practicalities of working with and to a client’s brief. Apps that have been developed previously by students include a sustainable living application for students in halls of residence, a fundraising optimisation application for the County Air Ambulance Trust, a theatre ticket booking system application and an e-commerce application for an eBookstore services.
CSC-40050 Research and Consultancy Skills for Consultants (15 credits – Semester 2):Even the most technically gifted computing professionals need to communicate and plan effectively if their ideas are to be realised. There is also increasing need for an understanding of the wider implications computing has on society and how legal and ethical issues relate to software development and deployment. This module therefore aims to enhance your skills and knowledge in areas such as communication and problem solving; ethical, legal, and social issues; modern group working techniques specific to computing; design and management of research and consultancy activities, and selecting suitable formats and styles of presentation.