Find out more about studying MSc - Computer Science at University of Hertfordshire? We've gathered all the key details, entry requirements, modules, fees, and more. Take the next step by booking an open day to explore it for yourself.
MSc - Master of Science
De Havilland - campus
Full Time
Sep 2027
1 Year
About the course One of a range of degrees from the taught Masters Programme at the School of Physics, Engineering and Computer Science. Our course is specially designed for graduates of numerate subjects other than computer science. It is mostly taught separately from the other courses. It intensively covers a broad range of the key principles and techniques of computer science. There is an emphasis on software development, in particular when applied to solving problems in other disciplines. Depending on the modules chosen, it can lead to a career in areas such as systems development, IT management, or the deployment of advanced applications in specific disciplines.
The module develops the fundamental concepts underlying the design and operation of modern computing systems: number systems, digital logic, and data representation. It then presents the concepts and ideas behind the construction of the main components: the processor, memory, and I/O sub-systems. This includes a discussion of the prevalent programming paradigm, low-level programming languages, and an exploration of memory organisation, data movement, and I/O requirements and implementation. Increasing performance demands over recent years has lead to the enhancement of multiprocessor systems and the introduction of thread level parallelism resulting in parallelism far beyond that of a uniprocessor. Thus, the discussion of these concepts also sets the scene for an examination of more complex topics such as performance improvement through parallelism and pipelining in the light of the so-called "memory wall problem". Throughout the module, the focus is on general concepts rather than specific implementations, and the material is approached from the point of view of a programmer, rather than that of an engineer.
The project is a showpiece opportunity for students to apply their knowledge and skills to the design and development of a computerised solution to a particular problem within the domain of computer science or applying computer science techniques to solve problems from outside the domain of computer science, and in doing so demonstrating what they know about current practices in computer science. The project is a self-directed piece of work, conducted with minimum supervision that demonstrates the student?s ability to plan and manage a substantial piece of work, and steer their own efforts. Students are expected to be thorough in their work, and, particularly, identify and tackle any difficult or challenging aspects of the problems they are trying to solve. It is not just the quantity, or even the quality of work that is considered when grading the project, but the level of difficulty and the scope of the problem being addressed.
The module will involve a broad case study involving the provisioning of a system which adheres to ethical and professional guidelines and standards. This will be a team project. One such case study might take the form of a large online platform where teams would have to create policies both for developers and users. The likely topics of those policies would be: issues involving sharing of user content, licensing of third party codes, moderation of content, consents from users relating to the tracking of user activity). The team would have to edit the platform such that all forms and submissions of user data are compliant with regulations particularly operative in the UK and the European Union.
This module provides an in-depth study of the design and implementation of relational databases. The module provides the principles and the techniques needed to develop relational database systems, together with the database theory on which these principles and techniques are founded. There is a large practical element, using a popular market leading product in the roles of database designer, database administrator and end user. The module also raises awareness of areas where new types of database are emerging, for example in the use of databases in Big Data environments.
This module explores the main functionalities of a modern operating system, and how these functions may be implemented. It provides detail of complex networking principles with examples drawn mainly from the TCP/IP protocols of the Internet, aiming to identify important problems, concepts and algorithms that might be applicable to any type of network. This module is designed for postgraduate students. It relies upon the students bringing effective study skills and a mature attitude to their studies. A more detailed description of the module content is provided in the module delivery information for students.
This module introduces the key facilities found in procedural and object-oriented programming languages. It develops the skills needed to use such languages to build and verify high quality programs to solve clearly-specified and complex problems. It assumes no previous programming experience and uses a practical approach and up-to-date tools to explore the principles underlying modern approaches to program development. A more detailed description of the module content is provided in the module delivery information for students.
This module provides students with an opportunity to work in teams in order to put a selected software development methodology into practice through the development of a software application. A more detailed description of the module content is provided in the Module Guide.
The University of Hertfordshire offers a huge variety of postgraduate courses across 19 subject areas, from creative art...