Due to the ongoing impact of the global pandemic we have had to evaluate all of our courses to ensure that we adhere to Government guidelines to protect the health and wellbeing of our staff and students. This means that as we work through these changes the modules, delivery methods and assessments shown, including those shown for future years, are subject to change.
Do you enjoy programming, or are you convinced you would? Do you want to know how to talk to customers and clients, understand their needs, and be able to specify, design, build and test the software they need? How to work by yourself and also in teams? And do you want to know more about the scientific and theoretical foundations of the subject? If you want to do all these things, and also learn about the principles of coding, underpinning mathematics, mathematical models of computation, operating systems and networks, and professional skills, Leicester’s Computer Science programme is for you!
The course covers the methods for developing software, following rigorous engineering practices. You will learn how to plan and manage software architectures for practical large-scale development projects, while adopting an academic and rigorous approach which will support you throughout your career. We cover: how to understand customer requirements; specify, design and code a solution; and test and release your solution to your customer. You will learn about mathematical models of computation such as automata and register machines, and formal language theory.
Modules in computer architecture, operating systems and networking cover essential knowledge of modern computing systems (mobile computers to world-distributed computation). And, of course, we cover databases and information systems. In optional modules you can learn about a range of advanced topics including user interfaces, web technologies, mobile applications, security, distributed systems and applications, and concurrency theory.
Project work is highly desired by employers. In your second year group project you will learn the demands of working in a professional environment as you endeavour to deliver software that is often commissioned by a real client. In your final year, you undertake an individual problem-based project, exercising your creativity and innovation to design and implement a software solution to the problem; you can also apply the scientific principles you learnt. Previous projects have included 3-D games, mobile phone/tablet apps, security software, internet telephony, programming robots, a sheet music editor, theorem provers, processor emulators, and more.
Download a prospectus (PDF, 6MB)