Bonjour Ă toutes et tous,
Je voulais partager avec la communautĂ© un outil que jâai construit sur Grist au sein du MinistĂšre de la Transition Ecologique : Chorist, un outil de programmation et de suivi budgĂ©taire pour lâensemble des produits numĂ©riques de ma direction gĂ©nĂ©rale.
- 500+ utilisateurs / 8 rĂŽles
- 30+ vues / 30+ tables
- 2 ans dâexistence
Le constat de dĂ©part : il nâexistait pas de suivi consolidĂ© des dĂ©penses numĂ©riques, chaque produit, chaque direction gĂ©rait ça dans son coin, souvent sur tableur Excel stockĂ©s en local et transmis par mail. Grist mâa permis de construire un outil qui couvre tout le cycle : du recueil des besoins jusquâau paiement des factures, en passant par la programmation budgĂ©taire et le contrĂŽle.
Plus rĂ©cemment, jâai fait de Chorist un outil qui donne aux dĂ©cideurs de mon administration les clĂ©s pour savoir combien dâargent donner sur chacun de nos projets numĂ©riques, en objectivant la dĂ©cision.
Cette nouvelle fonctionnalitĂ© sâarticule autour de trois briques qui suivent le cycle de dĂ©cision annuel, chacune portĂ©e par une ou plusieurs pages Grist :
1. Auto-évaluation
Un questionnaire dâauto-Ă©valuation, rempli chaque annĂ©e par le porteur du produit ou du projet SI lui-mĂȘme (page « Auto-Ă©val & Besoins »). On y reprend la logique dâĂ©valuation par impact quâon utilise habituellement pour les seules Startups dâĂtat de beta.gouv â cycle en Saisons, Phases (Investigation / Construction / AccĂ©lĂ©ration / PĂ©rennisation) â et on lâĂ©tend Ă lâensemble du portefeuille numĂ©rique, y compris aux projets qui ne passent pas par ce cadre dâincubation.
2. Remontée de besoin
Ă lâissue de lâauto-Ă©valuation, le porteur de projet fait remonter son besoin budgĂ©taire (autorisations dâengagement / crĂ©dits de paiement) pour lâannualitĂ© de son choix. Une seule fois consolidĂ© dans une table Grist, ce nâest plus un mail ou un tableur diffĂ©rent par produit, mais un registre unique interrogeable par produit, financeur, SI fĂ©dĂ©rateur ou domaine (pages « Visualisation » du module Registre des besoins, adossĂ©es Ă des tables rĂ©sumĂ© calculĂ©es par formule).
3. Programmation des dépenses
Câest le cĆur de nouvelle fonctionnalitĂ© : le module de programmation budgĂ©taire, Ă destination des sous-directions, des comitĂ©s de domaine et de la direction. Il consolide auto-Ă©valuations et besoins remontĂ©s pour que les dĂ©cideurs arbitrent, projet par projet, avec les mĂȘmes chiffres â plutĂŽt quâĂ lâaveugle ou au rapport de force. Lâobjectif : que lâarbitrage porte sur lâimpact du projet, pas sur qui a le mieux plaidĂ© sa cause.
Et en dehors de ces briques ? Ce que jâai mis en place cĂŽtĂ© technique
Quelques éléments qui pourraient intéresser la communauté :
-
Un systĂšme de rĂŽles entiĂšrement portĂ© par les Permissions avancĂ©es, sans toucher aux groupes natifs Grist (Owner/Editor/Viewer). Une propriĂ©tĂ© dâutilisateur (
user.Equipe) relieuser.EmailĂ une tableUtilisateurs, dont une colonneRĂŽle(choix multiple) porte 8 rĂŽles mĂ©tier diffĂ©rents â du freelance Ă lâattributaire de marchĂ©. LâaccĂšs aux donnĂ©es est ensuite scopĂ© par produit via des colonnesReferenceListcalculĂ©es (ex.Produits_Intrapreneur_Chef_de_projet), pour que chacun ne voie que son pĂ©rimĂštre. -
Un panneau « qualité des données » générique, injecté en widget secondaire sur chaque table opérationnelle, qui liste en langage clair les champs manquants ou incohérents et qui doit les corriger. Porté par une seule formule Python par table qui retourne un JSON (
{"resp": ..., "champ": ..., "action": ..., "niveau": "manquant"/"incohérent"}), consommé par le widget. -
Des formulaires Grist publiĂ©s pour la collecte de donnĂ©es cĂŽtĂ© utilisateurs (demandes de MADI, demandes dâaccĂšs Ă lâoutil).
-
Une synchronisation via n8n avec le systÚme budgétaire interministériel, chorus, pour faire remonter/redescendre les actes financiers sans ressaisie manuelle.
-
Des colonnes Ă formule dâinitialisation (trigger formulas) utilisĂ©es Ă la fois par nĂ©cessitĂ© fonctionnelle (traçabilitĂ© : qui/quand a créé ou modifiĂ© une ligne) et pour geler des calculs coĂ»teux plutĂŽt que de les laisser se recalculer Ă chaque interaction.
Et le changement, pas seulement la technique
Ce qui a comptĂ© au moins autant que lâoutil : faire accepter Ă des chefs de produit, des attributaires de marchĂ© et des Ă©quipes finances de travailler dans le mĂȘme outil, avec la mĂȘme donnĂ©e, en confiance. Câest un vrai chantier de conduite du changement â convaincre, former, itĂ©rer avec les utilisateurs, accepter que lâadoption prenne du temps â pas seulement un chantier technique.
Le repo
On a fait le choix de publier le projet sous licence MIT, pour que ça puisse vraiment devenir un commun numĂ©rique â repris et adaptĂ© par dâautres administrations qui ont les mĂȘmes problĂšmes de pilotage budgĂ©taire du numĂ©rique.
Le repo est ici : DGALN / Mission numérique / Pilotage des dépenses numériques · GitLab
Je quitte le ministĂšre prochainement, mais je serais ravi que dâautres sâen emparent â que ce soit pour des retours, des questions sur lâimplĂ©mentation, ou pour le reprendre tel quel ou en sâen inspirant. NâhĂ©sitez pas Ă commenter ici ou Ă ouvrir une issue sur le repo.
Merci à la communauté Grist pour les échanges qui ont nourri ce projet !


