sylvia rosti

Modernisation Sylvia – une histoire de recettes

Découvrez le grand art de la modernisation invisible du système de gestion administrative des études, des étudiantes et étudiants de l’UNIL (Sylvia)

Et si Sylvia était un livre de cuisine

Vos parents vous ont légué leur cahier de recettes de cuisine, qu’ils tenaient eux-mêmes de leurs parents. Chaque recette, gentiment anarchique, y est décrite selon l’inspiration et les connaissances de leur auteur·e. Les ingrédients sont parfois listés, parfois il faut les déduire en lisant toutes les instructions. Les durées de cuisson parcourent tout le spectre de précision allant de « 2,5 minutes » à « pas trop longtemps ». Certaines manipulations ne sont même pas décrites, à vous de savoir comment monder les amandes ou de connaitre la différence entre faire revenir et rissoler.

Pourtant, vous savez que c’est sur la base de ce livre que tous les plats que vous adorez ont été préparés. Les recettes ont fait leurs preuves et vous souhaitez continuer à vous en servir. Mais comment vous y retrouver dans ce fouillis ? Et comment prévenir vos enfants, qui souhaitent également cuisiner, que toutes les fois où il est fait mention de sauce béchamel, la nouvelle tendance familiale privilégie l’huile à la place du beurre pour la réaliser ?

Röstis de Grand-Papa

Peler suffisamment de patates pour 4 personnes, les râper et les faire revenir dans du gras avec un peu de sel jusqu’à ce qu’elles deviennent dorées en touillant de temps en temps. Faire une galette et servir chaud.

Une recette « pêle-mêle », à l’ancienne

Du vieux cahier au recueil professionnel

Ces défis sont exactement ceux auxquels notre équipe de développeurs a décidé de s’attaquer, dans le cadre du programme de modernisation de Sylvia, notre intranet administratif.

Le code derrière chaque page de l’intranet était à l’image des recettes familiales : on y trouvait pêle-mêle les ingrédients (données), les instructions de préparation (logique de traitement) et même la façon de dresser les assiettes (présentation à l’écran). Tout ceci fonctionne, mais quel casse-tête pour y corriger les éventuels bugs ou pour introduire des nouveautés !

L’équipe a donc décidé de transformer le vieux cahier de recettes en un livre de cuisine professionnel, bien structuré selon un standard en informatique appelé « Model-View-Presenter (MVP) » :

  • Les « Model » (modèles) : comme une liste organisée d’ingrédients et leurs propriétés
  • Les « View » (vues) : la présentation finale du plat dans l’assiette
  • Les « Presenter » : les instructions à exécuter pour transformer les ingrédients en plat présentable.

Cette réorganisation permet de standardiser les recettes. Si cette fameuse sauce béchamel change, on ne modifie qu’une seule « fiche ingrédient » et toutes les recettes qui l’utilisent sont automatiquement mises à jour.

Cette réorganisation du code est également appelée refactorisation. Elle constitue l’un des trois axes stratégiques de la modernisation de Sylvia, les deux autres étant l’externalisation (trier, sortir de Sylvia ce qui n’a pas trait à la gestion académique) et la satellisation (revoir la communication entre Sylvia et les autres applications qui ont besoin de ses données). Plus de détails sur les articles de ce blog du 3 mars 2023 et du 1er octobre 2024.

Défis et bénéfices

Évidemment, il n’était pas question de cesser de cuisiner (mettre Sylvia hors service) le temps de restructurer le livre de recettes !

L’équipe a ainsi créé un système ingénieux de « traducteurs culinaires », qui permettent de lire les anciennes recettes avec la nouvelle méthode, le temps de restructurer ces dernières petit à petit. Tout cela sans que personne ne remarque la différence dans son assiette.

Au final, après presque 18 mois de travail patient, les résultats sont alléchants :

  • Le « livre de cuisine numérique » est désormais parfaitement organisé
  • De nouvelles recettes (fonctionnalités) peuvent être ajoutées facilement
  • Les anciennes recettes restent pertinentes en attendant d’être réécrites
  • Les nouveaux·elles cuisiniers·ères (développeuses et développeurs) trouvent rapidement leurs repères
  • Les ingrédients (composants logiciels) peuvent être réutilisés dans différentes recettes

Les convives (utilisatrices et utilisateurs) n’ont rien remarqué dans leur expérience quotidienne.

Un grand bravo aux chef·fes numériques de l’équipe Legacy qui ont su transformer leur cuisine informatique sans laisser personne sur sa faim !

Après cet immense travail qu’a représenté la révision de la logique des recettes, il s’agit désormais de finaliser : à chaque fois que l’équipe cuisinera un repas, la recette correspondante devra être réécrite selon la nouvelle norme, afin de pouvoir se passer des « traducteurs ». Avec les 46 recettes comprises dans notre recueil, cela prendra du temps ; mais comme pour tout ce qu’on laisse longtemps mijoter, le résultat n’en sera que plus goûtu !  

Röstis

Nombre de personnes : 4
Temps : 15 minutes préparation + 30 minutes cuisson
Ustensiles : éplucheur, râpe à röstis, poêle, spatule

IngrédientsQuantités
Pommes de terre800 g
Beurre30 g
Sel 1 g

Préparation

ActionIngrédientsUstensileManière
PelerPommes de terreÉplucher
RâperPommes de terreRâpe à röstis
FondreBeurrePoêleFeu moyenne intensité
AjouterPommes de terrePoêle
MélangerPommes de terre, beurreSpatuleToutes les 3 minutes
ArrangerPommes de terre, beurreSpatuleEn forme de galette

Dressage : La galette est dorée et se sert chaude.

Recette restructurée. Pour une analogie plus exacte, imaginez également un glossaire qui donne une définition de chacune des actions de la préparation.

Bonus : authentique recette d'un excellent gâteau au chocolat
Bonus : authentique recette d’un excellent gâteau au chocolat

Des questions, commentaires ou souhaits de précisions techniques ? l’équipe du programme vous lira avec plaisir à l’adresse modernisation.sylvia@unil.ch !

Pour les personnes qui auraient l’appétit pour des aspect plus techniques : revenez consulter cet encart de temps à autre, il sera mis à jour avec un lien vers un article détaillé sur le blog Medium.

Rédaction : RSI académique avec remerciements à L. Décaillet, E. Kestenholz et J. Rimaz pour les explications, et à Claude.ai pour la structure et une ou deux formulations.