Course descriptionThis course studies the best ways to design, build, maintain and evaluate software systems. It uses many of the technical aspects of computer science, especially programming, and aims to develop the professional attitudes, interpersonal and technical skills you will need in the software engineering industry.
The course provides a solid foundation in software engineering theory and practice to develop professional software systems. It will equip you to take up a wide range of career opportunities, including software engineer, web application programmer, software designer/analyst or website designer/programmer.
You will study software development, programming languages, technologies and applications including Java, C/C#, UNIX, UML, graphics, networks, concurrent systems, databases, arti?cial intelligence, and web and mobile computing. You will share a common ?rst year with the Computer Science BSc Honours course; you can transfer in Year 1, and specialise in Year 3.
The BEng emphasises fundamental principles, design, acquisition of practical skills and evaluation of technologies. You may go on to complete an integrated Masters programme with the award of an MEng degree after four years.
Subjects of study
The following subjects are indicative of what you will study on this course. For more details on course structure and modules, and how you will be taught and assessed, see the full course document.
Course content:
Year 1 (Credit Level 4)
Subjects of study include:
Communication and Learning Skills
Computer Systems Fundamentals
Maths for Computing
Programming Methodology (Java)
Software Development Principles
Software Engineering Principles
Web Technology
Year 2 (Credit Level 5)
Subjects of study include:
Algorithms and Data Structures
Human Computer Interface Design
Object-Oriented Development
Professional Practice
Project Management
plus two option modules from the following:
Database Design and Practice 1
Database Design and Practice 2
Introduction to 3D Graphics
Introduction to Symbolic Reasoning
Mobile Application Development
Mobile Computing Principles
Network Software Development
System Software and Tools
Web Programming
Industrial placement year
You can take a 12-month placement between Years 2 and 3. This experience will give you additional practical skills, and a competitive edge in the job market.
Year 3 (Credit Level 6)
Subjects of study include:
Computer Science Project
Computer Systems Security
Formal Speci?cation
Requirements Engineering
Software Quality, Performance and Testing
plus two option modules from the following:
Advanced Web Technology
Arti?cial Intelligence Applications 1
Arti?cial Intelligence Applications 2
Computer Forensics Investigation
Computer Systems Administration
Concurrent Programming (Core for MEng)
Distributed Systems and Network Software
Functional Programming
Native Programming
Programming Language Translation
Real-Time and Embedded Systems
Service-Oriented Architecture
Year 4 (Credit Level 7) MEng only
Selected modules from the postgraduate programmes, such as:
As part of your course you can take elective modules at Level 5 and Level 6. Electives are an exciting opportunity to widen your experience at university and to gain skills and knowledge that will help make you more employable.