Computing

Computer Science - MSc

2019

The Computer Science MSc prepares graduates from any discipline for a career in computing, or a career involving the application of computing within their original professional field. No prior knowledge of computer science is required.

2019

Overview

This conversion programme provides a broad and balanced introduction to computer science, including the key technologies and skills needed for employment. You can also explore your personal interests through a variety of optional modules.

The programme will equip you for technical roles in leading software houses, advanced technology companies and commercial sectors or for working at the interface with clients as a systems analyst or consultant. Graduates from this programme work across the globe for companies such as IBM, Cisco, Logica/CMG, Pfizer, Reuters, Shell and Zurich Financial.

This programme is available with an optional industrial placement of between eight and 50 weeks. The industrial placement provides an opportunity to work in real-world, technical and business roles, enhancing your study experience and having a dramatic impact on your choices after graduation.

About the School of Computing

Our world-leading researchers, in key areas such as cyber securityprogramming languagescomputational intelligence and data science, earned us an outstanding result in the recent Research Excellence Framework (REF). Our submission was ranked 12th in the UK for research intensity, with an impressive 98% of our research judged to be of international quality.

Strong links with industry underpin all our work, notably with Cisco Systems Inc, Microsoft, Oracle, IBM, Nvidia, Erlang Solutions, GCHQ and Google.

Our programmes are taught by leading researchers who are experts in their fields. The School of Computing at Kent is home to several authors of leading textbooks, a National Teaching Fellow, an IET (Institute of Engineering and Technology) Fellow and two Association of Computer Machinery (ACM) award-winning scientists. Kent was awarded gold, the highest rating, in the UK Government’s Teaching Excellence Framework*.

While studying with us, you can gain work experience through an industrial placement. Our dedicated placement team can help you gain a suitable paid position and provide support throughout your placement. 

We have a large range of equipment providing both Linux and PC-based systems. Our resources include a multicore enterprise server and a virtual machine server that supports computer security experiments. 

The School also has a makerspace, The Shed, which offers exciting teaching and collaboration opportunities. Among other equipment it contains a milling machine, 3D printers, laser cutter and extensive space for building and making digital artefacts.

Think Kent video series

Computers are good at mechanical tasks but can they be creative? In this talk, Dr Anna Jordanous looks at why we would want to study computers being creative and what we can learn from this work.

*The University of Kent's Statement of Findings can be found here

National ratings

In the Research Excellence Framework (REF) 2014, research by the School of Computing was ranked 12th in the UK for research intensity.

An impressive 98% of our research was judged to be of international quality, with 81% of this judged world-leading or internationally excellent. The School’s environment was judged to be conducive to supporting the development of research of international excellence.

Course structure

This conversion programme prepares graduates from any discipline for a career in computing, or a career involving the application of computing within their original professional field. Our students come from a wide variety of backgrounds including natural sciences, engineering, arts, humanities and social sciences. No prior knowledge of computer science is required.

All taught Master’s programmes at Canterbury are available with an optional industrial placement.

Each of our taught MSc courses is available in several formats to accommodate students from different backgrounds and to provide maximum flexibility. See more about Taught Master's course formats.

Modules

The following modules are indicative of those offered on this programme. This list is based on the current curriculum and may change year to year in response to new curriculum developments and innovation.  Most programmes will require you to study a combination of compulsory and optional modules. You may also have the option to take modules from other programmes so that you may customise your programme and explore other subject areas that interest you.

Modules may include Credits

A computer system's architecture describes the underlying combination of software and hardware that needs to be provided before the system can be used; an understanding of the basic principles of computer architecture is essential if computer systems are to be used effectively.

Fundamental ideas of computer hardware:

Boolean algebra.

Binary and hexadecimal numbers, two's complement, and binary arithmetic.

Data representation: bits, bytes, and words; character codes.

The von Neumann architecture: processor, memory, and peripherals; registers, RAM and ROM, data and address buses; the fetch-execute cycle.

Processor microarchitecture: CISC v RISC, superscalar, pipelined, out-of-order execution, branch prediction, multiprocessing.

Cache architectures.

Buses.

Practical introduction to the use of a UNIX-like operating system:

The structure of the filing system.

Syntax of operating system commands: options, files, etc.

Input/output, redirection and pipes.

Operating system tools and their use in building pipelines.

The principles and mechanisms of operating systems:

Function and historical development of operating systems.

Processes: states, communication, mutual exclusion, synchronisation, semaphores, monitors, avoidance of deadlock, high-level scheduling, process security.

The kernel: hardware requirements, interrupt handlers, low-level scheduling.

Memory management: swapping, virtual memory, paging.

Input/output; blocking and non-blocking transfers; privileged I/O processes.

File systems: functions, storage media, layout and organisation of files, file security.

The loading process; libraries; relocation.

Resource allocation; resource management.

Local and remote file access.

Read more
15

This module contains four main components, several of which are at the forefront of the academic discipline and are informed by research:

1) Propositional and predicate logic, and resolution.

• the formal languages of propositional logic and predicate logic

• the role of resolution in theorem proving and logic programming

2) Prolog programming

• a thorough introduction to the Prolog programming language and the concept of declarative coding

3) Search Techniques

• generic search algorithms that are widely applied in solving computationally hard problems

4) Constraint Logic Programming

• how constraint satisfaction is useful in search and how this emerging paradigm fits with logic programming

Read more
15

The crowning piece of most Masters degrees is the Project and Dissertation in which you apply a wide range of skills learned in the taught modules to an interesting research problem or practical application of your choice. The Project Research module provides useful transferable skills for doing the project, and supports you in some preparatory tasks such as literature study and project planning.

Training in research methods is provided through a series of workshops, covering the following topics:

• Introduction to research

• Project selection

• Topic analysis

• Information gathering

• Simulation, experimentation and data analysis

• Writing about research

• Presenting research

• Intellectual property

• The publication process

• The review process

The module culminates in a mini-conference where students present their research.

Read more
15

Creating a quality software product requires much more than skilful programming. First of all, the requirements for the product must be determined. Unfortunately, customers' perceptions of their requirements are usually vague and incomplete, and often inconsistent too, so these perceived requirements must be carefully analysed and amplified. Before software is shipped, it is important that cost-effective measures are applied to ensure, as far as possible, that it is free from errors, especially major errors: this involves procedures such as source code analysis and inspection as well as thorough testing. But some bugs will inevitably get through to the delivered product, and it is important that users can easily submit informative bug reports that allow the problem to be quickly localised and rectified.

All of the issues just described have an impact on the design of the software: it must be designed, for example, to ensure that it is amenable to thorough and systematic testing, and that if internal errors do occur, they are detected quickly before the program's data files have been irrecoverably damaged. Also, design must ensure that the software can easily be adapted and extended as the customer's requirements evolve over time.

This module takes a wider view of the software development process, with an emphasis on techniques and procedures for ensuring high product quality. A key topic is the use of the Unified Modelling Language (UML) for problem analysis and software design. Towards the end of the module students have an opportunity to put theory into practice by undertaking a group project, with another group as their customer.

Syllabus

- Quality standards, including ISO9001 and CMM.

- Alternative models of a software project's lifecycle, and the role of the object-oriented development paradigm in modern lifecycle concepts.

- Object-oriented modelling notations, in particular UML, and the use of these notations throughout the project lifecycle.

- Mapping of designs expressed in UML into Java code.

- Techniques for verifying models, and the conformance of one model to another.

- Approaches to software testing and inspection.

- Approaches to software configuration management

Read more
15

Web-based information systems form the heart of e-commerce. They are also increasingly the way businesses handle all their information needs. Building such systems requires an understanding of up-to-date tools and technologies such as XML, UML, Java and databases; it also calls for an understanding of how to design systems that genuinely meet user and business needs.

This module starts by examining the business context of web-based information systems. It introduces design methodologies and techniques, using UML in recording requirements. Systems implementation involves database management systems and these are studied in some depth. By the end of the module, each student will have developed a complete information system which uses XML and Java to link dynamic web pages to a database back-end.

Information Systems:

Role of information systems in e-business.

IS development methodologies

Systems thinking and its relationship to IS development

Information analysis using UML

Systems design

Database Systems:

Relational and Object-Relational Database Management Systems

Database design and implementation

Database query languages

Transactions

Security and reliability

Web-related technologies:

Mark-up languages (XML, HTML, etc)

Web interfaces to databases (JDBC, servlets, etc)

Read more
15

Teaching and Assessment

Assessment is through a mixture of written examinations and coursework, the relative weights of which vary according to the nature of the module. The final project is assessed by a dissertation.

Programme aims

This programme aims to:

  • enhance the career prospects of graduates seeking employment in the computing/IT sector
  • prepare you for research and/or professional practice at the forefront of the discipline
  • develop an integrated and critically aware understanding of one or more areas of computing/IT and their applications (according to your degree title)
  • develop a variety of advanced intellectual and transferable skills
  • equip you with the lifelong learning skills necessary to keep abreast of future developments in the field.

Learning outcomes

Knowledge and understanding

You gain knowledge and understanding of:

  • how to engineer software systems that satisfy the needs of customers, using a state-of-the art methodology and an industrially-relevant programming language
  • a broad variety of advanced topics relating to computing/IT (the specific topics will depend on the optional modules you chose and may vary from year to year in response to developments in the field, staff changes etc)
  • the specification, design and implementation of software systems for a variety of platforms and across a range of application domains
  • the theoretical foundations of computer science
  • the architecture of computer systems including hardware components and operating systems in terms of their functionality, performance and interactions
  • the specification, design and implementation of information systems using the latest database and web technologies
  • professional, legal, social, cultural and ethical issues related to your chosen field of computing.

Intellectual skills

You develop intellectual skills in:

  • the ability to identify, analyse and formulate criteria and specifications appropriate to a given problem
  • the ability to model problems and their solutions with an awareness of any tradeoffs involved
  • the ability to evaluate systems, processes or methodologies in terms of general quality attributes and possible tradeoffs
  • the ability to deal with complex issues both systematically and creatively
  • the ability to work with self-direction and originality in tackling and solving problems
  • the ability to make sound judgements in the absence of complete data
  • the ability to review a research paper or technical report critically and to present your findings to a group of peers
  • the ability to plan and execute a substantial research or development-based project and to report the work in the form of a dissertation.

Subject-specific skills

You gain subject-specific skills in:

  • the ability to specify, design, implement and test computer-based systems
  • the ability to deploy effectively the tools used for the construction and documentation of software
  • the ability to undertake practical work that explores techniques covered in the programme and to analyse and comment on the findings.

Transferable skills

You gain the following transferable skills:

  • the ability to plan, work and study independently and to use relevant resources in a manner that reflects good practice
  • the ability to make effective use of general IT facilities, including information retrieval skills 
  • time management and organisational skills, including the ability to manage your own learning and development
  • an appreciation of the importance of continued professional development as part of lifelong learning
  • the ability to work effectively as a member of a team
  • the ability to communicate technical issues clearly to specialist and nonspecialist audiences
  • the ability to present ideas, arguments and results in the form of a well-structured written report
  • the ability to act autonomously in planning and implementing tasks at professional or equivalent level.

Careers

Graduate destinations

Our graduates have gone on to work in:

  • software engineering
  • mobile applications development
  • systems analysis
  • consultancy
  • networking
  • web design and e-commerce
  • finance and insurance
  • commerce
  • engineering
  • education
  • government
  • healthcare. 

Recent graduates have gone on to develop successful careers at leading companies such as:

  • BAE Systems
  • Cisco 
  • IBM
  • The Walt Disney Company
  • Citigroup 
  • BT.

Help finding a job

The University has a friendly Careers and Employability Service, which can give you advice on how to:

  • apply for jobs
  • write a good CV
  • perform well in interviews.

The School has a dedicated Employability Coordinator who is a useful contact for all student employability queries.

Industrial placements

You can gain practical work experience as part of your degree through our industrial placements scheme - we have a dedicated Placement Team who can give advice and guidance.  All our placements are in paid roles.

In previous years, students have worked at a wide range of large and small organisations, including well-known names such as:

  • Accenture
  • BT
  • GSK
  • IBM
  • Kent Police
  • Microsoft
  • Morgan Stanley
  • The Walt Disney Company.

You can take your work placement abroad. Previous destinations include Hong Kong and the US.

An industrial placement gives you invaluable workplace experience, which greatly enhances your employment prospects and also helps put your academic learning into a real-world context.

Study support

While studying on a taught Master’s, you can gain work experience through our industrial placement scheme. We have strong links with industry including Cisco, IBM, Microsoft and Oracle and are among the top ten in the UK for graduate employment prospects.

Postgraduate resources

The School of Computing has a large range of equipment providing both UNIX (TM) and PC-based systems and a cluster facility consisting of 30 Linux-based PCs for parallel computation. New resources include a multi-core enterprise server with 128 hardware threads and a virtual machine server that supports computer security experiments.

All students benefit from a well-stocked library, giving access to e-books and online journals as well as books, and a high bandwidth internet gateway. The School and its research groups hold a series of regular seminars presented by staff as well as by visiting speakers and our students are welcome to attend.

The School of Computing has recently built a makerspace on the Canterbury campus, which offers exciting new teaching and collaboration opportunities. Among other equipment, it contains milling machines, a 3D printer, laser cutter and extensive space for building and making digital artefacts.

Our taught postgraduate students enjoy a high level of access to academic staff and have their own dedicated laboratory and study room. Students whose course includes an industrial placement are supported by a dedicated team which helps them gain a suitable position and provides support throughout the placement.

Dynamic publishing culture

Staff and research students publish regularly and widely in journals, conference proceedings and books. Among others, they have recently contributed to: Journal of Artificial Evolution and Applications; International Journal of Computer and Telecommunications Networking; Journal of Visual Languages and Computing; Journal in Computer Virology.

Links with industry

Strong links with industry underpin all our work, notably with Cisco, Microsoft, Oracle, IBM, Agilent Technologies, Erlang Solutions, Hewlett Packard Laboratories, Ericsson and Nexor.

The Kent IT Consultancy

The Kent IT Consultancy (KITC) provides School of Computing students with consultancy experience while studying. KITC provides a project-based consulting service to small businesses in Kent. Its wide variety of services range from e-commerce solutions and network support contracts to substantial software development projects.

Global Skills Award

All students registered for a taught Master's programme are eligible to apply for a place on our Global Skills Award Programme. The programme is designed to broaden your understanding of global issues and current affairs as well as to develop personal skills which will enhance your employability.  

Entry requirements

A first, 2.1 or good 2.2 honours degree (or equivalent) in any subject. You should also have mathematical skills equivalent to a grade C or above in GCSE Mathematics.

All applicants are considered on an individual basis and additional qualifications, and professional qualifications and experience will also be taken into account when considering applications. 

International students

Please see our International Student website for entry requirements by country and other relevant information for your country. 

English language entry requirements

The University requires all non-native speakers of English to reach a minimum standard of proficiency in written and spoken English before beginning a postgraduate degree. Certain subjects require a higher level.

For detailed information see our English language requirements web pages. 

Need help with English?

Please note that if you are required to meet an English language condition, we offer a number of pre-sessional courses in English for Academic Purposes through Kent International Pathways.

Research areas

Programming Languages and Systems Group

Our research involves all aspects of programming languages and systems, from fundamental theory to practical implementation. The Group has interests across a wide range of programming paradigms: object-oriented, concurrent, functional and logic. We research the links between logic and programming languages, the verification of the correctness of programs, and develop tools for refactoring, tracing and testing. We are interested in incorporating safe concurrent programming practices into language design.

The Group is also interested in practical implementation of programming languages, from massively concurrent parallel processing to battery-operated mobile systems. Particular research topics include lightweight multi-threading kernels, highly concurrent operating systems, memory managers and garbage collectors.

Research areas include:

  • theoretical and architectural questions concerning designs for both hardware and software
  • abstractions and implementations of concurrency in programming languages
  • formal specification of systems and their architecture
  • design patterns and tools for enabling the safe and scalable exploitation of concurrency
  • compilers, memory managers and garbage collectors
  • lightweight multi-threading kernels and highly concurrent operating systems
  • refactoring of functional and concurrent languages
  • applications of formal methods to provably correct, secure systems
  • model checking and abstract interpretation, including applications to discovering security vulnerabilities
  • program verification and theorem proving

Computational Intelligence Group

This Group brings together interdisciplinary researchers investigating the interface between computer science and the domains of bioscience and cognition. In terms of applying computation to other domains, we have experts in investigating the modelling of gene expression and modelling of human attention, emotions and reasoning. From the perspective of applying biological metaphors to computation, we research new computational methods such as genetic algorithms and swarm intelligence.

The Group also develops novel techniques for data mining, visualisation and simulation. These use the results of interdisciplinary research for finding solutions to computationally expensive problems.

The Group has strong links with other schools at the University of Kent, as well as with universities, hospitals and scientific research institutes throughout the country and internationally.

Areas of research activity within the group include:

  • bio-inspired computing including neural networks, evolutionary
  • computing and swarm intelligence
  • application of computational simulations in biology and medicine
  • systems biology including gene expression modelling
  • theory and application of diagrammatic visualisation methods
  • data mining and knowledge discovery
  • construction of computational models of the human cognitive and neural system.

Cyber Security Research Group

Security - of information, systems, and communications - has become a central issue in our society. Interaction between people's personal devices (far beyond just phones and computers) and the rest of the connected world is nearly continuous; and with the advent of the Internet Of Things its scope will only grow.

In that context, so much can go wrong - every communication can potentially be intercepted, modified, or spoofed, and surreptitiously obtained data can be commercially exploited or used for privacy invasions. In fact, data flows in society are such that many people already feel they have lost control over where (their) data goes.

The cyber security research group operates within that context. All members bring a particular technological emphasis - the analysis of particular classes of security problems or their solutions - but are fully aware that it all fits within a wider context of people using systems and communicating data in secure and insecure ways, and how external pressures beyond the mere technology impact on that. The topic of computer security then naturally widens to include topics like privacy, cyber crime, and ethics and law relating to computing, as well as bringing in aspects of psychology, sociology and economics.

From that perspective, the Cyber Security research group played a key role in setting up, and continues to be a core contributor to, the University's Interdisciplinary Cyber Security Research Centre, see www.cybersecurity.kent.ac.uk

The group has a strong involvement with postgraduate teaching in this area. It teaches most of the core modules in MSc programmes in Computer Security, and Networks and Security. A new (from September 2017) MSc Course in Cyber Security has been provisionally certified by GCHQ. The group is also involved in undergraduate modules in this area, as well as postgraduate programmes in other schools such as the MSc Information Security and Biometrics, and in UK activities to define curricula in Cyber Security.

Areas of Research Activity

Members are engaged in the following areas of research (research areas in more detail) .

  • Data Ethics and Privacy
  • Authorisation Infrastructures
  • Cybercrime
  • Internet Of Things Security and Privacy
  • Authentication
  • Quantum Computation and Information, with Security Applications 
  • Formal Methods for Cryptography
  • Steganography and Steganalysis
  • Trust Management and Metrics and Reputation Systems
  • Tools for Vulnerability Analysis
  • Self-Adaptation applied to Security and Privacy
  • Cloud Security
  • Human Aspects of Security
  • Blockchain and Distributed Ledger Technology
  • Identity Management

Computing Education Group

We focus on disciplinary-specific pedagogy, especially the teaching and learning of computer science and programming.

Our research interests focus on understanding the aspects of learning that are specific to computing education, and which range from examining general theories of learning, through thematically focused investigations (such as gender), to tool construction. We examine education from multiple aspects, including supporting computing education research infrastructure, working with teachers, or focusing on student learning.

Areas of interest include:

  • building an evidence base of research on early programming education
  • tool support for learning and teaching of programming, including custom-made development tools, such as educational programming languages, or development environments, which can adapt to changes in programming paradigms and technology and pedagogical advances
  • analysis of data generated as a part of the learning process, which could be text-based, naturally occurring in the classroom (eg, assessments), generated as a reflective process on learning (eg, diaries), or generated from interaction with programming environments.

Data Science Research Group

Data Science is about developing new techniques to better understand data and draws on many areas within and outside of computer science. Our research group develops and applies methods to interpret rich information sources. Our research comes under three themes:

eHealth

  • Dr Caroline Li gathers and analyses EEG data for the study of seasonal affective disorder.
  • Dr Srivas Chennu works on neurodynamics of consciousness, developing new tools to study brain networks, including improved diagnostics and prognostics during emergence from coma. He also uses neural network modelling for predictive coding in cognition.
  • Professor Ian McLoughlin studies speech signal processing, human hearing, automatic speech recognition as well as deep neural network acoustic models.
  • Dr Palani Ramaswamy has worked on biological signal analysis, brain-computer interfaces and biometrics. He has applied machine learning techniques to these and other fields.

Systems

Finance

  • Dr Michael Kampouridis and Dr Fernando Otero research in the areas of algorithmic trading and financial forecasting. They have worked with different types of data, such as foreign exchange ultra-high frequency data. Algorithms they've used include genetic programming and ant colony optimisation.
  • Dr Kampouridis works on the pricing of weather derivatives by using machine learning algorithms.

Staff research interests

Full details of staff research interests can be found on the School's website.

David Barnes: Senior Lecturer

Simulation and modelling for biosciences, the teaching of introductory programming, chess cheating and legacy software.

View Profile

Professor Howard Bowman: Professor of Cognition and Logic

Human attention, emotions, reasoning; connectionist modelling; symbolic modelling; EEG recording and analysis methods; formal methods and concurrency theory.

View Profile

Professor David Chadwick: Professor of Information Systems Security

Public key infrastructures; privilege management infrastructures; trust management; identity management; privacy management; policy based authorisation; cloud security; autonomic access controls and internet security research.

View Profile

Dr Olaf Chitil: Lecturer

Semantics and theoretical foundations of programming languages; type theory; program transformation; compiler construction; message-passing- based concurrency; programming tools; how to write programs.

View Profile

Dr Dominique Chu: Lecturer

Molecular computing (including biochemical computers), stochastic neural networks, complexity and computation, mathematical modelling of stochastic systems.

View Profile

Dr Rogerio de Lemos: Senior Lecturer

Software engineering for self-adaptive systems: dynamic generation of management processes, abstractions for supporting self-adaptability and self-organisation, resilience evaluation; self-adaptive dependable and secure systems; architecting dependable systems: abstractions for fault tolerance, and verification and validation of dependable software architectures; software development for safety-critical systems; dependability and bio-inspired computing.

View Profile

Professor Sally Fincher: Professor of Computing Education

The construction and boundaries of CS education; the teacher perspective, especially teacher decision-making; patterns and pattern languages, their use in knowledge-transfer, and their application to CS pedagogy.

View Profile

Professor Alex Freitas: Professor of Computational Intelligence

Data mining; the biology of ageing; evolutionary algorithms; bioinformatics.

View Profile

Dr Colin Johnson: Reader

Bioinformatics; computer simulation in biology; bio-inspired computing including genetic algorithms, genetic programming and swarm intelligence methods.

View Profile

Professor Richard Jones: Professor of Computer Systems

Implementation of programming languages; memory management; garbage collection, distributed garbage collection; object demographics; program analysis for improved memory management; program visualisation. 

View Profile

Dr Stefan Kahrs: Lecturer

Expressiveness of programming languages, type systems, term rewriting, infinitary rewriting.

View Profile

Michael Kampouridis: Lecturer

Computational finance; application of computational intelligence (CI) techniques to business-related problems, such as economics and finance; use of evolutionary techniques (eg, genetic algorithms, genetic programming); financial forecasting; intelligent decision support systems for business.

View Profile

Dr Andy King: Reader in Program Analysis

Abstract interpretation, logic programming and security.

View Profile

Dr Caroline Li: Lecturer

Tools for controlling computer/robot using brain signal; body sensor data fusion for healthcare and sports; methods for diagnosing, classifying and monitoring states of brain health/ illness; signal processing and machine learning methods.

View Profile

Fernando Otero: Lecturer

Development of ant colony optimisation algorithms for data mining; economic applications of data mining; bioinformatics; evolutionary algorithms, mainly genetic programming.

View Profile

Scott Owens: Lecturer

Semantics of shared memory concurrency; design of programming languages; formal verification for software and interactive theorem proving.

View Profile

Dr Peter Rodgers: Reader

Information visualisation; graph drawing; Euler diagrams.

View Profile

Professor Simon Thompson: Professor of Logic and Computation

Functional programming in Haskell, OCaml and Erlang; refactoring functional programs: tool building, theory and practice; dependently-typed functional programming; testing of complex and concurrent systems using properties; property extraction from test suites. 

View Profile

Gerald Tripp: Lecturer

Techniques for the analysis and control of high-speed packet networks, including system monitoring and network intrusion detection; use of special-purpose hardware and firmware designs to perform high-speed string and regular expression matching.

View Profile

Ian Utting: Senior Lecturer

Tool support for teaching and learning in CS, especially programming, and especially small and mobile devices; large scale data-driven studies of initial programming education, especially using Black Box.

View Profile

Professor Frank Wang: Professor of Future Computing; Head of School

Future computing; unconventional computing; non-Turing architecture; cloud computing; big data; deep learning; memristor; neural networks; nature-inspired computing; green computing.

View Profile

Dr Laura Bocchi: Lecturer

Theory and application of session types, concurrency and service-oriented computing.

View Profile

Professor Ian McLoughlin: Head of School (Medway)

Speech is the primary communications mechanism for humans, and is increasingly the way we interact with computers and mobile devices. In my research I deal with all aspects of speech, language and hearing, and ally this with powerful machine learning techniques that mimic how human brains acquire language and recognise sounds (machine hearing). My research team also works with speech-impaired patients to develop techniques that enable them to regain the power of speech in their daily lives.

View Profile

Dr Matteo Migliavacca: Lecturer

Stream processing, database systems, parallel data processing, networked systems, cloud computing, distributed systems, big data.

View Profile

Dr Palaniappan Ramaswamy: Reader, Admissions Officer (Medway)

Analysis of biomedical signals (such as EEG, PCG and ECG) for various applications: brain-computer interface, biometrics, electrophysiological analysis, cardiovascular disease diagnosis and stress management. Also, analysis of speech and image data for various engineering and computer science applications. Tools utilised: advanced signal processing and machine learning (such as neural networks and genetic algorithms).

View Profile

Dr Mark Batty: Senior Lecturer

Empirical testing of the behaviour of hardware and compilers, building formal models of parts of the system, the development of algorithms and data-structures that use fine-grained concurrency, and the verification of those pieces of concurrent code.

View Profile

Dr Marek Grzes: Lecturer

Machine learning, artificial intelligence for games, data analysis, probabilistic reasoning, and applications thereof.

View Profile

Professor Julio Hernandez-Castro: Professor of Computing

Computer and network security, cryptography and cryptanalysis, steganography and steganalysis, data loss prevention and RFID security.

View Profile

Dr Anna Jordanous: Lecturer

Computational creativity and its evaluation, music informatics, digital humanities, knowledge modelling, Semantic Web, and natural language processing.

View Profile

Dr Carlos Perez-Delgado: Lecturer

The advantages and limitations that quantum theory conveys to communication, computation, metrology, and security.

View Profile

Fees

The 2019/20 annual tuition fees for this programme are:

Computer Science - Taught MSc at Canterbury:
UK/EU Overseas
Full-time £7940 £19000
Computer Science with an Industrial Placement - MSc at Canterbury:
UK/EU Overseas
Full-time £7940 £19000

For students continuing on this programme fees will increase year on year by no more than RPI + 3% in each academic year of study except where regulated.* If you are uncertain about your fee status please contact information@kent.ac.uk

General additional costs

Find out more about general additional costs that you may pay when studying at Kent. 

Funding

Search our scholarships finder for possible funding opportunities. You may find it helpful to look at both: