These courses are becoming more and more popular for two main reasons firstly because of their potential to unlock numerous career opportunities. Secondly because of the energy, buzz and excitement associated with being involved in cutting edge research within the IT field. Programmes will provide students with an education in computing, programming, software development and other key related areas of information technology.
Contemporary computer science degree courses should also keep you up to date with all the rapid pace of developments in the sector through a combination of high academic standards along with focused vocational relevance. Under the guidance of lecturers and administers, students will obtain not only the technical skills but also the academic qualifications required for a successful, highly paid and specialist career in IT.
Computer science degree overview
Computer scientists try to make computers, software and programmes smaller, faster, easier to use and more intelligent. The degree covers a broad field of computing, programming and other related areas of information technology. Most universities courses are a combination of high academic standards along with practical vocational relevance, that are available as Bachelors (B.Sc.), Masters (M.Sc.) and Doctorates (Ph.D.). Good courses will give students a firm foundation in a wide number of computing skills like human computer interaction, robotics and agile methodologies. They will also educate undergraduates with a comprehensive knowledge of the theoretical basis and practical applications of computer science. Many courses also tend to touch on hardware, giving students a basic understanding of motherboards, memory and processors etc.
All computer science degrees will involve some introductory level programming being taught, with the most popular languages at the moment being Java and C++. If you have little or no knowledge of computing then it is advisable to try to learn the basics of at least one programming language before you start any degree course. Although you will not be disadvantaged if you have no programming ability it can help.
Much of what you learn on the course will be based on mathematical concepts and the degree will touch on related areas such as statistics, Boolean basics, linear algebra and also calculus.
It is also worth noting that due to the nature of the subject many computer science departments will often have close links to other university departments. The benefit of this is that you may be exposed to other related fields which other subjects could not do.
Due to the changing nature of technology it is possible to specialise in various subjects such as Internet Systems, Hardware or software development, E-Commerce or Software Engineering etc. You will be taught in the following methods:
Lectures and tutorials
Working on software design assignments
computer science degree assessment
Modules are assessed by examinations, continuous assessment or a combination of both. Some supervised practical element is also included in the continuous assessment, as well as independent study and report writing. Your individual project marks and module results will all contribute to your degree final grade.
Entry and admission
Typical entry requirements are a minimum of 200 UCAS tariff points, plus GCSE Maths and English Language at grade C.
Having prior programming skills is preferred and a good knowledge of maths is essential. If you posses a understanding of either or both of these topics then it will make everything a lot easier to understand. If you don’t then do not worry as many courses are tailored to the needs of individuals from non technical backgrounds.
Computer science degree structure and typical course content
Year 1 modules
Programming principles and practise
Programmes are at the heart of what makes computers adaptable, they are in essence detailed instruction to computers and software to perform certain functions. This is a highly technical subject which is aimed at giving students a introduction to the fundamental concepts and techniques of software development. On this course you will discover the basics of writing useful, proper and efficient code and gain a insight into simplifying programming tasks. Areas of study may include:
Programming language features.
Software development tools.
Introduction to various programming languages like C++, SQL and Java etc.
Writing, running and debugging programmes.
Introduction to programming jargon.
Object-Oriented Analysis and Design (OOAD)
Understanding simple code.
Basics of computer hardware.
Carrying out a requirements analysis study.
Testing existing programmes
History of computer science
Database Management Systems
You will be studying the computer programmes and software that are used in the creation and maintenance of database systems. DBMS is a group of software programmes that allow users to store, change, delete and recall information from the database. You will learn all about how data and information is stored in a organised and efficient manner, so that it takes up the minimum amount of memory space and can be accessed quickly by users. Areas of study may include:
How a Database Management Systems organised information internally.
The process of requesting information from a database.
A brief introduction to Microsoft Access, MySQL, Microsoft SQL Server and Oracle databases.
Object orientated structures.
Database query language.
backup and replication.
Change and access logging.
Relational database management systems (RDBMS)
The principles of data management
A subject where you will learn the basics about how to collect, organise, maintain and protect information. Explore the need of organisations to logically organise data and the benefits to their business. The subject includes a introduction to various database administration topics such as architecture, performance tuning, recovery, defragmentation and disaster planning. Areas of study may also include:
The programming languages used in managing databases.
How to manage data effectively.
Identify the mechanisms required for good data management.
Introduction to Structured Query Language (SQL).
Issues to do with security and privacy.
Data governance tools to manage risk and have control over management processes (including business process management).
Quality control, including monitoring and improving procedures.
Data mapping and cleansing.
Document, Record and Content Management
Relational Database Management Systems (RDBMS)
Discovering interaction design
Look into the interaction as well as the flow of information between not only computers and users but also hardware and software. The ultimate aim of all interaction if to make software and computers more responsive to the requirements, needs and tasks of users. Good user experiences can help to improve efficiency as well as help companies and individuals meet their goals quicker. Other possible areas of study:
Designing systems that users can easily interact with.
Human Computer Interaction (HCI).
Forms on websites, used to gather information from site visitors.
Man Machine Interaction (MMI).
Graphical User Interfaces (GUI).
Designing for people.
This topic will focus on giving students a introduction to the Java programming language. Obtain a clear understanding of the basics of this popular and widely used general purpose and object orientated programming language. It is a language that can be used to develop application software as well as on website development. Areas of study may include:
The characteristics of Java
Introduction to writing Java source code.
Applications and applets
Learn why Java is suited to the development of the Internet and Word Wide Web.
Blocks, Expressions and Statements.
Working with strings
java source code files and java extensions.
Public and private variables
Creating Graphical User Interfaces (GUI)
History of Java, including how it was first developed by Sun Microsystems.
The advantaged of Java over other object oriented programming languages like C++.
Introduction to Networks, Architectures and Operating Systems.
Module content will include learning about how computers and operating systems and interlinked and networked for greater efficiency and information sharing. The course will also explain how operating systems run computers and how architectures help to stabilise and build them. Areas of study may include:
Local Area Networks (LAN)
Wide Area Networks (WAN)
Intranets and extranets
Hubs, switches and Routers.
Peripheral devices like monitors, keyboards etc.
The various different operating system types.
Multitasking and multiprocessing.
Warm boots and cold boots.
The basics of Linux, UNIX, Macintosh and Windows operating systems.
Security updates and system patches.
The difference between mainframe and desktops.
Mathematics for computing.
Gain up to date knowledge on mathematical field that are related to modern computing. This discipline offer a wide range of subjects to choose from discrete mathematics, probability and statistics programming right through to website design. Areas of study may include:
Calculus and Algebra
Efficient algorithmic developments
Basic linear algebra
Models for computation
Encryption and Data Compression
History of Computation
Delve into the background of how computers came to become a dominant and essential part of the business world and also everyday life. Research the beginnings right from the Z1 in the 1930’s right through to today’s latest super computers. Other possible areas of study;
Theory of computation.
The limits of computation.
The future for computers.
History of the Internet.
History of MS DOS
History of the Microchip.
Software Development: Tools and Techniques
On this module learn the fundamentals of building effective software systems and also examine the various tools that are available to programmers. Other possible areas of study :
Object orientated programming
Fundamentals of computing
Object orientated application development
Human computer interaction
Maintenance and bug fixing.
Application building tools
Memory usage tools
Source code generation tools
Mathematics for Software
Learn how software development is reliant on the use of mathematical calculations. Areas of study on this topic may include:
Ratio and proportion
Introduction to the tools and techniques for managing large-scale IT projects.
Gain a introduction into the project management processes and procedures used in planning, organising and managing the IT projects. A project can either be one of three things, firstly a one off effort to produce a specific result or achieve a certain goal. Secondly it can be a ongoing process or long term programme or thirdly it can be a series of interlinked projects all running together. Areas of study may include:
Project initiation, this will include setting the goals, developing a project plan, feasibility studies, setting out the nature and scope of the project.
Planning and development, this will include; Choosing the project team, quantifying the resources that are needed, Deciding on a mission statement, Creating a schedule, Risk planning, Working out and estimating the cost and time involved in the project.
Execution which will involve; delegating work and designing the processes required to complete the work and project; coordinating and controlling resources.
Performance monitoring which will include; dealing with problems that occur, identifying potential hurdles before they occur, taking corrective action when required, monitoring ongoing project activities and ensuring they are to schedule and budget.
Project closure which involves finalising the administrative and documentation processes for the project.
Basic understanding of PRINCE2.
Project follow up.
Support and maintenance.
How to motivate and encourage the project teams.
The module will teach students how to avoid:
Setting unrealistic deadlines.
Work towards undefined deadlines.
Poor communication between employees.
Studying usability and evaluation principles.
Get to know the basic techniques that should be used to enhance the visitors and users experience. For instance learn the importance of using consistent navigation throughout the site as well as plain simple English to communicate quickly and effectively with users. The aim being twofold, firstly to create websites or software which people can effortlessly navigate through and quickly find what they are looking for. Secondly to achieve subjective satisfaction, where your aim is to try to make the user ‘like’ your system or site and thereby encourage them to come back. Other areas of study may include:
Consistency of standards
Designing for targets
Integrity of information
Efficiency of use
Year 2 modules
Introduction to computer graphics and games.
Foundations of Artificial Intelligence
High Integrity Systems
Concepts of Programming Languages
Artificial Intelligence Applications
Operating Systems and Concurrency
Software development approaches
Strategy and security, including information security and business continuity.
Year 3 modules
3D Graphics and games
High Performance Microprocessors
Scientific Modelling and Simulation
Pattern Recognition and Neural Networks
Other areas of study
Principles of Computer Hardware
Open source computing
compilers and operating systems
Management of computing projects
Solving complicated problems using computers and algorithms.
Storing and processing data as efficiently as possible.
Object orientated programming
Algorithms and Data Structures
Developing security techniques
Quantum computer science
The design and evaluation of algorithms.
A computer science degree course will teach students
How to design, build and analyse computer systems.
The importance of business principles and project life cycles.
The skills needed to work successfully as a member of a project team.
Fundamentals of programming.
Develop good interpersonal skills and work within a team that includes non technical experts.
How to develop software applications that are more useful to businesses and individuals.
To develop their problem solving and creative skills.
A understanding of legal concepts like copyright and data protection.
How to work with abstract concepts and symbols.
Building systems that are safe, effective and meet time and cost.
How to write good, well structured programs that run fast and reliably.
Write their own programs in connection with taught courses.
Work on larger programming projects over several weeks and writing a professional dissertation about it.
Questions to ask about the course
If you have a good idea of where you want to go then it is advisable to investigate first and only then choose modules and subjects within your course that suit your future aspirations.
Are there any sponsorship and scholarship opportunities available.
Do the courses reflect recent developments in the computing industry.
Does the universities IT department work in partnership, on joint projects or as a consultancy to the technology industry.
Is the degree accredited by the British Computer Society and the Institution of Engineering and Technology.
How long does the degree course last
Most full time course will last the standard three years.
Career prospects and relevancy
With technology now touching all areas of modern life from mobile phones, flat screen televisions right through to cars, the demand for capable and qualified computer scientists has never been greater. This demand for suitable CS graduates is expected to continue exceeding supply for the foreseeable future. With the ever increasing importance of software and computer systems in the world of business, public sector and the internet, employment opportunities and earning potential for graduates have never been better.
The course will provide students with the necessary skills for a number of computer based jobs and will certainly increase the professionalism of your job application. Also remember that many of the skills you learn will be transferable to a number of other careers and fields.
With the rapid evolution of computer technology numerous employment studies have predicted that competent and qualified computer science graduates will be in demand for many years to come. Typical positions open to graduates include;