Past teaching
I mainly taught at IMT Mines Alès from 2018 to 2022 but also at the University of Montpellier in 2021 and 2022.
| Year | Institution | Academic Level | Course | Hours | Type | Responsability | Supports |
|---|---|---|---|---|---|---|---|
| 2018 – 2019 | IMT Mines Alès | L3 (1ère année ingé généraliste) | Algorithmique et POO (Java) | 13h | TP/TD | Encadrement | |
| 2018 – 2019 | IMT Mines Alès | L3 (1ère année ingé par apprentissage info) | Approche objets (UML) | 15h | TP/TD | Encadrement | |
| 2018 – 2019 | IMT Mines Alès | M1 (2ème année ingé généraliste spé info) | Projet GL | 16h | TP/TD | Encadrement | |
| 2018 – 2019 | IMT Mines Alès | M2 (3ème année ingé généraliste spé info) | Étude Technique | 10h | Projet étudiant | Encadrement | |
| 2018 – 2019 | IMT Mines Alès | M1 (2ème année ingé généraliste spé info) | Mission R&D | 20h | Projet étudiant | Encadrement | |
| 2019 – 2020 | IMT Mines Alès | M1 (2ème année ingé généraliste spé info) | Programmation Orientée Objet | 8h | TP/TD | Encadrement | |
| 2019 – 2020 | IMT Mines Alès | M2 (3ème année ingé généraliste spé info) | Qualité Logicielle | 6h30 | Cours | Création de cours | https://www.slideshare.net/secret/GUfJLao8HZXZHk |
| 2019 – 2020 | IMT Mines Alès | M2 (3ème année ingé généraliste spé info) | Bonnes pratiques logicielles | 10h | TP/TD | Encadrement | |
| 2019 – 2020 | IMT Mines Alès | M1 (2ème année ingé généraliste spé info) | Projet GL | 16h | TP/TD | Encadrement | |
| 2019 – 2020 | IMT Mines Alès | L3 (1ère année ingé généraliste) | Base de données relationnelles | 14h | TP/TD | Encadrement | |
| 2019 – 2020 | IMT Mines Alès | L3 (1ère année ingé par apprentissage info) | Approche objets (UML) | 15h | TP/TD | Encadrement | |
| 2019 – 2020 | IMT Mines Alès | L3 (1ère année ingé par apprentissage info) | Langages objets (Java) | 11h | TP/TD | Encadrement | |
| 2020 – 2021 | IMT Mines Alès | L3 (1ère année ingé généraliste) | Base de données relationnelles | 14h | TP/TD | Encadrement | |
| 2020 – 2021 | IMT Mines Alès | L3 (1ère année ingé par apprentissage info) | Approche objets (UML) | 15h | TP/TD | Encadrement | |
| 2020 – 2021 | IMT Mines Alès | L3 (1ère année ingé par apprentissage info) | Langages objets (Java) | 11h | TP/TD | Encadrement | |
| 2020 – 2021 | IMT Mines Alès | M2 (3ème année ingé généraliste spé info) | Qualité Logicielle | 6h30 | Cours | Création de cours | https://www.slideshare.net/secret/GUfJLao8HZXZHk |
| 2020 – 2021 | IMT Mines Alès | M1 (2ème année ingé généraliste spé info) | Mission R&D | 20h | Projet étudiant | Encadrement | |
| 2021 – 2022 | IMT Mines Alès | L3 (1ère année ingé généraliste) | Base de données relationnelles | 14h | TP/TD | Encadrement | |
| 2021 – 2022 | Univ Montpellier | M2 | IA pour le GL | 6h | TP/TD | Création TP et encadrement | https://github.com/qperez/TP-Master-MTP-GL-IA4GL/ |
| 2022 – 2023 | Univ Montpellier | M2 | IA pour le GL | 9h | TP/TD | Création TP et encadrement | |
| 2022 – 2023 | IMT Mines Alès | M2 (3ème année ingé généraliste spé info) | Qualité Logicielle | 9h30 | Cours | Création de cours |
Création de cours et TP
IMT Mines Alès, 3ème année (M2) d’ingénieur généraliste (parcours Ingénierie Logicielle) - Qualité Logicielle
6h30 en 2021 puis 9h30 en 2022.
J’ai monté ce cours avec pour objectif d’apprendre aux étudiants les méthodes et les outils permettant un développement logiciel de manière industrielle. Dans ce cours sont abordées les notions de modularité, de construction et de packaging avec gestionnaire de construction (Maven). Une introduction aux différents niveaux/types de tests logiciels est donnée. Le concept d’intégration continue est également abordé. Sur la base de ce cours un TP a été créé pour permettre aux étudiants d’expérimenter le refactoring avec Maven, la création de tests unitaires avec JUnit5, la rédaction de tests fonctionnels avec Cucumber ainsi que l’intégration continue à l’aide de GitHub et Travis CI.
Les étudiants travaillent sur la modélisation objet d’une machine à café polymorphique et composé de divers composants (moulin, réservoir à eau/café, résistance, etc.). Ce projet sous Maven est buggé à dessein et la construction échoue. Les étudiants ont pour object de corriger le build puis de refactorer le projet en créant un nouveau module Maven. Ils doivent ensuite implémenter quelques cas de test fonctionnels avec Cucumber et mettre en place une intégration continue à l’aide Github Actions.
Le dépôt Github suivant contient le code du TP ainsi que les slides de cours créés pour ce dernier :
Université de Montpellier, Master Informatique M2 (parcours GL) - Intelligence Artificielle pour le Génie Logiciel
6h en 2021 puis 9h en 2022.
Ce TP a été monté afin d’offir aux étudiants en Master Informatique (parcours Génie Logiciel) de l’Université de Montpellier une ouverture sur l’utilisation de méthodes d’intelligence artificielle pour des problèmatiques GL. Ces TP s’inspirent de nos travaux de recherche. Dans une première partie du TP il est demandé aux étudiants de créer un prédicteur du nombre de développeurs expérimentés en fonction du nombre de lignes de code. Une seconde partie de ce TP s’intéresse à la construction d’un classifieur de tickets de bogue via de l’apprentissage supervisé et un corpus de tickets fourni.
Ce TP permet aux étudiants de mettre en oeuvre des méthodes et outils acquis par ailleurs dans d’autre module sur un cadre applicatif GL. Ainsi, cela permet pédagogiquement de croiser les approches et les réflexions autour de thématiques liées à l’IA et au GL.
Les deux parties du TP sont réalisés sous forme de Notebook Jupyter sur Google Colab afin de facilité l’installation et l’utilisation des outils mais aussi pour guider au mieux les étudiants sur le workflow à mettre en œuvre.