Computer Science

BSc (Hons)


This course is available in Clearing.

In the 2013 National Student Survey 97% of our BSc (Hons) Computer Science students said we are enthusiastic about what we teach.


Salma Patel

Computer Science BSc (Hons), Graduated 2010

The module, Professional Issues totally blew me away. Covering a wide range of prominent issues, from ID cards to outsourcing, it was delivered in a professional and interesting way, with students presenting seminars followed by a lecture.

Course overview

Computing is changing our world, the way we work, the way we live. To study computer science is to put yourself at the forefront not just of technological change but of social change.

BSc (Hons) Computer Science examines the principles and technologies underpinning the systems that are driving this change. It provides an opportunity to learn about these directly through a combination of work-based learning and in the classroom.

Within this context, our degree has two main aims. The first is to provide you with a good understanding of the theory, principles and technologies of computer science. The second is to equip you with the skills to apply this knowledge and theory to a range of practical challenges.

The field of computer science offers a wealth of opportunity across a range of specialist fields. The variety of course options on offer means that you can fine-tune your degree to focus on particular areas of interest or to meet the requirements of a favoured career.

The specific aims of our course are:
  • For you to exhibit an understanding of the knowledge and concepts of computer science, incorporating the theory, principles and operation of the underlying technologies and methodologies.
  • To enable you to apply the methods and principles of computer science in the analysis, design, and implementation of solutions in a select range of application domains in information systems, software and communications.
  • To give you the skills necessary to implement and administer organisation wide information technology and communication systems.
  • To enable you to work effectively as a team member and to develop as a professional within the discipline and as a technically able practitioner within an organisation.
  • To prepare you as an independent learner and reflective practitioner.
  • For you to be able to recognise the professional, moral and ethical standards of the computing profession and to be aware of the responsibility in the use and development of applications which impinge on the working and personal lives of users and other professionals.
Upon completion of our course you will be able to demonstrate knowledge and understanding of:
  • Essential facts, concepts principles and theories relating to computer science and computer applications.
  • The technical properties of hardware, software, information systems and their use and evaluation in a variety of application domains.
  • The role of design and planning in a computing context and to act in a systemic and organised way when applying computing analysis, methodologies and techniques.
  • How to identify a problem within the computing domain and to develop specialist knowledge within that area, provide appropriate analysis, develop potential solutions and evaluate their effectiveness.
  • The scope, depth and the limitations of your knowledge and to access and interpret information resources.

Module guide

Level 4 core modules
  • Fundamentals of Design

    This module introduces the concepts of a software life cycle, system theory, design methodologies and relational data modelling The module uses a system methodology to work through a software lifecycle looking at analysis, design and implementation. You will be given the opportunity to apply a design methodology to a case study producing diagrammatic representations of the data and functionality of a system. The module will introduce you to the essentials of database design and implementation. You will be expected to participate in group work as well as make individual contributions. The module is 100% coursework, comprising a set of deliverables to demonstrate analysis of the case study example(s) and application of design theory. Exercises will be both formative and summative to encourage discussion of design theory and its application.

  • Introduction To Programming

    This module provides an introduction to high level programming, requiring no prior programming experience. You will use industry standard tools and techniques to design, implement, test and document simple programs using a current programming language such as C#, Java or C++. The module will enable you to understand the principal components of a high-level program, laying the foundation for subsequent modules requiring structured programming ability. It will emphasise the principles of good programming practice and introduce the techniques required to develop software which is robust, usable and efficient. Assessment will consist of two staged assignments, with feedback to you being provided at each stage to support the development of sound programming skills. By the end of the module, you should have sufficient mastery of a high-level programming language to allow you to design, implement and test simple programs. The skills taught within the module are intended to be directly transferable to the workplace and to provide a suitable foundation for you when you will be expected to apply programming skills in your later studies and future career.

  • Computer Systems

    With the proliferation of computers in all walks of life it is essential for companies to have IT staff capable of specifying, installing, configuring and maintaining the company's IT resources and networks. This module ensures you will have the practical skills companies look for in an IT specialist. The module investigates the components and operation of modern computer systems. It introduces you to the hardware components which enable a computer to process data and the devices which enable data to be input, output and stored. The also introduces you to the fundamentals of computer networks as modern computer systems rarely operate in a standalone manner. To properly configure a computer system or server it is necessary to have an understanding of networks. Assessment of the module is in three parts, you will take multiple choice tests in class to test your knowledge of theory, you will undertake a series of practical tasks written up in a logbook and you will submit a written essay to test your ability to apply your knowledge.

  • Operating Systems

    This module will introduce you to the fundamental features of modern operating systems, their components and their use. It will look at key concepts including the kernel, memory and resource management, security and authentication and command line and graphical user interfaces (GUI). Case studies will be used to familiarise you with the history and features of Windows/MS-DOS and Linux/Unix. The module will also introduce you to the command line interface (CLI) commands and scripting in both the Windows CLI and a Linux shell and allow you to develop simple scripts to automate activities in both operating system environments. It will also explain how each operating system stores configuration information and how (particularly in Linux/Unix) scripts can be used to modify that system configuration. The assessment of the module will be by coursework which will consist of a series of exercises completed during the module. The exercises will be a mix of class based tasks and researching solutions to problems set in the lectures. The skills acquired in the module will enable you to go on to study modules which involve topics such as system administration, network and server configuration and technical support all of which are key skills graduates need when working in the systems and network support industries.

  • Design for the Internet

    For any student anticipating a career in information systems or programming, the knowledge of website construction, whether that is for the Internet or a company Intranet, is a valuable asset. This module provides you with the knowledge required to build a standards compliant web site. The website will be a blend of XHTML, Cascading Style Sheet and a scripting language. You will also be expected to submit documentation containing an introduction, descriptions of the purpose and aims of the web site. You will choose a subject for the website. The knowledge you will gain in this module will form the foundation for further web-based study in areas such as graphic design, user perceptions of the usability and quality of web pages and multimedia/database web sites.

Level 5 core modules
  • Software Engineering

    The number, size, and application domains of computer applications have grown and most people depend on the effectiveness of software development. Therefore software products have to be efficient, of very good quality and to help us to be more efficient and productive. Software Engineering is a form of engineering that applies the principles of computer science and mathematics to achieving cost-effective solutions to software problems. The aim of this module is to give to students a real-world experience in software engineering. This module will provide you with the intellectual tools to be able to design, implement and test software systems. Built on Fundamentals of Design and Introduction to Programming, you will go through all the phases of the life cycle by taking case studies and building real software applications based on them. CASE tools are used to study topics including analysis and design in UML and managing the OO software development process. The assessment is coursework based and involves working in a team on a specific project. You have to demonstrate that you are able to work in groups to create an application from a case study going through the whole software lifecycle.

  • Network Routing

    The global Internet is a collection of networks, termed Autonomous Systems (AS), that are linked together via high-speed communication links provided by telecommunication organisations. Converged traffic, that is traffic comprising both data and voice, is routed through the network based either on policies agreed between ASs or performance metrics by routers within the ASs. Due to the complexity and dynamic nature of networks, routers use dynamic routing protocols to establish the ?best? path for traffic. This module focuses on the key concepts and protocols of network routing. It covers basic routing constructs such as: static and default routing; Interior Gateway Protocols (IGP) such as RIP, EIGRP and OSPF and introduces the Exterior Gateway Protocol BGP that is primarily used by Internet Service Providers. Classes involve a mixture of theory, delivered through a series of lectures, and practical implementation, delivered through a series of guided laboratory exercises. The module will used advanced network simulation tools to teach concepts and industry standard router platforms to teach hands-on skills. Assessment is by a case study based assignment and completion of a laboratory logbook. The case study will be centred on the design and implementation of a routed network, comprising both local and wide area networks. The module is delivered as part of the curriculum offered by The Cisco Networking Academy Program, a well-established partnership between academia and industry to provide up to date knowledge and skills required by industry and commerce. Students studying this module will be able to access on-line material via the university Virtual Learning Environment and access the laboratory remotely

  • Database Design and Implementation

    This module will guide you through the fundamentals of database design. This grounding will enable you to construct small scale industrial quality databases. You will work in groups emulating real world development teams. As part of this you will learn the skills of constructing documentation, making revisions and delivering work to a deadline. Implicitly you will learn the skill of managing a group environment. The module begins with the development of an acceptable approach to industrial clients and their problems. Working within the specification given, the group learns how to extract data from interviews and paperwork. You can then progress to designing and building a database, querying the database to provide the reports (including statistics) that a customer needs. During this process the current industrial choice database language (SQL) is learned. The assessment comprises the design, production and querying of a database and the completion of a portfolio of coursework to be submitted at the end of the course.

  • Network Services Engineering

    Network configuration is one of the key skills needed by IT professionals in order to pursue a successful career in computer support. This module aims to teach you the fundamentals of the hardware, software and standards used by modern computer networks. Using a mixture of theoretical discussion and application of new skills in a practical environment this module will seek to instil in you an understanding of the complexities of modern networks and their operation and to permit you to evaluate existing environments and advise on new network scenarios. In the practical sessions for this module you will be able to experiment with the configuration and implementation of common network services, such as NFS, electronic mail, ftp, ssh, SAMBA. Assessment will be in two parts, a portfolio / logbook of work done in laboratory sessions and during private study plus a network services /configuration assignment which may include a presentation.

  • Interaction and Usability

    Developing effective human-computer interfaces is a vital yet poorly understood area. As such it is necessary to have some understanding of a variety of fields including cognitive psychology and usability theory which has recently become a major issue in web design / effective e-commerce implementation. The user experience (beyond traditional usability) is a key design issue. This module seeks to develop understanding of interaction design through the delivery of core theory which is then applied to the analysis, design, implementation and evaluation of a limited functionality horizontal prototype. You will be introduced to the notion of user mental models (following the approach of Donald Norman) and the extent to which they can be utilized in the design of conceptual models underlying the designed interface. You will then examine the range of discovery methods used to harvest user, task and environmental data to support user needs analysis comprising user characterisation (including the notion of user personae), task analysis (hierarchical task analysis / action and object taxonomies ) and environmental analysis. Following a discussion of visual style / aesthetics, the preceding analysis will then progress to documented design rationale supporting by logical storyboards showing information, action and navigation screen components. The design is then prototyped in a high level tool equivalent to Visual Basic and subjected to critical introspective and user evaluation. Note that you will be expected to possess some scripting experience prior to starting the module. You will document all the above to produce the final assignment. The module would be of considerable benefit to those who intend to design interfaces (including web design), become usability / testing consultants or work within user training / user support roles.

  • Computing Research Methods

    The aim of this module is to provide you with experience of topic specific research and the analysis and application of that work in order to carry out a computer science based project in your final year. The module will include help with the selection of a suitable project, often with advice from the potential supervisor, instruction on how to use relevant sources of published information, carrying out a literature survey on the subject of the planned project; the writing of a literature review and project plan; and instruction in appropriate research and analysis methods. You will be given instruction in risk and/or hazard assessment and the ethical and legal considerations of the work to be undertaken. You may also be required to give a short presentation of your project plans to your peers. Assessment for the module will involve writing a report which will typically include a project proposal (possibly talking into consideration ethical and risk assessments) and a literature review on one or more topics.

Level 6 core modules
  • Professional Issues, Computing and Society

    This module aims to provide an understanding of the issues, opportunities and problems which have arisen as a result of the computerisation of wide areas of human activity. It is designed to enhance advanced computer reflective thinking in both computer science specialists and others, and is a key part of the programme of professional development for computer scientists and others seeking to embody professional values and approaches in the IT and computing fields. The course covers relevant and current topics in Computer Law (e.g. Data Protection; Intellectual Property Law; Computer Misuse) and other social, ethical and legal topics such as considering the causes and effects of systems failures (including but not limited to computer systems failure). Other aspects such as the ethical and professional responsibilities of graduates - particularly those from IT and computing disciplines - will be critically appraised. Topics may also cover the technical development and social effects of computer technology from c1936 to the present day, as the basis for an informed discussion of the issues. Later in the module students will choose topics and lead time-constrained seminars on a selected narrow topic area within the module's remit, which will form the fine graded assessment for the module.

  • Data Structures and Algorithms

    The aim of this module is to raise awareness of efficient programming practice by critically appraising some of the common data structures and algorithms available to the computer scientist. A range of analysis techniques are employed to carefully evaluate the performance of these data structures and algorithms in order that the student may make prudent choices in the assembly of software artefacts with specific performance targets or constraints. The concept of the algorithm is a central pillar of computer science, and is closely related to the concept of the data structure: the storage mechanism that algorithms are used to manipulate. In this module, a variety of crucially important data structures and associated algorithms are explored, with frequent examples from real world applications. The importance of algorithm analysis, that is, the investigation of the efficiency and resource requirements of algorithms is presented, in order to develop an appreciation of implementation issues and choices faced in the design of non-trivial software projects. The concept of the abstract data type (ADT) is presented as an encapsulation of common data structures and algorithms that incorporates a simple interface, promotes a high level of information hiding, and permits changes to underlying implementation without affecting the larger application. In comparison to earlier programming modules, the focus of data structures & algorithms is firmly theoretical, setting a foundation for understanding concepts and techniques that are of vital importance to any computer scientist required to construct elegant and efficient software artefacts in any high-level programming language, including scripting languages. The assessment for this module will include an examination and a practical assignment with associated documentation.

  • Undergraduate Major Project

    The individual Final Project module allows students to engage in a substantial piece of individual research and / or product development work, focused on a topic relevant to their specific discipline. The topic may be drawn from a variety of sources including: Anglia Ruskin research groups, previous / current work experience, the company in which they are currently employed, an Anglia Ruskin lecturer suggested topic or a professional subject of their specific interest (if suitable supervision is available). The project topic will be assessed for suitability to ensure sufficient academic challenge and satisfactory supervision by an academic member of staff. The chosen topic will require you to identify / formulate problems and issues, conduct literature reviews, evaluate information, investigate and adopt suitable development methodologies, determine solutions, develop hardware, software and/or media artefacts as appropriate, process data, critically appraise and present their finding using a variety of media. Regular meetings with a project supervisor should take place, so that the project is closely monitored and steered in the right direction. The project developed in this module is the most substantial piece of work that the student will produce during their undergraduate studies. Thus, the choice of project topic and the quality of the work is likely to bear a great influence on the your career/employability. Therefore, the module will also include aspects of Personal Development Planning (PDP) and CV preparation. You are strongly advised to allocate appropriate attention, time and effort to this module. The successful completion of the module will be of great benefit to you as you will acquire skills directly applicable to real world projects.


Assessment is via a mix of examination, group assessment, presentations, class- and laboratory-based tests, case studies, group project work and the Major Project.

Special features

Students completing a FdSc or HND in a computer science or IT related subject may be eligible to enter directly into Year 2 or 3 of this award.


Our extensive computing facilities include:
  • laboratories equipped with a range of specialist software and hardware
  • Cisco laboratory equipped with hands-one routing and switching equipment
  • Netlab, offering remote access to our Cisco equipment available for students to remotely access 24 hours a day, seven days a week.
  • Access to Dreamspark, allowing students access to professional developer and designer tools
  • Mobile devices for testing and devleloping mobile applications.

Links with industry and professional recognition

Our course has been developed in consultation with the British Computer Society, the Cambridge Network, and a number of local and national employers. Experts from the industry are regularly invited into classes to give guest lectures and our students are encouraged to attend a range of research and industrial seminars hosted by both the Department of Computing and Technology and the British Computer Society.

Graduates who complete the relevant networking modules will be able to apply for industry recognised Cisco Certified Network Associate (CCNA) status.

Associated careers

Our course is designed for those who wish to keep their options as to which part of the IT industry they want to specialise in as open as possible. It contains both the core elements of computer science and option modules to specialise in areas including Software Development, Internet and Cloud Applications, Network Administration and Technical Support.

We organise employer-sponsored student projects to allow you to gain direct industry experience whilst you study, and run regular employment fairs, allowing you to engage directly with employers from the region.

Further study

Graduates of this course can progress onto our specialist Computing Masters courses:

MSc Computer Science (Full-time)
MSc Computer Science (Part-time)
MBA Information Systems Management (Full-time)
MBA Information Systems Management (Part-time)
MSc Mobile Telecommunications (Full-time)
MSc Mobile Telecommunications (Part-time)
MSc Network Security (Full-time)
MSc Network Security (Part-time)
MSc User Experience Design (Full-time)
MSc User Experience Design (Part-time)

Our Faculty of Science & Technology also offers a wider range of full-time and part-time postgraduate courses.
Main requirements:
  • 200 UCAS Tariff Points from a minimum of 2 A levels (or equivalent)
  • 3 GCSEs at grade C or above, including English and Maths or Science
  • If English is not your first language you will be expected to demonstrate a certificated level of proficiency of at least IELTS 6.0 ( Academic level) or equivalent English Language qualification, as recognised by Anglia Ruskin University
Alternative qualifications accepted:
  • UCAS Tariff points acquired from BTEC Level 3 Diplomas are accepted
  • Access to HE Diplomas are accepted, 30 level 3 credits at Merit grade are required
  • International Baccalaureate Diploma with a minimum of 24 points is accepted
  • UCAS Tariff points from the Irish Leaving Certificate are accepted
  • UCAS Tariff points from Scottish Highers are accepted
  • UCAS Tariff points from Scottish Advanced Highers are accepted
  • The European Baccalaureate at a minimum overall grade of 60% is accepted
  • HND Qualifications are accepted
Extended degree route

We offer an extended degree route to this course that requires 120 UCAS tariff points. This extended route to a degree in Computing & Technology requires the study of an additional foundation year.

After successful completion of this foundation year you may transfer to this degree programme. Please refer to: BSc Computer Gaming Technology (Extended)

Our published entry requirements are a guide only and our decision will be based on your overall suitability for the course as well as whether you meet the minimum entry requirements. Other equivalent qualifications may be accepted for entry to this course, please email for further information.

Entry requirements listed are for September 2015/January 2016 entry. Entry requirements for other intakes may differ.

Please note all tariff points must come from A levels. Points from AS levels cannot be counted towards the total tariff points required for entry to this course.

International and EU applicants

We welcome applications from International and EU students. Please select one of the links below for English language and country-specific entry requirement information.
If you do not meet the above requirements, then there is an alternative. Consider entry to the course via an integrated foundation year at Cambridge Ruskin International College, an associate college of Anglia Ruskin, which is located on our Cambridge campus.

How to apply

UK & EU applicants

Apply via UCAS

If you're interested in finding out more, call us on 01245 68 68 68 or submit an enquiry.

International applicants
Apply online

UCAS code




3 years

Available starts

September, January

Fees & funding

Open Day

3 December (Cambridge)
Undergraduate Open Day

Advice & support



Science & Technology


Computing & Technology

Contact us

UK and EU applicants:International applicants:
Bookmark this page with: