Propostas Submetidas

DEI - FCTUC
Gerado a 2025-07-17 19:27:45 (Europe/Lisbon).
Voltar

Titulo Estágio

Repurposing generative AI for mutation testing and software fault injection

Áreas de especialidade

Engenharia de Software

Sistemas Inteligentes

Local do Estágio

CISUC

Enquadramento

Generative AI is revolutionizing many aspects of software engineering, powered by its innate ability to parse, comprehend and modify code (and other textual representations). Although generative AI has already been applied to code development, code suggestions and to test suite generation, there are still some areas of software engineering where the usage of AI has not been explored.

Mutation testing and software fault injection are two popular techniques that work on the same concept -- inject changes (bugs) in the code. While mutation testing is applied in test suite evaluation, software fault injection is used to evaluate the dependability and failure behaviour of systems.

In either case, there are obstacles common to both techniques, like lack of tool support for different programming languages, difficulty in obtaining a set of mutations (changes to the code) that is representative of real software bugs, and the large cost of applying these techniques.

With the power and adaptability of AI, there is now the possibility of solving some of these obstacles.

Objetivo

The objective of this technique is to apply the power of generative AI to perform changes in source code written in various programming languages and to evaluate its ability to be used as a tool for mutation testing and software fault injection.

Plano de Trabalhos - Semestre 1

T1 (M1-M2) - Review of the state-of-the-art in mutation testing, software fault injection, generative AI applied to software engineering tasks
T2 (M3) - Collect list of tools for mutation testing and software fault injection, install them and create list of limitations of the tools
T3 (M4) - Collect samples of source code from open-source repositories that implement different functionalities and written in various programming languages
T4 (M4) - Collect set of generative AI models
T4 (M5) - Write the intermediate report

Plano de Trabalhos - Semestre 2

T5 (M6-M8) - Conduct experiments where the collected AI models are used to apply mutations to the collection of source code
T6 (M7-M9) - Apply existing tools to the same collection of source code
T7 (M8-M10) - Compare results obtained by AI against the results from the tools
T8 (M10-M11) - Write the final report

Condições

The dissertation will take place in the CISUC research centre (SSE group).

Orientador

Frederico Cerveira
fmduarte@dei.uc.pt 📩