Our BCS accredited MSc in Computer Science aims to provide you with a diverse range of skills so that you will be able to produce optimal solutions in complex, multi-discipline projects which are increasingly widespread in industry.
Examples of such projects include web technology combining networking, human-computer interface and intelligent systems, and high-speed networks using concepts from artificial intelligence and requiring intelligent front ends.
This course is aimed at new graduates and those with substantial experience in the computing industry who want to gain a qualification that develops their expertise.
Why choose this course?
- Our BCS accredited MSc in Computer Science aims to provide you with a diverse range of skills so that you will be able to produce optimal solutions in complex, multi-discipline projects which are increasingly widespread in industry.
- Examples of such projects include web technology combining networking, human-computer interface and intelligent systems, and high-speed networks using concepts from artificial intelligence and requiring intelligent front ends.
- This course is aimed at new graduates and those with substantial experience in the computing industry who want to gain a qualification that develops their expertise.
BCS, the Chartered Institute for IT.
The MSc in Software Engineering is Accredited as meeting the requirements for CITP Further Learning and partially meeting the requirements for CEng and has been awarded the EQANIE (European Quality Assurance Network for Informatics Education) label.
This course in detail
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 modules amounting to 180 credits. This comprises six taught modules (20 credits each) plus your dissertation (60 credits).
The MSc in Computer Science with placement enables you to work in industry for a year in the middle of your course to give valuable workplace experience. Placements are not guaranteed, but the departments dedicated placement team will help with the process of finding and applying for placements. To qualify for a master’s degree with placement, you must pass modules amounting to 180 credits plus the zero credit placement module. This comprises six taught modules (20 credits each) plus your dissertation (60 credits).
The Postgraduate Diploma in Computer Science allows you to concentrate on the taught part of the degree and is ideal for people working in the computing industry who wish to brush up their skills. To qualify for a Postgraduate Diploma, you must pass modules amounting to 120 credits. This comprises six taught modules (20 credits each). In some cases, it may be possible for a student on a Postgraduate Diploma to do 3 taught modules (20 credits each) plus your dissertation (60 credits).
The Postgraduate Certificate in Computer Science allows you to concentrate on the taught part of the degree and is ideal for people working in the computing industry who wish to learn a specific area in this rapidly changing discipline. To qualify for a Postgraduate Certificate, you must pass modules amounting to 60 credits. This comprises three taught modules (20 credits each).
You can also do a Postgraduate Certificate in Computer Science Research Project.
Part-time students normally distribute the work evenly over a two-year period.
In Semester 1 you can choose from the following modules:
- Research and Scholarship Methods (compulsory for MSc and PG Dip) equips students with the tools necessary for the scholarship and research skills needed for the computing field as well as equipping them with the professional skills and outlook needed for a lifelong career in the computer industry.
- Secure Systems Architecture (compulsory for MSc) studies computer and network security and the ways that computer systems can be secured. This module will look at both the technological and human issues involved in securing and assessing the security level of a modern networked computer system. It also introduces basic concepts of operating systems and architecture.
- Formal Software Engineering (optional) explores the techniques used to keep programs error-free at every stage of the software life-cycle. In particular, it focuses on the process of reasoning about the properties of programs and on machine-assisted refinement from specification to implementation. It also introduces various mathematical concepts of software engineering.
- Network Principles (optional) teaches the principles and practice of computer networking with an emphasis on data communications and local area network technologies and design.
In Semester 2 you can choose from the following modules:
- Software Production (compulsory for MSc and PG Dip) studies the current practices, skills and techniques applied to managing software development related projects, individually and in project teams. The module combines theory with pragmatic and professional insights and considers requirements engineering, project management, risk, quality assurance, usability and HCI issues.
- Paradigms of Programming (optional) enables students to broaden their existing understanding of programming by learning and practising multiple programming styles and programming technologies; and by studying the underlying disciplines of programming language design, compiler/interpreter construction, formal properties of programming languages, and low-level development.
- Compiler Construction (optional) studies 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. Students will work in small groups to create a compiler for a Java-like, high-level programming language.
- Machine Learning (optional) introduces students to the fascinating and increasingly important world of Machine Intelligence. This module will cover the key current technologies in this area and will expose students to current research directions in this rapidly evolving field.
- Operating Systems Development (optional) covers low level systems programming and extends the operating systems concepts covered in Secure Systems Architecture. This module gives students the opportunity to see how the code inside a modern OS is designed and implemented in a safe and secure manner.
- Secure Programming (optional). It is increasingly important that software must not only be functional and reliable, but they must also be secure. This module looks at the key concepts and principles used in constructing secure software and in auditing and making secure, existing software.
- Low Level Tools and Techniques (optional) introduces students to the basics of assembly programming and code analysis. Students on this module are taught to analyse, understand and help defend against malware by analysis of the code and the command and control structures used by the malware. Students will also have the opportunity to learn how to analyse and defend against polymorphic malware.
- Systems Administration (optional) studies the technical aspects of the application of theoretical concepts in operating systems, computer networks, and IT systems administration to the practical implementation of designing, implementing, and managing a small heterogeneous, multi-platform network. The material covered will prepare students for industrial and business problems they will face after graduation. This will be largely a directed study module, with students being supported in the design, implementation and subsequent maintenance of a proof-of-concept system.
- IT Systems Management and Governance (optional) complements the material studied in Systems Administration. The module takes a more strategic look at systems administration by considering the management and governance aspects. Students will look at how enterprise networks consisting of different, interconnecting technologies, should be managed and improved efficiently. The material covered in this module prepares the student to manage large networks according to appropriate IT governance procedures and to effectively lead system administrator teams.
- Multiservice Networks (optional) builds on the foundations laid in Network Principles and analyses the technologies and protocols used for multi-service networks in order to enable the student to develop the knowledge and skills required to design multi-service networks. The networks are illustrated with case studies, including state-of-the-art practice and recent research and development in the field.
As courses are reviewed regularly, modules offered may differ from those listed.
Students undertaking an MSc with placement will do a 1 year placement in industry. The placement will be undertaken after the taught component and before doing the dissertation.
Students studying for an MSc will also take:
- MSc Dissertation which is an individual research and development project that allows you to study a topic of your choice in depth, guided by your supervisor. The work may be undertaken in close co-operation with a research, industrial or commercial organisation. You undertake your dissertation over the summer period.
Teaching and learning
Lectures provide a theoretical basis, while the practical sessions are used to strengthen your understanding by active involvement. 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.
Many of the modules are enriched by the teaching staff's research expertise. There are also visiting lecturers from research organisations and industry.
The methods of assessment include examination and coursework, reflecting the development of academic content from the more practical aspects to the more conceptual.
Approach to assessment
Assessments include coursework exercises, presentations, lab work, reports and examinations.
Our labs are equipped with industry-standard equipment and software tools. This enables students to develop skills of immediate relevance to industry needs while also providing a sound practical basis that enhances their understanding of theoretical concepts. Networking laboratories are equipped with modern Cisco routers, switches and security devices to enable design construction and testing of complete high bandwidth, secure, wired and wireless networks. Our server and security laboratories provide a safe environment for students to experiment with range of complex systems and software.
Students on placement are responsible for living costs associated with their placement.
Part time study is an option on this programme for students who wish to combine their study with work. Where possible we try to ensure that part time students only need to attend for 1 day a week, although students will be expected to undertake additional independent study.
This school offers programs in:
Last updated July 27, 2016