Research
My research focuses on advancing software engineering practices through innovative approaches to requirements engineering, automated testing, and software quality assurance. I develop AI-driven techniques to bridge the gap between software requirements and implementation, with particular emphasis on traceability, metamorphic testing, and vulnerability detection.
A central theme in my work is leveraging natural language processing and machine learning to automate and improve traditionally manual software engineering tasks. This includes developing novel methods for requirements abstraction identification, test case generation from natural language specifications, and automated detection of software vulnerabilities in open-source systems.
Key Research Areas
Requirements Engineering & Traceability
Developing automated approaches for requirements abstraction identification, environment-driven testing, and maintaining traceability links between requirements and implementation artifacts. This work has received recognition including the Best Research Paper Award at the 29th IEEE International Requirements Engineering Conference (RE 2021).
Metamorphic Testing
Exploring metamorphic testing techniques for scientific software systems where traditional test oracles are challenging to establish. My work focuses on discovering and applying metamorphic relations to improve test adequacy in computational science applications. This work has received the Best Emerging Results and Vision Paper Award at the 15th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM 2021).
Security of LLM-Generated Code
Studying what goes wrong when large language models write code. By combining metamorphic testing with association rule mining, this work characterizes how security violations such as SQL injection, XSS, and cryptographic weaknesses co-occur across models and prompt types. It received the Best Paper Runner-up Award at the IEEE 27th International Conference on Information Reuse and Integration for Data Science (IRI 2026).
Automated Vulnerability Detection
Advancing techniques for automated vulnerability scanning in open-source software with emphasis on minimizing false positives and improving detection accuracy through machine learning approaches.
AI for Software Engineering
Investigating the application of large language models (LLMs) and retrieval-augmented generation (RAG) to software engineering tasks, including requirements testability prediction, code generation, and automated documentation analysis.