Course description
MSc
Accredited by the British Computer Society
The MSc in Computer Science course allows you to build an individual programme that incorporates knowledge from several areas of computing and electronics. It aims to provide you with a diverse range of skills so that you will be able to produce optimal solutions in hybrid projects, now more and more widespread in industry.
Computing solutions often combine different disciplines. For example, web technology combines networking, human-computer interface and intelligent systems, whereas high-speed networks may use concepts from artificial intelligence and have intelligent front ends. If you have substantial experience in the computing industry and would like to gain a qualification that reflects your expertise, this course could be for you.
Practical work is carried out in newly refurbished computer laboratories. Lectures and practicals take place on Oxford Brookes’ Wheatley Campus.
Course content
The MSc in Computer Science has a modular course-unit design providing you with maximum flexibility and choice. To qualify for a master's degree you must pass five taught modules and the Dissertation, together with the Research and Study Methods module.
Additionally, during the induction period before the formal start of the course, you may take a limited number of primer modules relevant to your course.
Your taught programme will be made up from at least two modules from the compulsory list in Semester 1 and three from Semester 2.
Semester 1:
* Digital Mobile Communications covers the principles and techniques of digital communications with particular emphasis on its applications in mobile networks. The module also covers the network infrastructure, communication protocols, multiplexing technologies, signalling, call set-up, data structures, system design and environmental considerations of relevance in GSM networks.
* Network Principles introduces the principles and practice of computer networking with an emphasis on data communications and local area network technologies and design.
* Distributed Systems involves systems programming and the use of distributed programming environments that use message passing and concurrency concepts. Requires knowledge of computer systems hardware and operating systems, networking and structured programming.
* Web Mark-up Principles introduces the principles of web mark-up languages with an emphasis on open standards (W3C recommendations in particular) and the techniques for defining new mark-up languages.
* Web Programming Principles introduces the principles and practice of web programming, covering both client side and server side programming using languages such as JavaScript and Java.
* Software Systems Development is designed to meet the increasing need to develop robust, reliable, reusable, efficient, portable and extendable software. Object orientation is both a design and a programming paradigm arising out of tried and tested software engineering practices. This module gives you the opportunity to learn the principles of object orientation and apply them to software development using an appropriate object oriented programming language.
* Software Production aims to combine textbook learning with professional insights. It provides knowledge and skills pertaining to professional techniques and management approaches for project teams developing software-based systems for clients. It takes a sound theoretical approach but sets this in the context of real-life projects and the issues that arise.
Semester 2:
* Optical and Broadband Networks examines the design and principles of operation of the individual components in an optical fibre communication system, and examines the performance analysis of complete systems and networks.
* Computer-Assisted Software Development looks at the use of a formal notation and an associated software tool in the specification and development of software that is proven correct with respect to its specification.
* Database Technology involves the analysis, design, implementation and operation of database application systems. It looks at database system software, query processing, data structures and file organisation.
* Object Oriented Software Development gives you the opportunity to learn the principles of object orientation and apply them to software development using an appropriate object-oriented programming language.
* Artificial Intelligence involves an application-oriented study of the principles and methods that support the development of artificial intelligent systems.
* Advances in User Interface Design involves a study of the principles and methods that support the development of a range of cutting-edge user interfaces.
* Multiservice Networks explores the principles of high-speed multiservice network design and technology, illustrated with case studies including state-of-the-art practice.
* Distributed Application Design examines the design and implementation of applications in a distributed environment.
* Web Infrastructure looks at the principles of transforming one mark-up language into another and some common target languages such as SVG for graphics and MathML for mathematics. The module covers transformation processors such as XSLT and Xforms.
* Web Deployment introduces the challenges and technologies for constructing advanced applications using web services, and VoiceXML. This module also covers the mobile web.
* Language Specification and Compiler Construction provides a study of the principles, methods and techniques of compiler construction for imperative programming languages and the role of language tools in the broad context of software development.
* Software Technologies addresses the important technologies for software development, much of which now relies on distributed computing and the internet. Furthermore, it is increasingly the case that software is developed from software components. The theory of such a development approach and its practice using current technologies are covered here.
* Semantic Web introduces the challenges of the semantic web for reasoning about web resources, using metadata and inferencing. Also introduces current research directions in this field.
Research and Study Methods underpins work carried out for the dissertations. The module, delivered in a seminar style, will provide you with research skills, planning techniques, progress management and review, and the ability to use ICT support materials. You will be given guidance on the analysis and technical presentation of research material.
The Dissertation is an individual research and development project of 10,000 to 15,000 words on a topic closely related to your programme of study. The work may be undertaken in close co-operation with a research, industrial or commercial organisation.
Teaching, learning and assessment
Teaching methods employed reflect the subject’s content, its character and, of course, each lecturer’s personality and expertise. Lectures provide a theoretical basis, while the practical sessions are used to strengthen your understanding by active involvement. Assessed coursework and projects form the basis for continuous assessment. These methods have been developed to provide the varied experience that our students require, including the opportunity to discuss your work directly with the lecturers.
The methods of assessment include examination and coursework, reflecting the development of academic content from the more practical aspects to the more conceptual.
A benefit of the modular structure of this course is that you can vary your programme after the first semester. If you decide to study one area in greater depth you could transfer to one of the specialist programmes, such as MSc in High Speed Networks and Distributed Systems or MSc in Web Technologies.
Quality
Teaching staff are drawn from the School of Technology and many of the modules are enriched by their research expertise. Visiting lecturers are also invited from research organisations and industry. The programme benefits from the rigorous validation and review processes at the University, and the external examiners are very positive about the course.