Project work

Student looking at laptop

The project work you will carry out on your course is designed to help you become a confident and self-motivated graduate, as you’ll learn sought-after skills in Computing. 

Projects are an important feature of all our courses. In addition to being a fun and practical way to learn, they provide you with an excellent opportunity to explore topics in depth and enable you to develop essential skills such as problem-solving, communication and teamwork, all of which are vital skills employers look for. All our courses include at least one significant project in every year of study. 

Year one – Programming project 

In your first year, the Programming Project module is designed to reinforce your C programming skills and enhance your ability to independently implement code.  

You’ll develop experience with professional programming tools and techniques, such as version control, unit-testing, secure and defensive coding. You’ll also analyse existing code for consistency with coding standards and construct code to a given specification. 

Year two – Software engineering project 

The second-year project in Software Engineering is a major software development task undertaken across one semester by teams of up to seven or eight students, where you’ll develop a complex piece of software and you’ll do so in close collaboration with others.  

The project builds upon the programming skills gained in the first year and will give you exposure to a wide range of other activities important in the successful delivery of software, including: 

  • Requirements capture 
  • Object-oriented analysis and design 
  • User interface prototyping 
  • Testing 
  • Version control 

You’ll adopt an agile approach to development and use industry-standard tools for communication, collaboration and the management of project assets. These experiences will leave you well-prepared for placements or jobs in the software industry. 

All of the teams are given the same problem to solve but are able to choose the technology to solve that problem. Some teams implement a front-end that runs as a desktop application, some create an app for a mobile device and others build something that runs in a web browser.  

The system must communicate over the network with a server and a database. All of these different components must be created from scratch by the team, meaning that the project draws directly upon what has been learned in a number of other first- and second-year modules. 

Year three – Individual project 

The third-year individual project is a significant step to deepen your interests in computing and in preparation for your career upon graduation. You are expected to carry out a piece of individual research and will have an academic supervisor who offers guidance throughout. Depending on the choice of the project, you may tackle a theoretical study, an exploratory software development, a software product or an empirical investigation. 

A variety of projects are undertaken each year. Some were for external organisations such as the NHS, charities and software companies; others were based on research interests within the School. Examples of recent projects include: 

  • 3D Noughts and Crosses with Baxter, a Humanoid Robot: development of a software system run on the University’s Baxter Research Robot, enabling him to participate in playing 3D Noughts and Crosses with another human player. 
  • Design of Quad Rotor Semi-Autonomous Flight Controller Software: a quad rotor was designed, built and developed to be able to fly semi-autonomously maintaining a target altitude. A Base Station application was developed to control and display data from the Quad Rotor. 
  • The Leeds Method of Management antibiotic app: a mobile application was developed that can display information about pathogens and drugs as well as working offline. This was so doctors can have a quick reference guide in the palm of their hand without the need of an internet connection. 
  • Delivering a Cloud Monitoring Tool: a platform-agnostic cloud monitoring tool is designed and implemented capable of collecting monitoring data from the cloud, physical host and virtual machine layers. By provisioning a custom test-bed running OpenStack it demonstrated that the tool is able to collect and supply a series of metrics. 

In the Intelligent Systems and Robotics module you will work with our TurtleBots to design, implement and test different control and perceptual systems. 

Year four - Group research project 

You’ll undertake a major group project to further develop your team working, project management and research skills in addition to your technical knowledge. The project involves giving a presentation to students and staff as well as writing a joint report, presenting the problem, its solution and its evaluation. You’ll also write an individual report in which you reflect upon the experience of working in the group and your contributions to the project. 

Examples of recent projects include: 

  • Development of a 3D modelling tool using a Haptic device 
  • Design and development of a tool for monitoring energy measurements in Cloud Computing 
  • Exploring the use of NI’s myRIO C++ API and Robotics Platform to Perform Robot Navigation and Obstacle Avoidance.