Ontology-Guided Explainable AI for Enhancing Software Repository Comprehension

Software repositories have grown exponentially, making it increasingly challenging for developers and researchers to comprehend and manage them. This PhD project aims to create an Ontology-Guided Explainable AI (XAI) framework that enhances software repository comprehension. The proposed framework will leverage ontologies to provide structured explanations of AI-driven analysis of software repositories, thereby improving the understanding, reuse, and maintainability of software projects.

Primary Supervisor: Dr Rosa Filgueira

Overview of research area

The project integrates explainable AI with semantic software analysis, employing ontologies to capture and represent the intricate relationships within software repositories. By combining knowledge graph techniques with explainable AI models, the research will create a system that not only identifies similarities and patterns in software repositories but also provides intuitive explanations for these findings. The framework will be tested on various repositories (Python, Java, C++, etc.) to evaluate its effectiveness in enhancing comprehension and aiding developers in understanding complex codebases. 

Potential research questions

  • How can ontologies be integrated with explainable AI models to improve software repository comprehension?
  • What techniques can be developed to provide intuitive explanations for the semantic similarities and patterns detected in software repositories?
  • How can the proposed framework be applied across different programming languages to support multi-language software analysis?

Student Requirements

A UK 2:1 honours degree, or its international equivalent, in a relevant subject such as computer science and informatics, physics, mathematics, engineering, biology, chemistry and geosciences.

You must be a competent programmer in at least one of C, C++, Python, Fortran, or Java and should be familiar with mathematical concepts such as algebra, linear algebra and probability and statistics.

English Language requirements as set by University of Edinburgh.

Student Recommended/Desirable Skills and Experience

  • Experience with explainable AI and deep learning frameworks.
  • Knowledge of semantic web technologies and ontology development.
  • Understanding of software repository analysis techniques.

How to apply

Applications should be made via the University application form, available via the degree finder. Please note the proposed supervisor and project title from this page and include this in your application. You may also find this page is an useful starting point for a research proposal and we would strongly recommend discussing this further with the potential supervisor.

References

[1] Inspect4py: A knowledge extraction framework for python code repositories, 2022

[2] RepoGraph: A novel semantic code exploration tool for Python repositories based on knowledge graphs and deep learning, 2023

[3] Multi-Level AI-Driven Analysis of Software Repository Similarities , 2024