Actualités du CATIE

| Actualités | Projets | Il y a un code pour tout !

Il y a un code pour tout !

3 Nov AM | Actualités, Projets

ParcourSup ! Vous avez sans nul doute déjà entendu ce nom, par vos enfants lycéens ou par les médias relatant les déboires de certains bacheliers en attente d’orientation ou sans établissement pour la rentrée. Le CATIE a contribué à tester son code source et à le rendre plus facilement exécutable.

Parcoursup est la plateforme nationale de préinscription en première année de l’enseignement supérieur en France. La loi « Orientation et Réussite des Etudiants » (loi ORE) et les décrets d’application du Code de l’Éducation régissent son fonctionnement et définissent des principes d’équité prenant notamment en compte la situation sociale et géographique des candidats.
Ces principes ont été traduits en algorithme puis en code informatique, qui permet de calculer quotidiennement les propositions d’affectation envoyées aux candidats. Cette traduction a été faite sous la supervision du Ministère de l’Enseignement Supérieur, de la Recherche et de l’Innovation (MESRI), en s’appuyant notamment sur l’expertise de chercheurs du LaBRI.
Suivant les principes de la Loi pour une République Numérique, le code source de Parcoursup a été publié par le MESRI ; il est disponible à l’adresse https://framagit.org/parcoursup/algorithmes-de-parcoursup

Le code informatique est critique car de lui dépend l’affectation des lycées à leur établissement d’étude supérieures et  il faut en particulier éviter de devoir revenir sur des propositions déjà faites à des candidats, ceci afin de maintenir la confiance du public dans Parcoursup.
Afin de se prémunir contre de telles erreurs, le code informatique de Parcoursup implémente des techniques de vérification à l’exécution (runtime model-checking): le résultat de chaque calcul effectué est systématiquement vérifié, et doit satisfaire toutes les propriétés attendues avant de donner lieu à l’envoi des propositions aux candidats. 

Deux projets visent à renforcer encore ce haut niveau de sécurité du code de Parcoursup. Le premier projet, mené par le LaBRi et le LRI, vise à développer des preuves formelles des algorithmes et de leurs implémentations. Le second projet concerne le test logiciel et a été confié au CATIE et plus particulièrement, l’équipe Algorithmes et Données experte en qualité logicielle.

Cette dernière a eu pour mission de vérifier l’implémentation des algorithmes en créant toute une batterie de tests logiciels.
Les collaborateurs du CATIE ont ainsi développé des codes tests, i.e. des programmes informatiques de petite taille exécutant les lignes de code du programme principal et vérifiant que le résultat obtenu est bien celui attendu. Ils ont aussi intégré ces tests dans un environnement d
’intégration continue qui permet de les lancer systématiquement à chaque modification du programme, afin d’éviter au maximum qu’une petite modification puisse introduire de graves erreurs.
Finalement, l
e CATIE a également participé à la création d’un environnement de test qui facilite l’exécution du code de Parcoursup par un particulier sur sa machine personnelle.

Cette collaboration met une nouvelle fois en lumière le lien de confiance qui existe entre le CATIE et les laboratoires de recherche en général, et plus particulièrement le LaBRI avec qui nous collaborons sur de nombreux projets.

 

L’équipe du CATIE a su rentrer très rapidement sur le projet complexe que représente ParcourSup. Forte d’une grande expertise et autonomie, l’équipe du CATIE a rapidement mis en oeuvre des solutions pertinentes et conformes à la mission.

Jean-Rémy FALLERI

Researcher, LaBRI

Données techniques :

  • Tests logiciels
  • Accompagnement sur l’intégration continue
  • Couverture de code

Pour en savoir plus, contactez-nous !