Dans le cadre de la licence informatique à Paris 8, un cours qui utilise des technologies libres est proposé. Le but du cours nommé "Compréhension de programmes" est d'initier les étudiants à la lecture de code source écrit par d'autres.
L'enseignante s'est rendu compte que les logiciels libres offrent beaucoup de possibilités dans le cadre de ce cours. Cette présentation décrit la première année de cette expérience.
Réalisation de projets libres dans le cadre d'un cours magistral à l'université Paris 8
1. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Réalisation de projets libres dans le cadre d’un
cours magistral à l’université Paris 8
Karine Mordal Ivaylo Ganchev
Laboratoire LIASD, Université Paris 8
Janvier 2012
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 1
2. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Compréhension de Programmes
Le cours est dispensé dans le cadre de la licence informatique de Paris 8.
Les pré-requis :
Etudiants en troisième année de licence
Un bon niveau en programmation
Savoir gérer un projet de manière autonome
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 2
3. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Les apprentissages
Les objectifs du cours :
Se repérer et appréhender efficacement un code source
Savoir distinguer l’essentiel au milieu de milliers de lignes de code
Suivre une information/donnée au fil des lignes
Comprendre du code qui n’est pas le sien
Appréhender l’importance d’un code bien structuré
Les éléments évalués :
La compréhension du code du projet
L’assiduité
La qualité des documents rendus
L’autonomie
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 3
4. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
L’organisation du cours
Le rythme des cours
Une séance de trois heures chaque mardi
Le cours se déroule sur un semestre
Durée totale des cours de 39 heures
Le déroulement des cours
Cours en salle machine
Répartition des étudiants en groupes
Utilisation d’une plate-forme collaborative pour la communication
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 4
5. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Les motivations du projet
Associer le cours de compréhension de code avec le monde du
libre pour :
Sortir de la théorie
Faire travailler des étudiants sur des cas réels
Faire découvrir concrètement le monde du libre aux étudiants
Prendre une première mesure de ce que représente un projet
conséquent
Forcer les étudiants à mettre en oeuvre l’ensemble de leurs
acquis/compétences autour d’un même projet
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 5
6. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Les attentes du projet
Il paraissait essentiel de se fixer des objectifs précis :
Ne pas adapter le cours à une expérience mais délimiter les contours
de l’expérience pour ce cours.
Faire des étudiants les bénéficiaires de l’expérience.
Quantifier les apports de ce type d’expérience.
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 6
7. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Première étape : les groupes
Repartir la quarantaine d’étudiants inscrits :
Constitution d’équipes de 4 personnes
Libre choix quant à la constitution pour favoriser la cohésion des
groupes
Validation du groupe à postériori pour éviter des disparités de niveau
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 7
8. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Seconde étape : le choix du projet
Les étudiants devaient choisir un logiciel open-source :
Dans une liste préalablement établie
De leur propre initiative
Les critères de pré-validation du projet :
Projet encore actif
Langage de programmation connu des étudiants du groupe
Intérêt des étudiants pour le logiciel
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 8
9. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Troisième étape : Prise de contact
Une fois le projet choisi, prise de contact avec l’équipe de
développement du projet :
Identification du contact potentiel
Envoi d’un mail de présentation en anglais
Processus de validation définitive du projet :
Après une réponse positive au mail, passage à l’étape suivante
En cas de refus ou de non réponse, retour à l’étape précédente
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 9
10. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Quatrième étape : Le travail à faire
Choix d’une tâche à accomplir au sein du projet, avec l’aide du
référent :
Correction d’un bug
Développement d’une fonctionnalité
Documentation du code
Mise à niveau du logiciel
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 10
11. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Cinquième étape : Configuration
Installer un environnement de travail adéquat :
Le système d’exploitation
L’environnement de programmation
Les outils collaboratifs
Compilation du code source
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 11
12. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Sixième étape : Appréhender le code source
Comprendre le code source de l’application :
Comprendre l’architecture générale du code
Se repérer dans les fichiers
Cibler la partie du code adéquate au travail
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 12
13. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Septième étape : le travail
Pendant le cours du mardi :
Faire un point sur les travaux en cours
Préparer le travail de la semaine suivante
Identifier les difficultés et aider les étudiants à avancer
Vérifier que tous les membres du groupe sont actifs
Ré-orienter ou re-dynamiser les groupes
Durant la semaine :
Réunion de travail des groupes
Atteindre les objectifs fixés en cours
Communiquer avec le référent
Rechercher les informations adéquates
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 13
14. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
La fin du cours
Les travaux à rendre :
Un rapport final détaillé du déroulement du projet
Une présentation orale du travail
Un questionnaire sur les acquis et le retour d’expérience du cours
L’évaluation
Qualité des comptes rendus
Sérieux dans le travail
Retours positifs du référent
Compréhension du code étudié :
Architecture globale
Compréhension du fichier qui a fait l’objet du travail
Processus de soumission/validation
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 14
15. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Un premier bilan
Points positifs, les étudiants ont pu :
Appréhender du code conséquent
Confronter leur niveau avec la réalité d’un projet
Découvrir le monde du développement libre
Rester motivés jusqu’à la fin du projet
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 15
16. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Un premier bilan
Points négatifs par manque de maturité de l’expérience :
Les projets n’ont pas tous aboutis
Certains projets étaient trop ambitieux
Les premières étapes de travail ont été trop longues
Le nombre de groupes a pu être un handicap
Le manque de temps
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 16
17. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Le questionnaire
Tendance globale des réponses des étudiants :
Découverte concrète du monde du libre
Progrès en matière de compréhension de code
La motivation pour renouveler une expérience similaire dépend de la
réussite du projet
Réel intérêt de sortir du cocon de la fac
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 17
18. Le cours de Compréhension de Programmes
Description du projet
Le déroulement du projet
Les résultats obtenus
Conclusion
Conclusion
Un premier essai réussi :
L’expérience aura une suite
Les étudiants ont fait preuve de motivation et de volonté
La cession de présentation indispensable pour conclure le cours
A transformer :
Les projets devront être mieux ciblés
Les travaux devront être moins ambitieux pour ce cours
Le référent est une pièce maitresse de la réussite
Karine Mordal, Ivaylo Ganchev Laboratoire LIASD, Université Paris 8 18