• Loughborough University London Featured Masters Courses
  • Xi’an Jiaotong-Liverpool University Featured Masters Courses
  • Durham University Featured Masters Courses
  • Queen Mary University of London Featured Masters Courses
  • Ulster University Featured Masters Courses
  • University of Leeds Featured Masters Courses
  • Arden University Featured Masters Courses
  • Loughborough University Featured Masters Courses
University of Southampton Featured Masters Courses
Institute for Advanced Architecture of Catalonia Featured Masters Courses
University of Hertfordshire Featured Masters Courses
Queen’s University Belfast Featured Masters Courses
FindA University Ltd Featured Masters Courses

Computing - MSc

Course Description

Computers are now ubiquitous with many devices and systems being controlled by software. Building robust and reliable software systems requires a deeper knowledge of software design principles and programming methodologies.

The MSc Computing is a full time, one year taught course with a focus on programming and programming related aspects. This is to enable our graduates to go on to a professional career in the computing industry in roles such as team leaders or skilled developers.

The course is designed for students who already possess a degree in IT or related discipline or have equivalent industrial experience, and want to deepen their knowledge in software systems. It covers a range of topics including advanced programming, software engineering and testing, privacy and security, advanced user-interface design and high performance computing.

Course aims
-Advanced Programming: You will gain a thorough grounding of advanced programming concepts using Java, concurrent and real-time programming principles.
-User-Interfaces: You will be introduced to introductory and advanced methods in how users interact with systems (Human-Computer Interaction (HCI)).
-Advanced Software Engineering: You will learn the principles of software engineering using UML, formal methods and software testing.

Learning Outcomes
When you graduate from this course, you will have an in-depth understanding of software systems and programming principles and be able to lead a team of developers in the IT industry. You will have a thorough understanding of:
-Advanced programming knowledge including Java and principles for high performance computing.
-Designing and specifying software components and systems using UML.
-In-depth knowledge of user interface design principles.
-Software testing, privacy and security aspect of software engineering and software management.


The individual project is undertaken by students in Terms 3 and 4 (Summer term and Vacation term). The subject matter of projects varies widely; most projects are suggested by members of staff, some by external organisations, and some by students themselves, allowing students to undertake work relating to an area of personal interest that they wish to develop further.

All project proposals are rigorously vetted and must meet a number of requirements before these are made available to the students. The department uses an automated project allocation system for assigning projects to students that takes into account supervisor and student preferences.

Examples of previous project titles include:
-Autosuggestions using Ajax to improve tag based tactile image retrieval
-An Implementation of Mobile Application in Location-aware Service Domain
-Design and Implementation of a Tool Support for Time Bands Modelling
-Image Anomaly Detection and Object Recognition
-Image retrieval using region of interest detection
-Modelling and Simulation of Business Processes
-Reinforcement Learning for the StarCraft Real-Time Strategy Game
-Software for Autistic Children with Communication Difficulties
-The Design, Implementation, and Safety Analysis of a Mobile ePrescription System
-Using Procedural Content Generation to Provide a Set of Game Challenges During a Single Playthrough

Information for Students

The MSc in Computing course is for those with some background in computing, and so we make some assumptions about your existing knowledge and understanding.

You'll start the course with a focus on writing and developing Java programs. We assume that you are familiar with programming concepts and terminology, so we advise you to review basic programming concepts, such as:
-Variables and their types
-Control structures (e.g. if-statements, loops)
-Subprograms (e.g. procedures, functions)
-Compilation and debugging.

If you have never used Java, you will benefit greatly from doing some reading and trying out Java programming before you arrive. We will teach you from first principles, but the pace will be fast and you will find it easier to keep up if you've practiced with the basics beforehand. Tutorials and practical exercises are the best way for you to prepare, and the Deitel and Deitel book below is a good source of these.

Visit the Computing - MSc page on the University of York website for more details!

(Student Profile)

Yue Zhang

1883.jpg During my MSc programme, in York, I was well trained in nearly every aspect of Computer Science: from theory to practice, from software development to software testing, from programming language to human-computer interface, from computer architecture to web design, and from real-time programming to design patterns.

What have you learned from your time studying in York?

In lectures, tutorials and seminars, I developed a solid foundation of knowledge, the ability to learn new technologies and a comprehensive way of thinking in order to analyse and solve problems. In practicals, I was assigned plenty of coursework, which helped me to develop strong technical skills. This made me feel more confident when I started working in industry.

In York, you will not only be taught the knowledge and skills of Computer Science, but also the ethics and morality of a technical role. You'll know what is right and what is wrong, what you should do and what you mustn't do. This may not seem to be very important in the UK, but it does make sense in other countries.

What did you think of the Department?

The staff in the department are very friendly and professional, and many of them have in depth experience of working in industry. Every lecture was well prepared and delivered; and every email I sent to them was responded to in plenty of time.

Whenever you need help, the staff are on hand to assist, and they are totally reliable. Personally, I received assistance from the Department's staff before I came to York, when I was at York and even after I left. My academic supervisor was Professor Alan Burns and my project supervisor was Professor Jim Woodcock, and both are renowned professors in their areas. I felt I could talk to them without any hesitation and they would always help me out.

Did you enjoy your time with us?

No matter whether you are a UK student or an international student, York has a diversity of cultures and it will feel like home.

As an international student myself, I didn't feel any culture shock. People here are friendly and you can look for help from anyone. I can guarantee that you will be treated with warmth and respect no matter where you are from, with staff offering professional help and advice at all times.


Department of Computer Science Postgraduate Taught Scholarship - No. of awards TBC

Each year a number of departmental studentships are available to candidates enrolling on any full-time taught MSc course in the Department of Computer Science. For up to date information on these departmental studentships and for details of co-sponsored opportunities such as the DCMS Bursary for students undertaking our GCHQ-certified MSc course in Cyber Security, please visit our website: https://www.cs.york.ac.uk/postgraduate/taught-courses/scholarship/

Value of Scholarship(s)



See link for more details.

Application Procedure

See link for more details.

Further Information


Entry Requirements

The MSc in Computing is intended for students who already have a Computing or related degree. Typically, you will have achieved at least an upper second class honours degree (or international equivalent), and you will have already studied programming, computer organisation and architecture. We are willing to consider applications from those who do not fit this profile. We will, for example, consider applicants who do not have an appropriate qualification but have appropriate industrial experience. We are willing to consider applications from students with lower qualifications, particularly when the student has high marks in relevant modules and/or appropriate industrial experience.

Last Updated

14 February 2017

Email Enquiry

Recipient: University of York

Insert previous message below for editing? 
You haven’t included a message. Providing a specific message means universities will take your enquiry more seriously and helps them provide the information you need.
Why not add a message here
* required field
Send a copy to me for my own records.

Your enquiry has been emailed successfully

Cookie Policy    X