Contributions à la production de logiciels de qualité
Résumé
During my research career, I have explored various domains aimed at improving and optimising software quality.
My work is motivated by the constant objective of improving the quality of the software produced. I have approached this task at several complementary levels, encompassing language, compilation, development environments (IDEs) and continuous integration/continuous deployment (CI/CD) processes. My aim was to optimise according to several complementary criteria such as speed, memory consumption, energy efficiency and cybersecurity, focusing on complementary objects of study, ranging from source code to binaries.
My previous work initially focused on languages, compilation, programme execution and optimisation, with the emphasis first on speed and then on memory. I then explored the optimisation of energy consumption in various contexts. I also contributed to the analysis and advanced visualisation of programs and their execution. I then turned my research towards cybersecurity, including the expression of security properties as early as the design stage of programs, the analysis and classification of malicious binaries, the analysis of code to detect vulnerabilities, and defence against attacks via side-channels.
My current and future work includes optimising the build process, security properties and securing programmes, as well as finding and fixing vulnerabilities in code bases.
As part of this Habilitation à Diriger des Recherches (HDR), entitled "Contributions to the production of quality software", I will present excerpts from my previous work to illustrate the continuity of my past research and my vision for the future, highlighting my experience and perspective on the direction and coordination of research.
Au cours de ma carrière de recherche, j'ai exploré divers domaines visant à améliorer et optimiser la qualité des logiciels.
Mes travaux sont en effet motivés par l'objectif constant d'améliorer la qualité des logiciels produits. J'ai abordé cette tâches à plusieurs niveaux complémentaires, englobant le langage, la compilation, les environnements de développement (IDE) et les processus d'intégration continue/déploiement continu (CI/CD). Mon but était d'optimiser selon plusieurs critères complémentaires tels que la vitesse, la consommation mémoire, l'efficacité énergétique et la cybersécurité, en m'attardant sur des objets d'études complémentaires, allant du code source aux binaires.
Mes travaux antérieurs ont initialement porté sur les langages, la compilation, l'exécution des programmes et leur optimisation, en mettant l'accent d'abord sur la vitesse puis sur la mémoire. Ensuite, j'ai exploré l'optimisation de la consommation énergétique dans divers contextes. J'ai également contribué à l'analyse et à la visualisation avancée de programmes et de leur exécution. J'ai ensuite orienté mes recherches vers la cybersécurité, incluant l'expression des propriétés de sécurité dès la conception des programmes, l'analyse et la classification de binaires malveillants, l'analyse du code pour détecter des vulnérabilités, et la défense contre les attaques par canaux auxiliaires.
Mes travaux actuels et futurs englobent l'optimisation du processus de build, les propriétés de sécurité et la sécurisation des programmes, ainsi que la recherche et la correction de vulnérabilités au sein des bases de code.
Dans le cadre de cette Habilitation à Diriger des Recherches (HDR), intitulée "Contributions à la production de logiciels de qualité", je présenterai des extraits de mes travaux antérieurs pour illustrer la continuité de mes recherches passées et ma vision pour l'avenir, en mettant en avant mon expérience et ma perspective sur la direction et la coordination de la recherche.
Mots clés
languages
compilation
optimisation
classes
late binding
memory management
garbage collection
instrumentation
build process
power
energy
scheduling
WSN
wireless sensor networks
program visualisation
security
malware detection
malware analysis
malware classification
packers
side channels
SCA
TeamPlay
HiPEAC
détection de maliciels
analyse de maliciels
classification de maliciels
packers
canaux auxiliaires
TeamPlay
HiPEAC
langages
compilation
optimisation
classes
liaison dynamique
gestion mémoire
ramasse-miettes
instrumentation
construction de logiciels
puissance
énergie
ordonnancement
réseaux de capteurs sans fil
visualisation de programmes
sécurité
Origine | Fichiers produits par l'(les) auteur(s) |
---|