Skip to content

Toggle service links

You are here

  1. Home
  2. Using Machine Learning to find bugs

Using Machine Learning to find bugs

Full-time PhD studentship funded by Huawei


Much of the time and cost in developing software is spent fixing bugs reported by users or testers. Due to staff turnover, outsourcing, and the complexity and size of software systems, developers may not be familiar with the code they have to fix, further increasing time and cost. 

Our state-of-the-art search engine (Dilshener et al 2018) helps developers find the source of errors more quickly: given a bug report, it suggests (in ranked order, like a web search engine) which files may need to be fixed. Our approach uses heuristics rather than past history. The aim of this PhD research is to use deep learning to improve the accuracy of finding the source of bugs and to train the search engine on the codebase being analysed.

This full-time PhD research will be carried out in collaboration with Huawei, which is funding the Empirical Data-Driven Bug Localisation in Software Development (EDBL) project, of which this PhD is a part of.


Skills Required

  • Strong software development skills, preferably in Python
  • Good communication and documentation skills
  • Knowledge of machine learning techniques
  • Experience of creating datasets and experimental design is useful


Background reading

  • T. Dilshener, M. Wermelinger, Y. Yu (2018). Locating bugs without looking back. Automated Software Engineering, 25(3) pp. 383–434.



Dr Yijun Yu ( or Dr Michel Wermelinger (


Key dates

Application cut-off date: 7 February 2022

Expected start date: as soon as possible

The successful candidate is expected to live within 40 miles of Milton Keynes


How to apply

For application guidance, please visit here.




Request your prospectus

Request a prospectus icon

Explore our qualifications and courses by requesting one of our prospectuses today.

Request prospectus

Are you already an OU student?

Go to StudentHome