L’utilisation d’un outil d’analyse statique de code permet-il à des novices d’améliorer leur apprentissage de la programmation ?

  • Vincent Bertrand

Student thesis: Master typesMaster en sciences informatiques

Résumé

Ce mémoire évalue l’utilité qu’un outil d’analyse statique de code peut apporter à des novices en programmation dans le cadre de leur apprentissage de cette matière. Pour y parvenir, un outil est sélectionné, SonarQube, et deux expériences sont construites. Le public cible de celles-ci sont des étudiants en première année de bachelier en Sciences Informatiques et en Ingénieur de Gestion à finalité Management de l’Information à l’Université de Namur. Dans un premier temps, l’objectif est de déterminer si l’outil apporte une plus-value aux étudiants dans le cadre de leur apprentissage. Pour cela, une sensibilisation à la qualité logicielle leur est proposée au travers d’un premier contact. Durant cette expérience, plusieurs types de données sont récoltés afin de s’assurer de la complétude de l’analyse : enregistrement vidéo de l’expérience, questionnaire et résultats d’analyse du code des étudiants réalisé par SonarQube. Dans un second temps, l’outil est proposé à l’utilisation pendant une période de six semaines afin de déterminer si SonarQube peut être utilisé en autonomie par les étudiants. Pour leur offrir un maximum d’autonomie, un environnement personnalisé permettant d’abstraire la partie technique est mis en place. Les deux expériences ont rempli leurs objectifs. La première a produit des résultats encourageants quand, pour la deuxième, ils ont été un peu décevants.
Mots Clés
Enseignement de la programmation, apprentissage de la programmation, analyse statique de code, sensibilisation à la qualité logicielle, SonarQube
la date de réponse31 août 2017
langue originaleFrançais
L'institution diplômante
  • Universite de Namur
SuperviseurJean-Marie Jacquet (Président), Benoît Frénay (Promoteur) & Julie Henry (Copromoteur)

mots-clés

  • Enseignement de la programmation
  • SonarQube
  • apprentissage de la programmation
  • sensibilisation à la qualité logicielle
  • analyse statique de code

Contient cette citation

'