About the course
Modern devices often rely on data that is distributed across multiple computers, whether closely located or more distant. Developing software for such systems offers many benefits, but it also poses new challenges to be overcome, particularly in guaranteeing the security and robustness of the communication between devices.
The MSc at Hull is designed to enable you to overcome those challenges. It prepares you to exploit the extraordinary potential of distributed systems, both in terms of storage capacity and processing power, whilst being aware of the unique constraints and security problems they introduce. You will have access to cutting-edge equipment and facilities, and you will finish with a much greater understanding of how software development needs to adapt to the unique environment of a distributed system. These skills and knowledge are highly sought-after in an industry that is increasingly adopting new distributed technology, such as cloud-based solutions.
The course begins in September each year and lasts twelve months. There are two trimesters of taught modules, followed by an individual dissertation project during the third trimester.
Studying Computer Science at Hull, you'll benefit from an excellent experience for students with a supportive community. We have an international reputation for our research activities, with a strong record of industrial and public grant funding. We are also affiliated with Microsoft’s DreamSpark programme, which allows you to access the latest Microsoft operating systems and development software for home use. Once registered with the University, you can download the software free of charge.
What you'll study
The MSc Computer Science (Security and Distributed Computing) programme supports students with various levels of computing and programming practice experience, with material that supports the transition into the postgraduate environment. There is also suitable content on professional skills and the importance of ethics for practising computer scientists.
Our degrees are accredited by the British Computer Society, The Chartered Institute for IT. The BSc and MSc programmes fully meet the academic requirements for Chartered IT Professional and partial Chartered Engineer status, while our MEng programmes fully meet the academic requirements for both Chartered IT Professional and Chartered Engineer status. Some employers recruit preferentially from accredited degrees, and an accredited degree is likely to be recognised by other countries that are signatories to international accords.
As a route into research, the programme supports the development of postgraduate technical skills, alongside critical research, analysis and planning activities.
In lectures you’ll benefit from a range of techniques, from interpreting complex ideas through interactive discussions, to live programming or other problem-solving demonstrations.
Teaching and learning
We place a strong emphasis on practical laboratory sessions. This will significantly develop your core computer science skills, and enhance your employability through exposure to commercial projects.
As teamwork plays a key role in commercial software development and has great value as a career skill, group work is used in a number of modules.
Practical coursework is the main form of assessment, and you will design, build and test software solutions to a variety of problems. This is complemented by written coursework. The largest assessment is the dissertation.
Computer Science Dissertation
You will make an original contribution to research by designing, carrying out and writing up your own project on a topic you choose, supported by your dissertation supervisor.
Object Oriented Design and Development Using C#
Develop a deeper understanding and critical analysis of contemporary component-based, managed programming environments, including how they play a key role in creating secure software systems.
We'll introduce you to security aspects of and advanced concepts in computer networking, building on your background in basic networking, distributed systems and programming. You'll learn how to identify and mitigate risks in computer networked systems.
Study the theory and practice needed to develop software, based on realistic contexts and clients’ requirements. You'll learn through an authentic task-based approach to software development, with experience of leadership, cooperation and teamwork.
The module provides a critical overview of the major architectural models and programming paradigms used in distributed computing. You'll be taught to design and deploy secure, reliable, enterprise-scale distributed applications.
You will be introduced to a wide variety of concepts relating to the security of software systems at both the language and application levels. You'll give detailed consideration to common security algorithms and their implementations and how the runtime environment can support and implement security at various levels.
Our teaching staff