Research

My research in Software Engineering (SE) follows two lines: 1) addressing SE problems in Artificial Intelligence (AI) based software systems with a focus on Testing Machine Learning (ML) based Software Systems and their Quality Assurance, and 2) leveraging AI to solve SE problems with a recent focus on Large Language Models (LLMs) for Code Generation.

Software Engineering for AI-based systems

AI-based systems are developed and then deployed as software systems. So, like any other software, they need engineering: from requirement analysis to testing and maintenance. Moreover, many established techniques in traditional SE should be adapted to AI-based systems due to their data-sensitive and non-deterministic nature.

AI in Software Engineering

Modern software systems are highly complex and often pose novel challenges in different aspects of SE. On the other hand, AI has been proven to be effective in addressing various SE challenges.