I graduated from a Ph.D. in Computer Science (Software Engineering) at Université Côte d’Azur / I3S - CNRS in France, under the supervision of Prof. Philippe Collet. My doctoral work is centered on the identification, consistency checking, and visualization of variability mechanisms in the build systems and implementation code of large variability-rich applications.
Although my research interests focus on the study and comprehension of mechanisms managing variability and configurability in large scale software systems, I am also interested in their practical application and design.
You can find my academic resume here.
Ph.D. in Software Engineering, 2022
Université Côte d'Azur — I3S, CNRS
Master's degree in Management and Business Administration, 2020
Université Côte d'Azur — IAE Nice
M.Sc. in Software Engineering (Diplôme d'Ingénieur), 2019
Université Côte d'Azur — Polytech Nice Sophia
Title: Mastering Variability in the Wild: On Object-Oriented Variability Implementations and Variability-Aware Build Systems
Advisor: Philippe Collet
This thesis focuses on the identification, consistency checking, and visualization of variability mechanisms in the build systems and implementation code of large variability-rich applications.
Teaching activities at graduate and undergraduate levels, focusing on software engineering, object-oriented design and reverse engineering.
Diplôme d’ingénieur specialized in Software Engineering.
Major topics include:
and other professional experiences
When software systems implement their variability in a single codebase, multiple mechanisms allow to implement and resolve this variability. These implementations however add extra complexity in the system, hampering its comprehension and potentially leading to bugs and anomalies during the resolution. In this thesis, we study two types of such mechanisms. Firstly, we propose approaches to identify and visualize variability implemented in object-oriented systems to help developers understand the codebase’s implemented variability. Secondly, we propose a model to represent and reason on the variability managed in the build systems of large variability-rich systems and detect anomalies such as dead code.
Design and development of symfinder, a prototype identifying and visualizing variability implementations in Java software projects.
This internship led to two publications at SPLC ’19 conference.
Design of a solution aiming to place and keep a trace of smart-contracts on values fetched by sensors in a network using an Ethereum blockchain.
This internship is part of the I-WIN project of the IDEX UCA Jedi program.
Level: 3rd year of B.Sc. (🇫🇷 Licence 3)
In this course, students dicover the bases of software engineering (designing tasks, use of a version control and dependencies manager, unit tests). The different concepts and tools are presented during the lectures and progressively incorporated during the labs sessions in a project lasting the whole duration of the course that students develop in groups of 3–4.
Level: 1st year of M.Sc. (🇫🇷 Master 1)
In this course, students learn object-oriented design using UML. The different concepts and tools are presented during the lectures and progressively incorporated during the labs sessions in a project lasting the whole duration of the course that students develop in groups of 3–4.
Level: 2nd year of M.Sc. (🇫🇷 Master 2)
In this course, students tackle research questions on topics related to the reverse-engineering of source code and need to answer them by applying a scientific method. At the start of the course, professors propose multiple research questions. Groups of 4–5 students choose one and propose a resolution method that they develop during the whole course. Lectures consist in multiple invited lectures from both academics and industrials being confonted to reverse-engineering challenges. During the labs, students work on their research question and develop the tools that help them in answering the question.
Distinction awarded by Polytech Nice Sophia for representing the school regularly in multiple programming contest.