Computer Science at Oxford
About the course
From MSc in Computer Science at Oxford
As in other branches of applied mathematics and engineering, improvements in the practice of programming require determined and meticulous application of methods of mathematical understanding, calculation and proof.
Recognising this, this MSc has been designed to teach the mathematical principles of specification, design and efficient implementation of both software and hardware. This course is intended for graduates in Computer Science as well as graduates in other numerate disciplines who have some training or experience in programming or have been employed professionally in a related industry.
To provide the foundation for a professional career in the computing-based industries, including telecommunications, process control, business-, mission-, and safety-critical fields.
To enhance the skills of a professional who is already working in one of these industries.
To provide a foundation for research into the theory and practice of programming and the design of computer-based systems.
To present knowledge, experience, reasoning methods and design and implementation techniques that are robust and forward-looking.
The Department of Computer Science is committed to the development and application of effective theory based on realistic practice, and some of the modules were developed through consultation and collaboration with industry. We believe that only by the interplay of theory and practice can professionals be trained properly in such a rapidly advancing subject. Practice alerts us to real contemporary problems; theory is a shield against professional obsolescence.
Entrants to the course come from a variety of backgrounds. Experienced programmers in industry and commerce are motivated by the need for formal methods to overcome the problems of unreliable and inadequate software, or wish to extend their understanding by studying new programming and development paradigms. Recent graduates in Computer Science supplement their knowledge with the kind of sound mathematical basis which is not always found in undergraduate courses. Graduates in Mathematics, Science and Engineering apply their training in the context of a rigorous application of the fundamental techniques of Computer Science.
Students develop a knowledge and understanding of a formal disciplined approach to computer science - a range of relevant concepts, tools and techniques - the principles underpinning these techniques and the ability to apply them in novel situations. On subsequent employment, graduates of the course are able to select techniques most appropriate to their working environment, adapt and improve them as necessary, establish appropriate design standards for both hardware and software, train colleagues and subordinates in the observance of sound practices, and keep abreast of research and development.