Computers are an integral part of modern society, with technology touching all aspects of life including commerce, industry, healthcare, communication and recreation. The pace of change and innovation is rapid, and shows no signs of slowing down. Companies of all sizes have an urgent need for people who understand this technology – how to create it and how to make effective use of it. A degree in Computer Science will provide you with the practical skills you need to be able to do useful things when you start your career, and with the theoretical knowledge you need to be able to learn new techniques and concepts as technology evolves.
You will also learn the latest professional techniques and tools, such as agile methodology, design patterns, test driven development, HCI and security. You will do group and individual projects addressing real world problems.
As well as using this page, you can find out more about this course here, and follow us on Facebook.
This course will provide you with a broad understanding of the field of computing with a core specialism in programming. You will develop an in-depth understanding of methodical approaches to the analysis, design, development, testing and maintenance of object-oriented systems using the Java language. You will graduate with a range of programming skills and a critical awareness of how to select the appropriate skill for a particular task.
Having a long term career in computing will require you to embrace change. Think about the difference between a 1980s computer (such as a Sinclair Spectrum - google it if you’re too young to remember!) and a modern smartphone… the computers you will be dealing with 30 years from now will be as different from a modern computer as a smartphone is from a Spectrum. Keeping up with the evolution of technology will require you to keep learning throughout your career. Salford’s degree course will set you up for this by providing strong foundations in how things work, and in how you learn, to help you understand new technologies and adapt to new techniques.
This course is accredited by the British Computer Society. The purpose of accreditation is to confirm that our course meets required standards for entering a career in the IT industry. We will ensure you are aware of the differences between a professional and amateur approach to carrying out IT projects (both short and long term). We ensure you are aware of the laws that apply to the IT profession, and that there must be a point when a professional will move outside their competence and need to work with other professionals with other expertise. You will look at the wider social impact of technology, both positive and negative, and we encourage an ethical awareness that not everything that can be done should be done.
On this course, as well as gaining and developing a wide range of computer science knowledge and skills, you have the option to spend a year in industry between your second and third year. This is an excellent opportunity to expand your CV and will give you the opportunity to apply your academic knowledge and interpersonal skills in a real-world environment, and to reflect on your own personal development and career choices. Successful completion of an industrial placement year, which you arrange with our support, will add 'with Professional Experience' to your degree title.
This module will introduce you to a systematic approach to programming, and you will develop an appreciation of the software development cycle. You will be taught excellent programming practice through design, implementation and testing, and will be introduced to the basics of a structured programming language and the use of an integrated programming environment.
This module aims to build upon the syntax and semantics base of Java developed in the ‘Programming 1’ module. You will also develop an appreciation of recursion as well as your knowledge of dynamic data structures. Additionally, the ability to test and debug code will be developed, along with an appreciation of more sophisticated programming behaviour. Furthermore, you will be introduced to a non-BlueJ means of compiling and executing Java applications.
This module will give you a fundamental knowledge of database management systems, their design, implementation and applications. It will develop your knowledge and understanding of the underlying principles of relational database management system, and how to implement and maintain an efficient database system using emerging trends.
This module introduces you to the business context and the work of the computing and information systems professional through an understanding of the societal, professional, ethical and legal issues surrounding business practices and the theory and process of project execution to a professional standard.
You will be introduced to theory and practice of website design and development and develop knowledge and understanding of human-computer interaction and techniques for designing and analysing user interfaces. You will also gain skills and practical experience of designing, developing and testing a website using HTML5 and Cascading Style Sheets (CSS).
This module will provide you with an in-depth low-level knowledge of computer systems, concentrating on computer architecture, operating systems and communications technology. You will also start develop skills in the use of Unix-like operating systems at command-line level, writing and using simple scripts and batch files and the simple system administration of a standalone Linux PC.
This module combines technical work in computer programming with personal development planning. You will work in a group to design, develop, document and demonstrate a solution to a problem, working to a professional standard using Java programming. This module also introduces agile techniques and methodologies and provides an opportunity for applying, evaluating and reflecting on these techniques.
In this module you will be introduced to Artificial Intelligence (AI) and Data Mining (DM) techniques for problem solving. You will become familiar with AI techniques and terminology for knowledge representation and searching, and gain an understanding of DM algorithms, and learn how these techniques are used in real world applications.
In this module you will first be introduced to some of the most important data structures used in the design and implementation of computer software and shown how these are implemented using Java. You will then learn to analyse the requirements of algorithm resources to allow you to provide a sound basis for objective choice when dealing with competing algorithms.
In this module you will learn in detail how the Internet works, from local area networks to global networks. This will include designing and troubleshooting networks, and configuring and testing network applications. You will also look at security vulnerabilities, cryptographic principles, protocols, C-I-A tradeoffs, firewalls and legal implications. You will apply these principles to designing solutions for some realistic case studies.
The module will give you a broad overview of software development methods and techniques, focussing on various modelling and design approaches. You will develop knowledge and understanding of the application of generic pattern based strategies for resolving common high-level problems in object orientated design. Additionally, you will develop an appreciation of problem recognition and categorization and learn how (and when) established pattern based solutions can be identified and applied as solutions to these problems.
Computer graphics provides an advanced and appropriate environment in which your transferable skills can be developed, and in which real-world applications can be demonstrated. This module allows you to transfer your existing knowledge of object-oriented programming into to a new and specialised environment using high-level real-time 3D graphics toolkits, and your knowledge of Java will be built-on to allow use of the C++ programming language.
In this module you will study the idea of quality and its importance in the software development process. Using a variety of metrics, prediction systems and models you will build an appreciation of the worth of quality in any software development project. This will help you become a confident user interface developer through the use of appropriate and rigorous usability engineering techniques and guidelines.
You will undertake an individual project that will demonstrate your understanding of computer science. You can select your own area of study, identify and develop a realistic problem and, working independently and in a professional manner, organise, sustain and report on your project in a way which is both detailed and reflective.
This module will prepare you for the creation and implementation of information security policies in organizations, with an emphasis on risk management and business continuity planning, taking account both of the practicalities of implementation in a real-world setting, and the various legal and ethical issues involved. You’ll learn to identify assets, vulnerabilities, threats and controls and to consider issues of security culture.
This module will provide you with a comprehensive understanding of the principles, practices and measures of virtual reality technology and the development of interactive 3D worlds. Applications of the technology that will be used are from across sectors including the computer games industry, medicine, energy, engineering and science. You will develop your programming to an advanced level of understanding and experience of modern interactive 3D engine development.
The module will provide an introduction to the key technologies used to provide interactive web sites and interactive applications for use with mobile devices, taking into account the unique environment in which these applications operate. Consideration will be given to how to use these technologies whilst still maintaining web standards, particularly accessibility.
Please note that it may not be possible to deliver the full list of options every year as this will depend on factors such as how many students choose a particular option. Exact modules may also vary in order to keep content current. When accepting your offer of a place to study on this programme, you should be aware that not all optional modules will be running each year. Your tutor will be able to advise you as to the available options on or before the start of the programme. Whilst the University tries to ensure that you are able to undertake your preferred options, it cannot guarantee this.
English Language and Maths at grade C or above
UCAS tariff points
112-120 UCAS points
GCE A level
112-120 UCAS Points (BBB) including a computing subject or a numerate subject (maths/physics/chemistry)
BTEC National Diploma
DDM in a computer related subject
Irish Leaving Certificate
Salford Alternative Entry Scheme (SAES)
We welcome applications from students who may not meet the stated entry criteria but who can demonstrate their ability to pursue the course successfully. Once we have received your application we will assess it and recommend it for SAES if you are an eligible candidate.
There are two different routes through the Salford Alternative Entry Scheme and applicants will be directed to the one appropriate for their course. Assessment will either be through a review of prior learning or through a formal test.
English Language Requirements
International applicants will be required to show a proficiency in English. An IELTS score of 6.0 (with no element below 5.5) is proof of this. If you need to improve your written and spoken English, you might be interested in our English Language courses.
We are looking for applicants with a strong interest in computing. This implies having an interest in how computers work rather than just wanting to be a user of them, and it implies doing things on your own initiative rather than just things you’ve been told to do as part of your coursework. Strong attention to detail and a good work ethic are important to this course particularly with industrial placement opportunities.
We positively welcome applications from students who have relevant industry experience even if they do not meet the stated entry criteria. Students who do not have formal entry qualifications are required to sit a written assessment which is designed for this purpose. Please contact Andrew Young for further information.
A variety of delivery methods are adopted to achieve the intended learning outcomes of the course.
Practical modules include supervised laboratories to put into practice principles covered in supporting lectures;
Case studies are used to develop your ability to apply your knowledge and develop skills;
Group work is used to develop team working and professional skills;
Projects enable you to apply what you have learnt to a realistic problem;
Professional issues are delivered through the combination of a dedicated module to provide a broad context and other modules to provide a specific context, that relates theory to your own practical experiences and career plans;
ACKey skills are developed throughout the programme.
Assessment methods used and associated weightings vary from module to module.
Examinations are used to assess your immediate response to a set of small or medium unseen problems ;
Assignments are used to assess your considered and in-depth response to a larger problem;
Practical tests are used to assess your ability to apply appropriate skills to a problem;
Projects are used to assess your ability to create a plan, to identify possibilities and make decisions, to carry out the plan, and to reflect on the choices you’ve made and the results achieved;
Software development tasks will generally require you to demonstrate your work and to write a report.
When you graduate you will have excellent software development skills supported by a large portfolio of practical work which can be used to demonstrate your abilities to prospective employers. While many graduates will work as programmers and software developers in a range of companies, others will work as computer consultants, system administrators or as computer analyst.
Previous graduates have found employment with national companies such as Sainsburys, Cisco, Microsoft, SIS, Autotrader, HMRC, Ferranti and Civica as well as with a large number of local companies.
Gemma Cameron, BSc (Hons) Computer Science
I chose Salford because the course has an excellent reputation and fantastic links with industry. I had the opportunity to work for a year as part of my course which really developed my practical skills and ambition to get the job I wanted once I’d graduated.
I've had an exciting career taking me all over the country working for a large defence company, a small and modern startup providing SMS, and I now work at LateRooms.com as a Principal Software Developer.
The passion and drive nurtured at Salford have helped me become a leader in the local digital community, running several key events in the city. I'm now on the Industrial Steering Committee for the Computer Science department at Salford. Here I advise the University on technology and practices being used in industry to aid the development of the Computer Science courses at Salford, ensuring the course continues to provide cutting-edge skills in industry.
Links with Industry
We operate an industrial liaison committee who provide us with advice on our courses, and who help us to ensure that our modules are up-to-date. Companies involved include Web Applications UK, AutoTrader, Cooperative, DAI and FastWebMedia. This comprises a mixture of companies for whom IT is their primary business, and companies who make advanced use of IT to operate other types of business. This diversity ensures we see the IT industry from multiple perspectives, which makes our courses as relevant as possible. This committee is clear that graduates from this course will be very employable and that the course name makes it very clear to them that the graduates combine general skills and a specialism.