You are here: Computing / Software Development
Overview
Software development and programming is at the core of many successful careers in the computing sector. Our modules in this area enable you to learn a wide range of programming languages and software development methodologies. You will also have an opportunity to develop a large software solution either for industry or a personal project of your choosing.
Facilities
All our computing labs are open access allowing you to use the facilities out of hours. All our labs include the latest IDEs and editors including VS Code, Atom, Sublime, Eclipse and IntelliJ IDEA.
Key facts
- Learn a range of programming languages and techniques
- Apply this knowledge to real-world projects and scenarios
Study software engineering
Our flexible BSc (Hons) Computing degree allows students to choose from a range of specialist software development modules. Simply apply for our BSc (Hons) Computing degree and opt for software development modules as part of the enrolment process.
Modules
This module introduces the concepts of programming and a modern programming language. Through programming practical’s, students will become fluent in structured programming constructs, procedural programming and object-oriented programming.
This module seeks to provide students with the opportunity to produce a complete, substantial software product that incorporates elements such as software design, implementation, testing and the production of documentation suitable for end-users as well as advanced engineering topics
This module focuses on data structures (e.g. linked lists, trees, heaps, hash tables, etc), algorithms (sorting, searching, dynamic programming, greedy, graph, geometric, cryptographic, string matching and compression algorithms, etc), and advanced programming techniques and other language paradigms.
This module introduces the concepts of web design, with a focus on designing responsive websites for a wide range of desktop, tablet and mobile devices. Students are introduced to HTML, CSS and JavaScript allowing them to create interactive, accessible and visually pleasing websites.
Database systems, particularly those based on the Relational Database Model, play a significant role in the world of Information Technology. This module provides essential knowledge and appreciation of the role of relational database systems, including basic principles and practice of design, implementation and development for both system designers and software engineers. It will include practical exercises in Structured Query Language (SQL)