About me
I’ve joined McMaster University and its Faculty of Engineering as an Associate Professor of Software Engineering in the Department of Computing and Software (CAS) and a member of McMaster Centre for Software Certification (McSCert). I am also a licensed engineer (PEng) in Ontario. Lectures or Zoom calls might be interrupted anytime when working from home because cats would play with the webcam wires. I am also good at breaking software and information systems. And if we ever have to travel together, be prepared for flight cancellations.
My main research effort since I joined McSCert has focused on developing jPipe, a domain-specific language dedicated to modelling and operationalizing justification diagrams. More generally, my research interests are related to software engineering, software composition, domain-specific languages and modelling at large. In addition, I apply my research to various domains such as machine learning pipelines, distributed systems, DevOps and safety. My research has been conducted closely with industrial partners, leading to several technological transfers.
By working on justification models, I aim to bring safety-related concerns to non-safety-critical domains. For example, a mental health journaling application executed on your cell phone is not considered safety-critical. But how can we help the application developer ensure they are doing it right in a way that will not harm the end user? Is the AI model they are using compatible with the evaluation task they are in their app to evaluate the user’s mental health? Are they allowed to provide the kind of feedback they are providing, or would it be considered as violating a restricted practice regulation (e.g., psychologist)? Is the way this feedback is offered adequate for the app’s audience? It is easy to do wrong, especially in domains such as fairness or safety, as these domains require specialized skills. Ensuring that a safety-critical system is designed correctly is a well-investigated domain, but these methods are not necessarily adapted to “regular” software engineers. Consequently, I am trying to capture best practices and expert knowledge as “justifications”, allowing engineers to reuse these justifications to ensure they are doing the right thing.
I received my Ph.D. in Computer Science from Université de Nice (France) in 2010. I was a postdoctoral student at Inria Lille-Nord Europe in 2011 before joining SINTEF (Oslo, Norway) as a research scientist. I then joined Université Côte d’Azur in 2012, where I was an Assistant and then Associate Professor in charge of the Master of Software Architecture. Before joining Mac, I was Associate Professor of Software Engineering at Université du Québec à Montréal from 2019 to 2021.