School of Computing, Electronics and Mathematics

MSci (Hons) Computer Science

Immerse yourself in Computer Science for four years and give yourself a UK masters level qualification. From the foundations of computer science and database development to artificial intelligence and games development, you’ll develop a wide variety of skills. Alongside this, you’ll also have the chance to undertake an optional industry placement year and a substantial research project.

Key features

  • Access a course that is likely to be of interest to those who want to pursue a career in research. This may not necessarily be academic research, it could also be corporate research and development. 
  • Choose a four-year immersion course that gives you a UK M-level qualification, and which is also roughly equivalent to the four-year European degrees which follow the Bologna model.
  • Seize the opportunity to undertake a substantial project in conjunction with a research active member of staff, and with the intention of producing at least one academic publication. 
  • Benefit from the School of Computing, Electronics and Mathematics’ strong links with industry. We have links with Apple, Microsoft, Oracle, Cisco, Intel, Nvidia and many more. We are a member of Microsoft DreamSpark and the Oracle Academy, both of which enable our students to acquire free software to support their studies (for example Microsoft Visual Studio, Server Operating Systems, SQL Server). 
  • The results of the REF2014 (research assessment framework) rates 75 per cent of our outputs in the categories ‘Computer Science and Informatics’ as internationally recognised and world leading. All the key researchers also teach; you are likely to actually meet these people.
  • Deepen your knowledge with content that is constantly revised in conjunction with input from local and national organisations, as well as with active researchers.

Course details

  • Year 1
  • In your first year, you’ll engage with the foundations of computer science from programming to algorithms, data structures and a little and mathematics. You’ll also database development, how to capture requirements and what happens inside a computer, including inside a computing operating system. A hands-on course from the outset, you’ll benefit from a number of practical workshops as well as preparing for your third year work placement.

    Core modules
    • SOFT153 Algorithms, Data Structures and Mathematics

      Data structures and algorithms lie at the heart of Computer Science as they are the basis for the efficient solution of programming tasks. In this module, students will study core algorithms and data structures, as well as being given an introduction to algorithm analysis and basic Mathematics for Computer Science.

    • BPIE111 Stage 1 Computing Placement Preparation

      This module is aimed at students who may be undertaking an industrial placement in the third year of their programme. It is designed to assist students in their search for a placement and in their preparation for the placement itself.

    • SOFT152 Software Engineering

      Provides an intensive introduction to Software Engineering for those studying Computer Science or related courses where programming is a core and necessary component. The module includes coverage of problem solving involving abstraction and problem decomposition. At the outset implementation uses an imperative / structured programming approach, before moving onto Object Oriented and Event-driven methodologies.

    • SOFT163 Computer Science Immersive Introduction

      This module provides an intensive introduction to the concepts, modes of study technical content that students studying BSc (Hons) Computer Science will need for the remainder of their Stage 1 studies. And last, but not least, this module aims to get students enthused about their chosen course.

    • ISAD155 Databases: Analysis, Design and Development

      An introduction to the analysis, design concepts essential for developing and implementing Software Systems and Database Systems. The module will explore design concepts and procedures, such as principles of Business Rules, specifying Requirements, Data Modelling, Relational Modelling and SQL. It will also enable students to acquire, develop and apply Unified Modelling Language (UML) relevant for computing professionals.

    • NET107 Principles of Infrastructure

      This module is intended to provide a basic understanding of the operation of the hardware components of computer systems and networks including some low level programming. The role of a typical multi-tasking operating system is also covered, as is how to manage asynchronous program code safely

    Optional modules
    • ELEC137PP Electronic Design and Build

      This module will introduce the students to practical skills needed to design and build an electronic system. A number of hands-on tutorials on specific topics will provide the necessary knowledge. Most of the module will be organized around practical design-and-build exercises combining analogue, digital and software.

    • DAT406PP Digital Making

      This module introduces students to a key set of digital technologies that are core to the production of current digital artwork. This will include exposure to a wide range of software, hardware and networking components commonly used by digital artists and designers. This is a Plymouth Plus module.

    • ROCO103PP Robot Design and Build

      This module will introduce the students to practical skills needed to design and build a small robot. A number of hands-on tutorials on specific topics will provide the necessary knowledge. Most of the module will be organized around practical design-and-build exercises framed in the context of a robot competition.

    • SEC102PP Cybersecurity Essentials

      This module provides an introduction to core principles of cybersecurity applicable to the protection of individuals and organisations. The coverage addresses technical and human perspectives, considering the fundamental threats and safeguards that concern both personal and workplace contexts. Candidates will emerge with the knowledge and skills necessary to ensure informed decisions when protecting IT systems and data.

    • SOFT156PP Developing E-commerce Applications

      This module introduces students to the range of issues surrounding the rapid development of an e-commerce application through the use of appropriate frameworks.

    • AINT153PP Intelligent Systems

      Topics covered within this module are selected to be inspirational demonstrators that showcase research topics in the field of Intelligent Systems and provide `hands-on¿ involvement in a lecture/practical setting. This module is suitable both for students form technical degrees (e.g. computer science, robotics, mathematics) and for students from psychology, business and social sciences.

    • MATH1607PP The Quantum Universe

      This course is for non-science specialists who have an interest in understanding our Universe. We will investigate our evolving view of the Universe from ancient times to the recent exciting discoveries such as dark matter and energy. The module will also highlight the phenomena of the Quantum World and will develop a basic understanding of quantum effects and their applications.

  • Year 2
  • In the second year, you use Oracle for developing databases, and you will go on a journey that takes you from being a programmer to a software engineer (how to structure program code when it gets complicated). We’ll continue to focus on your employability and prepare you for the placement. You also cover the ‘science of computer science’, for example Turing’s ideas on computation and machine intelligence. An integrating project combines all the skills you have learnt so far; you start with a concept and end with a product.

    Core modules
    • SOFT252 Object-oriented Software Engineering with Design Patterns

      This module aims to develop object-oriented software engineering principles and practices in including encapsulation, abstraction, aggregation and inheritance. It will introduce issues such as progression from analysis to design, implementation, testing and documentation and it includes the use of design patterns (proven solutions to common problems) and software quality principles for enhanced software development.

    • ISAD260 User-Centred Interface Design

      This module aims to introduce students to the HCI principles, user-centred methodologies and ethical issues required for the design and evaluation of user-centred interfaces.

    • BPIE211 Stage 2 Computing Placement Preparation

      This module is aimed at students who may be undertaking an industrial placement in the third year of their programme. It is designed build on the Level 1 module (BPIE111) and to assist students in their search for a placement and in their preparation for the placement itself.

    • ISAD251 Database Applications Development

      To introduce students to the concepts and issues concerning server-side applications interfacing multi-user, networked, relational databases and to providing a solid foundation in SQL.

    • PRCS252 Computer Science Integrating Project

      This project provides an opportunity for students to draw together many of the threads of the Computer Science programme in preparation for their industrial placement and final year. Students work in teams to manage and complete a substantial project for a given scenario.

    • SOFT261 Embedded Programming and the Internet of Things

      This module aims to lift the lid of a computer and show how modern computers really work. A simple embedded microcontroller is used because such devices are simpler and feature prominently in the growing IoT sector. This includes issues relating to low level programming, multi-tasking and defensive programming techniques to mitigate against security vulnerabilities and exploits.

    • AINT252 Computation Theory and Artificial Intelligence

      This module provides students with an overview of a range of different paradigms for computing and computing theory and an introduction to theoretical principles and methods in artificial intelligence.

  • Optional placement year (very strongly recommended)
  • This year you’ll do your industry placement – which you’ve been preparing for over the past two years – aided by our network of industry contacts. You will learn to work within a professional context, giving you the opportunity to apply your knowledge and skills in the real world. Over 48 weeks you’ll gain experience and confidence, as well as a host of contacts – all essential in readying you for employment on graduation. Placements are almost always paid.

    Core modules
    • BPIE330 Computing Related Placement (Generic)

      A 48-week period of professional training spent as the third year of a sandwich course, undertaking an approved placement with a suitable company. This provides an opportunity for you to gain relevant industrial experience to consolidate the first two years of study and to prepare for the final year and employment after graduation. Please note this placement is optional but strongly recommended.

  • Year 3
  • You’ll now be ready to demonstrate all that you’ve learned over the past three years by undertaking a substantial problem-solving individual project focused on a specific area of personal interest. You’ll spend the rest of your time studying your optional modules, including machine learning and artificial intelligence, programming for games development, high performance computing, and how to process big data. You will probably choose modules that relate to your intended career.

    Core modules
    • PRCO304 Computing Project

      The Computing Project gives an opportunity to tackle a major computing related problem in an approved topic area relevant to the programme of study.

    Optional modules
    • AINT351 Machine Learning

      This module introduces machine learning, covering unsupervised, supervised and reinforcement learning from Bayesian, Information Theoretic and decision making perspectives. This includes theory behind a range of learning techniques and how to apply these to build representations of data in systems that make decisions and predictions.

    • AINT352 Computational Intelligence

      Computational intelligence is the approach within artificial intelligence that covers nature-inspired computational methodologies such as evolutionary computation, neural computation and fuzzy logic. This module provides an in-depth introduction and discussion of the main theoretical and methodological approaches to computational intelligence with practical lab sessions.

    • AINT353 Brain-inspired Cognitive Systems

      The module develops an understanding at a systems level of how the brain performs the functions of vision, hearing and movement control, and how novel artificial cognitive systems might use brain-inspired sensory and motor mechanisms to achieve human-like levels of performance.

    • NET302 Distributed Systems

      Distributed systems represent the type of networked computer applications that modern users rely on daily. They are characterised by running on multiple heterogeneous devices subject to failure, yet performing speedily and robustly and scaling to substantial size.

    • SOFT351 Programming for Entertainment Systems

      This module introduces the concepts and programming techniques for high performance real-time graphics using an graphical API such as DirectX or OpenGL. The module has a very bottom-up view of graphical programming; it is not about the use of game engines and high-level prototyping tools. Students also learn many highly transferrable software engineering skills, e.g. programming in an un-managed environment.

    • SOFT354 Parallel Computation and Distributed Systems

      The module aims to develop skills in understanding and programming parallel and distributed computer system. It will provide an introduction to different parallel architectures, programming techniques and methodologies. Practical training will focus on HPC cluster and GPGPU architectures and programming techniques.

    • PRCO307 Work-based Learning in Computing Education

      This module is primarily aimed at students who would like to embark on a teaching career in Computing. The key aim of this module is to allow students from Computing degree programmes to acquire relevant experience in teaching within the computing subject area by working as `student-tutors¿ with qualified teachers in selected suitable schools or educational establishments.

    • PRCO308 Work-based Learning

      With a view to improving student employability, this module provides the opportunity for students to apply their knowledge to a real world IT problem within an existing IT company or client organisation.

    • AINT355 Industry Engagement

      The module provides a contextual framework for developers seeking to release games, APPs, software products or compete in national events. Topics include creating and protecting intellectual property, product placement, revenue models and licensing, investment, social enterprise, and due diligence. The module includes industry case studies, a guest speaker program and opportunities for individual mentoring.

    • LAW3239 Cybercrime: Issues and Regulation

    • ISAD361 Advanced Databases and Data Management

      This module considers the challenges of and solutions for managing, processing, analysing and interpreting large amounts of unstructured data within relational and non-relational database environments.

    • ISAD362 Software Project Management

      To enable students to acquire a critical understanding of the management and methodological issues associated with software development.

    • AINT308 Machine Vision and Behavioural Computing

      Providing an advanced knowledge of artificial vision systems for interactive systems guidance and control, this module is underpinned by current theoretical understanding of animal vision systems.

  • Year 4
  • You have the opportunity to undertake a substantial project in conjunction with a research active member of staff, and with the intention of producing at least one academic publication. Year 4 has a research based flavour and most of the modules in it are delivered by research active staff. The remainder of the modules are optional, and once again you will probably choose modules that relate to your intended career.

    Core modules
    • PRCO502 MSci Computing Project

      The MSci Computing Project gives an opportunity for students to undertake a major computing related project tackling a significant problem in a Computer Science topic area. It should be conducted with a research active member of staff and should aim to produce at least one academic publication.

    • SOFT561 Robot Software Engineering

      In this module students will develop applications involving interconnected hardware devices and software capabilities. Devices will include both embedded and networked computers. Capabilities include sensor data acquisition, actuator control and behaviour generation. The module will cover both theory and practical work, including management of code complexity, and dealing with real-time, and reliability issues.

    Optional modules
    • ROCO503 Sensors and Actuators

      The module covers a range of classical and smart sensors and actuators which can be applied in interactive and automated system, with emphasis on several key sensors. This module has a strong hands-on component.

    • SEC503 Intrusion Analysis and Incident Management

      This module will examine the field of intrusion prevention, detection and response and the role it plays within modern information security systems. It will introduce key concepts in the analysis of network traffic for signs of intrusions, as well as the process of responding to computer incidents.

    • MATH500 Big Data and Social Network Visualization

      Sophisticated analytics techniques are needed to visualize today's increasing quantities of Big Data. Up-to-date R tools including dplyr for data manipulation, ggplot2 for visualization, and knitr/LaTeX for document presentation are studied. These are applied to database interrogation, social network visualization and sentiment analysis. A professionally documented collaborative R package is produced using RStudio.

    • AINT511 Topics in Advanced Intelligent Robotics

      The objective of this module is to introduce the research activities of the Centre for Robotic and Neural System (CRNS). It will be taught by CNRS members who will lead a number of thematic workshops on their areas of expertise, such as developmental and evolutionary robotics, Brain-inspired architectures and learning methods. The module also covers scientific research methods and data analysis.

    • NET502 Multimedia Networking

      Multimedia Networking refers to transmission of multimedia contents (e.g. voice and video) over IP networks, such as VoIP (e.g. Skype) and video streaming (e.g. YouTube). This module will cover principles involving a media delivery chain from media generation, transport to consumption. These will include voice/video compression, transport (RTP/RTCP), signalling (e.g. SIP/SDP), QoS/QoE, VoIP security and NGN/IMS.

    • NET503 Monitoring and Simulation

      Modern networks are dynamic and this module introduces the conceptual framework and practical tools used to monitor their behaviour and understand how changes would affect their performance. Monitoring covers the techniques used to analyse the network traffic information and infer the network and application performance characteristics. Simulation allows new scenarios to be investigated using software.

The modules shown for this course are those currently being studied by our students, or are proposed new modules. Please note that programme structures and individual modules are subject to amendment from time to time as part of the University’s curriculum enrichment programme and in line with changes in the University’s policies and requirements.

Entry requirements

From a minimum of 2 A levels. All subjects considered but at least one technical subject is preferred e.g. mathematics, physics. Excluding general studies, critical thinking and citizenship. GCSE mathematics grade B/6. 

BTEC/Access/International Baccalaureate: please contact the admissions team at for further advice.

Students on the BSc (Hons) Computer Science degree may transfer to the MSci BSc (Hons) Computer Science degree if they are averaging better than 60 per cent.

Fees, costs and funding

New Student 2017 2018
Home/EU £9,250 To be confirmed
International £12,250 To be confirmed
Part time (Home/EU) Check with School To be confirmed
Part time (International) Check with School To be confirmed
Full time fees shown are per annum. Part time fees shown are per a number of credits. Fees are correct at the time of publication and may be subject to change.

How to apply

All applications for undergraduate courses are made through UCAS (Universities and Colleges Admissions Service). 

UCAS will ask for the information contained in the box at the top of this course page including the UCAS course code and the institution code. 

To apply for this course and for more information about submitting an application including application deadline dates, please visit the UCAS website.

Support is also available to overseas students applying to the University from our International Office via our how to apply webpage or email

Careers in computer science

Do you want to design your own mobile apps? Or are you determined to work as a web developer?

Whatever your career goals, we’ll work with you to give you the support you need, preparing you to make a real impact in the computing and IT industry

Find out more about how we prepare you for your career

Facilities and resources

Our high-specification laboratories means you’ll enjoy access to a wide range of facilities across diverse specialisations – from networking to games development.

You’ll also benefit from your own iPad and eBook library – so your resources match your needs and ambitions.

Find out more about our facilities and resources

Potential High Achievers Scheme

In the School of Computing, Electronics and Mathematics we recognise that our students are the future of the growing computing and electronics industry. We know that our applicants will thrive in the hands-on environment we can provide, and we want to ensure our best applicants become our future.

The scheme is now open for students who have applied to study, from September 2017, a range of full-time undergraduate courses within the School of Computing, Electronics and Mathematics. We will be contacting applicants who are not only on course to achieve top marks but who have an outstanding personal statement, in order to offer them a chance to receive an unconditional offer immediately.

Find out more about the scheme.