Houari Sahraoui
Génie logiciel, visualisation du logiciel, intelligence artificielle, apprentissage automatique
- Vice-doyen
-
Faculté des arts et des sciences - Direction
Pavillon Lionel-Groulx, local C9076-3
- Professeur titulaire
-
Faculté des arts et des sciences - Département d'informatique et de recherche opérationnelle
André-Aisenstadt, local 2359
Portrait
Expertise de recherche
Mes intérêts de recherche portent entre autres sur l’automatisation dans le génie logiciel. Je m’intéresse en particulier à l’apprentissage des transformations de modèles à partir d’exemples en utilisant des approches évolutionnistes. Je travaille également sur la rétro-ingénierie (compréhension) et la réingénierie (refactoring, migration vers les logiciels à base de composants, etc.) des logiciels par l’analyse statique et dynamique. Mes préoccupations incluent également la visualisation des grands ensembles de données multidimensionnelles pour la compréhension et la maintenance du logiciel.
Biographie
Houari Sahraoui est professeur au Département d'informatique et de recherche opérationnelle. Il en a été directeur de 2013 à 2017. Il a publié plus de 200 articles en génie logiciel et particulièrement sur l'automatisation du génie logiciel et l'ingénierie dirigée par les modèles. Il a été président des conférences IEEE/ACM Automated Software Engineering et IEEE Software Visualization (VISSOFT), président du comité de programme d'IEEE VISSOFT, membre de comités de programme de plusieurs conférences IEEE et ACM, membre de comité de lecture de plusieurs revues et membre de l'organisation de nombreuses conférences.
Il a siégé au comité de sélection des subventions CRSNG -découverte (informatique). Il a été parmi les membres fondateurs de CS-Can/Info-Can, la Société canadienne de l'informatique et y a été le représentant du Québec.
Prix et distinctions
-
Best paper award CASCON, 2010
-
Best paper award BM-FA, 2010
-
Ayuda para la movilidad, Ministerio de Educación y Ciencia (Espagne), 2005.
-
ACM SIGSOFT Distinguished Paper Award 2005.
-
Excellence in Science Teaching Award (2003-2004), Université de Montréal.
-
ACM Recognition of Service Award, 2003.
Affiliations et responsabilités
Enseignement et encadrement
Encadrement
Thèses et mémoires dirigés (dépôt institutionnel Papyrus)
Co-simulation for controlled environment simulation
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Few-shot prompt learning for automating model completion
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Optimizing vertical farming : control and scheduling algorithms for enhanced plant growth
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Sur l'élaboration de meilleures techniques pour l'apprentissage auto-supervisé des représentations du code
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Apprentissage de stratégies de calcul adaptatives pour les réseaux neuronaux profonds
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Automatically correcting syntactic and semantic errors in ATL transformations using multi-objective optimization
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Extraction of UML class diagrams from natural language specifications
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Abstraction de comportement de haut niveau à l’aide de la visualisation interactive
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Towards using intelligent techniques to assist software specialists in their tasks
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Extending domain-specific modeling editors with multi-touch interactions
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Pattern-based refactoring in model-driven engineering
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Vérification des patrons temporels d’utilisation d’API sans exécution du code : une approche et un outil
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
From examples to knowledge in model-driven engineering : a holistic and pragmatic approach
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Metamodel co-evolution with related model-driven engineering artifacts : a multi-objective search framework
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Caractérisation et étude de l’impact des permissions dans les applications mobiles
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Détection des utilisations à risque d’API : approche basée sur le système immunitaire
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Using goal-driven assistants for software visualization
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Inferring API Usage Patterns and Constraints : a Holistic Approach
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Dérivation de diagrammes de séquence UML compactes à partir de traces d’exécution en se basant des heuristiques.
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
A Mono- and Multi-objective Approach for Recommending Software Refactoring
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Una aproximación evolucionista para la generación automática de sentencias SQL a partir de ejemplos
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
A unified framework for the comprehension of software's time dimension
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Une approche heuristique pour l’apprentissage de transformations de modèles complexes à partir d’exemples
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Génération automatique de configurations et de scénarios d'utilisation d'outils de visualisation à partir de spécifications de tâches d'analyse de logiciels
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Improving automation in model-driven engineering using examples
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Identification d’une architecture à base de composants dans une application orientée objets à l’aide d’une analyse dynamique
Cycle : Doctorat
Diplôme obtenu : D. Th.
Utilisation de la visualisation interactive pour l’analyse des dépendances dans les logiciels
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Technique de visualisation pour l’identification de l’usage excessif d’objets temporaires dans les traces d’exécution
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Transformation by example
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Étude empirique des commentaires et application des techniques de résumé par extraction pour la redocumentation
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Analyse de dépendance des programmes à objet en utilisant les modèles probabilistes des entrées
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Intégration de la visualisation à multiples vues pour le développement du logiciel
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Formulation interactive des requêtes pour l’analyse et la compréhension du code source
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Modelling software quality : a multidimensional approach
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Développement logiciel par transformation de modèles
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Rétro-ingénierie des diagrammes de séquence par visualisation interactive
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
A formal framework for run-time verification of Web applications : an approach supported by ccope-extended linear temporal logic
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Évaluation de la qualité des applications web : approche probabiliste
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Un système d'aide à la visualisation interactive de logiciels
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Détection visuelle d'anomalies de conception dans les programmes orientés objets
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Rule-based quality heuristics formalization and identification
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Méta-modélisation de l'adaptation dynamique du contrôle des systèmes multi-agents
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Visualisation de la qualité des logiciels de grandes taille
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Modélisation pour la gestion de modèles
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Étude de l'analyse formelle dans les données relationnelles : application à la restructuration des modèles structuraux UML
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Formal checking of web based applications
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Analyse de la qualité du logiciel : une approche par visualisation et simulation
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Estimation de l'impact du changement dans les programmes à objets
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Amélioration de la prédiction de la qualité du logiciel par combinaison et adaptation de modèles
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Estimation de caractéristiques externes de qualité à partir de mesures d'attributs internes : bilan et perspectives
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Estimation de la qualité du produit logiciel : réseaux Bayésiens
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Migrating legacy system towards object technology
Cycle : Doctorat
Diplôme obtenu : Ph. D.
Determination of software quality through a generic model
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Software stability assessment using multiple prediction models
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Analyse des traces d'exécution pour la vérification des protocoles d'interaction dans les systèmes multiagents
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Obje[c]t identification using conceptual clustering
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Identification des objets dans les applications léguées basée sur les algorithmes génétiques
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Extension des modèles de prédiction de la qualité du logiciel en utilisant la logique floue et les heuristiques du domaine
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
001_correct : un environnement de restructuration des programmes objets piloté par la qualité
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Enhancing and evolving a rule-based system using historical data : a neuro-fuzzy approach
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
A case-based reasoning diagnosis system for AHU (Air-Handling Unit)
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Gestionnaire de connaissances pour systèmes hybrides objets-règles
Cycle : Maîtrise
Diplôme obtenu : M. Sc.
Projets
Projets de recherche
From examples to knowledge to software engineering support and automation
Efficient Support of Code Review Process with Deep Learning
Digital Twins for Vertical Farming
Digital Twins for Vertical Farming
Toward Robust and Adaptable Deep Learning Models of Code
L’assistance au développement du logiciel au temps des données massives
Multi-paradigm digital twin framework for biophysical systems: Application to vertical farming
Supplément COVID-19 CRSNG_From examples to knowledge to software engineering support and automation
LEARNING FROM EXAMPLES TO IMPROVE AUTOMATION IN MODEL-DRIVEN ENGINEERING
Migration des applications logicielles vers le "Cloud"
ADDRESSING ISSUES IN SOFTWARE ENGINEERING AUTOMATION USING VISUALIZATION AND SEARCH-BASED METHODS
ADDRESSING ISSUES IN SOFTWARE ENGINEERING AUTOMATION USING VISUALIZATION AND SEARCH-BASED METHODS
Rayonnement
Publications et communications
Publications
Martin Faunes, Houari Sahraoui, Mounir Boukadoum, Genetic-Programming Approach to Learn Model Transformation Rules from Examples, Theory and Practice of Model Transformations, Lecture Notes in Computer Science Volume 7909, 2013, pp 17-32
Ali Ouni, Marouane Kessentini, Houari Sahraoui, Mounir Boukadoum, Maintainability defects detection and correction: a multi-objective approach, Automated Software Engineering, Vol. 20, no 1, pp 47-79, 2013
Ghazwa Malak, Houari Sahraoui, Linda Badri, Mourad Badri, Modeling Web Quality using a Probabilistic Approach: An empirical validation, ACM Transactions on the Web (ACM-TWEB), vol. 4, no 3, pp.1-31, 2010
Houari Sahraoui, Lionel C. Briand, Yann-Gaël Guéhéneuc, Olivier Beaurepaire, Investigating the Impact of a Measurement Program on Software Quality, Journal of Information and Software Technology (Elseveir), vol. 52, no 9, pp.923-933, 2010.
M Kessentini, H Sahraoui, M Boukadoum, Model transformation as an optimization problem, Model Driven Engineering Languages and Systems (MODELS), 2008.
Salah Bouktif, Houari Sahraoui, and Giuliano Antoniol. 2006. Simulated annealing for improving software quality prediction. In Proceedings of the 8th annual conference on Genetic and evolutionary computation (GECCO '06).
Guillaume Langelier, Houari Sahraoui, and Pierre Poulin. 2005. Visualization-based analysis of quality for large-scale software systems. In Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering (ASE '05).
Houari Sahraoui, Robert Godin, Thierry Miceli, Can metrics help to bridge the gap between the improvement of OO design quality and its automation?, International Conference on Software Maintenance, pp.154,162, 2000.
Disciplines
- Informatique
- Génie informatique et génie logiciel
Champ d’expertise
- Génie logiciel
- Automatisation du génie logiciel
- Génie logiciel empirique
- Ingénierie dirigée par les modèles
- Métrique (logiciel)
- Recherche heuristique en génie logiciel
- Rétro-ingénierie
- Visualisation du logiciel
Aide en ligne pour votre profil | Nous joindre
Le Répertoire des professeurs est propulsé par les données du SADVR et est un projet du CENR.