Curious about studying Computer Science - BSc (Hons)at Birmingham City University? We've gathered all the key details—entry requirements, modules, fees, and more. Hear from real students by checking out reviews, or take the next step by booking an open day to explore it for yourself.
Bachelor of Science (with Honours) - BSc (Hons)
Millennium Point
Full Time
Sep 2026
3 Year
This Computer Science degree explores a range of subjects including artificial intelligence, cloud computing and wearable computing so that you graduate ready for a career in industry. We’re home to Cisco Systems, a Microsoft Academy Centre and Amazon Web Services Academy (AWS), which means that you’ll have access to completing additional qualifications in addition to your degree to prepare you for a successful career in the industry.
What's covered in this course?You will study the fundamental concepts of computer science, including computer programming, data structures and algorithms, information systems, computer networks and computer architecture. You will consolidate your learning by studying advanced subjects that emphasise software engineering skills. You will also be introduced to topics such as operating systems, cyber security, discrete mathematics, and web application development. Broaden your understanding of computer science by studying specialised subjects like artificial intelligence, cloud computing and wearable computing. In addition, you’ll complete an individual project in order to demonstrate your technical skills and general employability in preparation for your future career. The individual project simulates typical workplace tasks that require in-depth knowledge and skills in a specific area of computer science. You’ll consider wider issues and develop the ability to manage activities and resources, and to generate, implement and report on solutions to meet task objectives. Throughout your studies, you’ll be supported by our expert teaching staff, all of whom have a wide range of research and industrial experience in areas such as computer security and software engineering, which they use to enhance the curriculum. Thanks to our strong partnerships with the Linux Professional Institute (LPI) and the Oracle Academy, you’ll have enviable access to leading industry knowledge. This is complemented by the Cisco Systems and Microsoft Academy Centre, both of which are based here. You’ll be based at our expanding £400 million City Centre Campus across STEAMhouse and Millennium Point building, where you’ll have access to a range of professional-standard facilities to develop your key practical skills and consolidate your academic learning.
Professional Placement YearThis course offers an optional professional placement year. This allows you to spend a whole year with an employer, following successful completion of your second year, and is a great way to find out more about your chosen career. Some students even return to the same employers after completing their studies. If you choose to pursue a placement year, you will need to find a suitable placement to complement your chosen area of study. You will be able to draw on the University’s extensive network of local, regional, and national employers, and the support of our Careers teams. If you are able to secure a placement, you can request to be transferred to the placement version of the course. Please note that fees are payable during your placement year, equivalent to 20% of the total full-time course fee for that year.
This introductory computer programming module provides the underpinning knowledge and practice for computing students to design, build and test software components. The module will make use of practical sessions primarily to allow you to apply programming principles and constructs in order to creatively solve problems by means of developing small programs. Module content and assessment enables learners to acquire programming skills in a modern imperative language.
Within the Computer Systems Module, you will gain knowledge and experience of computers and computer hardware. This module presents a holistic view of how computer systems work and it also provides the underpinning knowledge required: for the design of computer architecture to show how software interacts with hardware to apply electronics principles to use number systems for computer technology
This module provides the underpinning skills necessary to develop an effective web based information system based around a clear understanding of the visual requirements of an interface, a structured design approach and the technical skills necessary to implement a solution.
Data structures and algorithms are essential in computer science, software engineering, and computer games and graphics programming. Data structures are structured representations of data; the design of a data structure determines how operations (such as reading to, writing from, modifying, or computing with the data) can be achieved. An algorithm is a set of instructions which can be followed in order to solve a computational problem.
The module provides the opportunity to learn and critically reflect the skills required in building and designing basic networks and their requirements within a network infrastructure. This module builds on the underpinning knowledge and theory of networking systems. The module consists of: Subject specific lectures/laboratory sessions to introduce knowledge and skills relevant to network and information systems, along with communication architecture Lectures/laboratory sessions to introduce principles and techniques for information communication within a network and ensuring effective communication Global view on information system communication.
This first-year project allows you to develop and cultivate a creative mind-set through collaborative innovative practice, allowing you to bring together knowledge and imagination to construct a viable product. It is an opportunity to express your ideas, skills and talent to the wider community of innovative practice. The project provides you with an opportunity to be part of a thriving community of innovators that practices connected learning. This is facilitated by putting you into inter-disciplinary project teams supported by innovation mentors, advisors and academics; culminating in you exhibiting your work to an international panel of experts.
Programming is an engineering tool that plays a vital role to drive most of the modern technologies surrounding us, including the technological devices for communication, transportation and entertainment. In other words it can be said that our modern lifestyles are heavily dependent on programming. Moreover, businesses increasingly rely on computers and the software run on them. Programming skills and a broader and deeper understanding of programming are therefore becoming increasingly important to the jobs market.
This module will provide an introduction to fundamental concepts associated with operating systems and will lay the foundations for other Computer Science modules that will require a broad understanding of operating systems principles. A good understanding of operating systems is very important for computer scientists in order to design efficient solutions to a wide range of programming problems including concurrent programming, resource management and performance analysis.
This module embeds core discrete mathematics concepts relevant to programmers, within the context of programming. We will use sound abstract reasoning techniques to design and produce computer programs within the declarative paradigm. Finally, these solutions will be tested and evaluated against their functional requirements using a number of testing and verification techniques.
During the module you will work to design, develop, use and evaluate a “backend service” system backed by a database. You will produce this system over the course of the semester through engaging with the coursework throughout various milestones, developing a “portfolio” of work as you go along. The module will be taught using a combination of lectures and practical, interactive lab sessions for learning skills and gaining important feedback. Independent learning will also be supported by a range of materials and activities delivered using Moodle.
Computer Scientists need to address the realities of the application of their field within an environment where cyber security threats present unique challenges to application and system developers, in relation to the requirement for secure design and operation. This module provides a foundation for security consideration as required in the design of software expected to perform within a networked and data sharing environment. This module has been designed to provide the necessary theoretical framework, foundations and practical support for effectively pursuing security solutions with reference to the requirement for secure application development.
This module is about software engineering with a focus on software design. It covers three stages of the software engineering life-cycle, requirements, design and implementation, but with a focal point on design and an emphasis on the design theme. The module provides the necessary skills to: construct models of requirements and designs, synthesise implementations from design models, apply software design patterns. The standard UML is used as the modelling language, the vehicle through which important design concepts are explored to convey a software engineering ethos based on getting it right by adequately studying the problem and mindfully constructing designs of software solutions.
This module is designed to provide you with the opportunity to undertake a credit bearing, 40- week Professional Placement as an integral part of your Undergraduate Degree. The purpose of the Professional Placement is to improve your employability skills which will, through the placement experience, allow you to evidence your professional skills, attitudes and behaviours at the point of entry to the postgraduate job market. Furthermore, by completing the Professional Placement, you will be able to develop and enhance your understanding of the professional work environment, relevant to your chosen field of study, and reflect critically on your own professional skills development within the workplace.
The purpose of the module is to enable you to undertake a sustained, in-depth and research-informed project exploring an area that is of personal interest to you. In agreement with your supervisor, you will decide upon your topic which will take the form of a practical outcome (artefact) with accompanying contextual material. The main consideration when choosing your topic is that it must be aligned to the programme you are studying, and you should consider the relevance of this topic to your future academic or professional development. At this level, you will be expected to work independently but you will receive additional one-to-one support from your supervisor, who will be familiar with your chosen topic area. As you progress on the module, extra support will be available and this may take the form of group seminars, workshops and online materials that will help to develop your project.
This module will focus on combining theoretical concepts around user experience design with practical “hands-on” approaches used widely in industry and academia to create effective interactive experiences. You will learn about the user-centred design process that places a core emphasis on designing products, applications, and software for “people”. In particular, you will learn techniques for gathering and understanding a target audience’s requirements, the importance of universal design and accessibility, and methods for undertaking rapid prototyping. An emphasis will also be placed on gaining practical experience in designing and conducting usability studies, as well as how to incorporate key findings back into the design process. You will apply this knowledge to design and evaluate an innovative digital prototype using industry standard tools.
One of the major objective of the computer science course is to introduce the theory, principles and technologies underlying the construction of modern computing systems. This module introduces Cloud Computing, which is the technology that enables on-demand computing resources (everything from applications to data centres) over the Internet. This technology has revolutionized modern computing by allowing users to access infinite pool of computing services and resources on a pay-per-use basis. This module introduces the fundamental concepts and technologies related to cloud computing architecture, platforms and services. The module follows a practical approach to equip the students with hands-on experience of cloud computing by using a public Cloud service, such as Amazon Web Services.
Mobile technologies, particularly in the form of smart phones, are now the de-facto mode for us to communicate and navigate information. Building on this success, wearables have the potential to make computer technology ubiquitous. Although encompassing many forms, probably the most prevalent example of wearables is seen in the emergence of powerful ‘smart watches’. This module explores the direction mobile and wearable technologies are taking and aims to equip students with the essential design and programming skills to develop their own robust, usable and ubiquitous applications for at least one of the most popular mobile and smart watch platforms (such as Google’s Android / Wear and Apple’s iOS / watchOS).
Artificial Intelligence (AI) is a core component of computer science, aiming at developing intelligent agents that mimic human’s cognitive capability in learning, reasoning, and problem solving. As a branch of AI, machine learning (ML) allows to create software that adapts and learns (from examples), rather than being explicitly programmed for a particular outcome. Both AI and ML rely on managing, processing and analysis of large datasets, something that Data Science (DS) is concerned with. Many services provided by technology giants such as Google, Microsoft, IBM, Facebook, Amazon, etc. are powered by DS, ML and AI. The recent advances in these subjects have already led to significant industrial applications such as self-driving cars and Industry 4.0.