For general information:
Johny Stokoe
Tel: +44 (0)1904 325404
Postgraduate Admissions Administrator
Fax: +44 (0)1904 325599
E-mail: postgraduate@cs.york.ac.ukFor informal discussion:
Dr Tommy Yuan
Tel: +44 (0)1904 325697
Admissions Officer
Fax: +44 (0)1904 325599
E-mail: tommy@cs.york.ac.ukRelated Links
Computers are now ubiquitous with devices and systems being controlled by software. Building robust and reliable software systems requires deeper knowledge of software design principles and programming methodologies.
The MSc Computing is a full time, one year taught course, intended for students seeking a professional career in the Software Industry with the focus on programming and programming related aspects. The course is designed for students who already possess a degree in IT or related discipline or have equivalent industrial experience.
The course covers a range of topics including advanced programming, advanced user-interface design, concurrent programming, formal methods and software engineering. The course has been specifically designed for those who already possess basic IT and programming skills and want to deepen their knowledge in software systems.
Meet our students
We expect successful graduates to have an in-depth understanding of software systems and programming principles and be able to lead a team of developers in the IT industry. A thorough understanding of the following subjects are expected:
Graduates are expected to be capable of becoming team leaders or skilled developers in the IT industry.
Full-time taught postgraduate courses run for 12 months from the start of the academic year in October. Students on these courses are expected to be in attendance at York for the full 12 months, except for when the Department is closed. Please contact the Postgraduate Admissions Administrator for more details.
| Term | Short Description | |
|---|---|---|
| Concurrent and Real Time Programming |
Autumn | Concurrent & Real-Time Programming studies the features of Real-Time Java and applies them to concurrent embedded-systems programming. |
| User Centred Design |
Autumn | User Centred Design introduces students to the field of Human-Computer Interaction (HCI). This field covers all aspects of people's interactions with digital systems from supermarket checkouts, to social websites like Facebook, to handheld calculators and video games |
| Java Programming Concepts |
Autumn | A solid grounding in the essential features of object-oriented programming as well as in depth understanding of data structures and algorithms. |
| Formal Specification |
Spring | Formal Specification addresses the use of mathematical methods in systems development, particularly in high-integrity systems. |
| Software Engineering |
Spring | Understand the process of engineering and design of large software systems with an emphasis on models, and methods. |
| Software Measurement and Testing |
Spring | Software Measurement & Testing teaches methods of software verification, including advanced testing and static-analysis techniques. |
| Web Design |
Spring | Building on students' prior knowledge of usability principles in general, this module looks at how web pages can be designed to give users a positive experience. |
| Group Project: Computing & IT
|
Spring |
The module aims to provide students with object-oriented analysis and design techniques and software engineering principals, which are directly applicable to an IT project. Students will work in teams to engage in a practical IT project. |
| Final Project - Computing
|
Vacation | A substantial, independent research project building on the taught course. The deliverable is a dissertation. |
Each student is assigned to a tutorial group usually containing no more than four or five students, and hence to a personal tutor. Tutorial groups meet regularly until the start of the project. The purpose of these meetings is to reinforce the material taught in the formal course units, and also to provide an opportunity for informal discussion of related subjects.
Assessment of students' performance in the course modules takes place in a variety of forms: practical exercises, reports, closed examinations and a dissertation for the project. Students are deliberately exposed to a variety of assessment methods so that they are not disadvantaged by background.
The assessments take place at various times during the year. Closed examinations take place in:
Practical exercises, reports and other forms of open assessment are due either during the course module or just after its completion.
Timescales, Modules and Project Descriptions may be subject to change.
The individual project is undertaken by students in Terms 3 and 4. The subject matter of projects varies widely; most projects are suggested by members of staff, some by external organisations, and some by students themselves, perhaps 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.
The MSc in Computing is intended for students who already have
an IT 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 databases, programming and relevant mathematics.
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.
Selectors for the course are looking for three essential criteria to be satisfied:
This course, like all others in the University, welcomes students of all backgrounds and circumstances.
If English is not your first language, or your first degree was not taught in English, then you will need to have attained a suitable language qualification no more than two years before the start of the course.
The University's Postgraduate Study webpages will tell you more about the English language requirements for graduate students.
The MSc in Computing requires a basic understanding of computer systems, as well as some experience in programming. We strongly recommend all students to revise the basics of programming, such as:
During the MSc, you will be taught the Java programming language. You might find it useful to do some reading about that language before you arrive. We have selected some books that are used in the first term:
It is also important that entrants will have a basic knowledge of discrete mathematics (i.e. logic, set theory, relations and functions). We recommend the following book to refresh your mathematical background:
You can also use these slides to guide you through your revision.
Due to the intensive nature of the course, students are required to be in York during the following periods:
However, it should be noted that the MSc is full time and it is assumed that students are working whether or not they are in full attendance.