His research focuses on software engineering, with particular emphasis on the specification, verification and validation of evolvable software systems.
His work spans three main areas. The first covers verification and validation of software systems, including specification languages, runtime monitoring, verification of cyber-physical systems, program analysis for security, software testing, formal methods, and quantum software engineering. The second area addresses log analysis, including log parsing, log quality, model inference, anomaly detection, and AIOps. The third focuses on requirements engineering, with particular attention to regulatory compliance.
He regularly serves as programme committee member for leading software engineering conferences and as referee for major journals in the field. He served as Associate Editor of IEEE Transactions on Software Engineering from 2021 to 2025 and has been Associate Editor of ACM Transactions on Software Engineering and Methodology since December 2025.
He has supervised or co-supervised nine PhD students.