His main research area is software engineering, with emphasis on the specification, verification and validation of evolvable software systems.
His research career has mainly focused on different aspects of run-time verification for dependable, secure, and compliant software.
His current research interests include run-time verification and monitoring, temporal logics and specification languages, log analysis, program analysis, and regulatory compliance.
He regularly serves as PC member for the main conferences in the area of software engineering and as referee for the most important software engineering journals.
He has been serving on the editorial board of IEEE Transactions on Software Engineering (TSE) since April 2021.
He has supervised (or co-supervised) nine PhD students.