IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Le DOGE d'Elon Musk veut réécrire le code COBOL qui gère la sécurité sociale américaine en quelque mois. Cette base de code compte plus de 60 millions de lignes de COBOL
Ce qui met sa stabilité en péril

Le , par Stéphane le calme

52PARTAGES

17  0 
Le « Department of Government Efficiency » (DOGE) commence à constituer une équipe chargée de migrer les systèmes informatiques de l'administration de la sécurité sociale (SSA) en abandonnant l'un de ses plus anciens langages de programmation en l'espace de quelques mois, ce qui pourrait mettre en péril l'intégrité du système et les prestations dont dépendent des dizaines de millions d'Américains.

Les systèmes de la SSA reposent sur une infrastructure complexe, avec plus de 60 millions de lignes de code COBOL. Ce langage, créé dans les années 1950, a été largement adopté pour les applications de traitement de transactions sur les mainframes. Le « logiciel central » de la SSA, responsable de l'émission des numéros de sécurité sociale et de la gestion des paiements, est principalement écrit en COBOL. Une tentative de modernisation en 2017 avait prévu cinq ans pour remplacer ces systèmes, mais la pandémie de COVID-19 en 2020 a interrompu ces plans.


Le projet est organisé par le lieutenant d'Elon Musk, Steve Davis, et vise à faire migrer tous les systèmes SSA de COBOL, l'un des premiers langages de programmation courants orientés vers les entreprises, vers un remplaçant plus moderne comme Java, dans un délai serré de quelques mois.

En tout état de cause, une migration de cette taille et de cette ampleur serait une entreprise gigantesque, expliquent les experts, mais le délai accéléré risque d'entraver les paiements aux plus de 65 millions de personnes aux États-Unis qui perçoivent actuellement des prestations de sécurité sociale.

Risques associés à une migration rapide

Les experts expriment de vives inquiétudes quant à la rapidité de la migration envisagée. Une transition précipitée pourrait entraîner des défaillances systémiques, des paiements erronés, des sous-paiements, des paiements excessifs ou même des omissions de paiements pour les bénéficiaires. La complexité des systèmes existants nécessite des tests approfondis pour garantir l'exactitude des résultats après la migration. Certains techniciens de la SSA avertissent que des erreurs invisibles pourraient survenir, affectant potentiellement des millions d'Américains.

« Bien entendu, l'un des principaux risques n'est pas le sous-paiement ou le surpaiement en soi, mais le fait de ne pas payer quelqu'un du tout et de ne pas le savoir. Les erreurs et omissions invisibles », explique un technologue de la SSA.

La SSA fait l'objet d'un examen de plus en plus minutieux de la part de l'administration du président Donald Trump. En février, Musk s'en est pris à la SSA, affirmant à tort que l'agence était truffée de fraudes. Plus précisément, Musk a mis en avant des données qu'il aurait extraites du système et qui montraient que des personnes âgées de 150 ans aux États-Unis recevaient des allocations, ce qui n'est pas le cas en réalité. Au cours des dernières semaines, à la suite de coupes sombres opérées par le ministère de l'économie et des finances, la SSA a connu de fréquentes pannes de son site web et de longs délais d'attente au téléphone, comme l'a rapporté cette semaine le Washington Post.

Ce projet de migration n'est pas la première fois que la SSA tente de s'éloigner de COBOL : en 2017, la SSA a annoncé un plan visant à recevoir des centaines de millions de dollars de financement pour remplacer ses systèmes centraux. L'agence prévoyait qu'il faudrait environ cinq ans pour moderniser ces systèmes. En raison de la pandémie de coronavirus en 2020, l'agence s'est détournée de ce travail pour se concentrer sur des projets plus orientés vers le public.

Comme beaucoup d'anciens systèmes informatiques gouvernementaux, les systèmes SSA contiennent du code écrit en COBOL, un langage de programmation créé en partie dans les années 1950 par Grace Hopper, pionnière de l'informatique. Le ministère de la défense a essentiellement fait pression sur l'industrie privée pour qu'elle utilise le COBOL peu après sa création, ce qui a favorisé son adoption à grande échelle et en a fait l'un des langages les plus utilisés pour les ordinateurs centraux, c'est-à-dire les systèmes informatiques qui traitent et stockent rapidement de grandes quantités de données, dans les années soixante-dix. (Au moins un site web lié au ministère de la Défense faisant l'éloge des réalisations de Hopper n'est plus actif, probablement à la suite de la purge des reconnaissances militaires par le ministère de l'Intérieur de l'administration Trump).


En 2016, l'infrastructure de la SSA contenait plus de 60 millions de lignes de code écrites en COBOL

En 2016, l'infrastructure de la SSA contenait plus de 60 millions de lignes de code écrites en COBOL, et des millions d'autres dans d'autres langages de codage hérités, a constaté le bureau de l'inspecteur général de l'agence. En fait, les principaux systèmes programmatiques et l'architecture de la SSA n'ont pas été « substantiellement » mis à jour depuis les années 1980, lorsque l'agence a développé son propre système de base de données appelé MADAM (Master Data Access Method), qui était écrit en COBOL et en Assembleur, selon le plan de modernisation de la SSA de 2017.

La « logique » de base de la SSA est également écrite en grande partie en COBOL. Il s'agit du code qui émet les numéros de sécurité sociale, gère les paiements et calcule même le montant total que les bénéficiaires devraient recevoir pour différents services, explique un ancien technologue de haut niveau de la SSA qui a travaillé au bureau du directeur général de l'information. Même des changements mineurs peuvent entraîner des défaillances en cascade dans les programmes.

« Si l'on ne craint pas qu'un grand nombre de personnes ne reçoivent pas de prestations ou qu'elles reçoivent des prestations erronées, ou qu'elles reçoivent des droits erronés, ou qu'elles doivent attendre longtemps, alors il faut aller de l'avant », déclare Dan Hon, directeur de Very Little Gravitas, un cabinet de conseil en stratégie technologique qui aide les gouvernements à moderniser leurs services, à propos de la réalisation d'une telle migration dans un court laps de temps.

On ne sait pas exactement quand la migration du code commencera. Un document récent circulant parmi le personnel de la SSA et exposant les priorités de l'agence jusqu'au mois de mai ne le mentionne pas, citant à la place d'autres priorités telles que la résiliation de « contrats non essentiels » et l'adoption de l'intelligence artificielle pour « augmenter » la rédaction administrative et technique.

Au début du mois, au moins 10 agents de la DOGE travaillaient au sein de la SSA, dont un certain nombre d'ingénieurs jeunes et inexpérimentés tels que Luke Farritor et Ethan Shaotran. À ce moment-là, des sources ont indiqué que les agents de la DOGE se concentreraient sur la manière dont les gens s'identifient pour accéder à leurs prestations en ligne.


Le « Are You Alive Project »

Des sources au sein de la SSA s'attendent à ce que le projet commence sérieusement une fois que la DOGE aura identifié et marqué les bénéficiaires restants comme décédés et connecté les bases de données disparates des agences. Dans une déclaration sous serment de l'administrateur intérimaire de la SSA, Leland Dudek, déposée jeudi au tribunal, il est dit qu'au moins deux agents de la DOGE travaillent actuellement sur un projet officiellement appelé « Are You Alive Project », qui vise ce que ces agents estiment être des paiements indus et des fraudes au sein du système de l'agence, en appelant des bénéficiaires individuels. L'agence se bat actuellement devant les tribunaux pour obtenir un accès illimité aux systèmes de la SSA afin d'achever ce travail. (Encore une fois, les personnes âgées de 150 ans ne perçoivent pas de prestations de sécurité sociale. Cet âge spécifique est probablement une bizarrerie de COBOL. Il ne comprend pas de type de date, de sorte que les dates sont souvent codées en fonction d'un point de référence spécifique - le 20 mai 1875, date d'une conférence internationale sur l'établissement de normes tenue à Paris, connue sous le nom de Convention du Mètre).

Utilisation de l'intelligence artificielle générative

Pour faciliter cette transition, la DOGE envisage d'utiliser l'intelligence artificielle générative afin...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de der§en
Membre expérimenté https://www.developpez.com
Le 30/03/2025 à 0:27
Sans avoir recours à l’IA, on peux parfaitement réécrire du code cobol vers d’autres langages !

Dans les années 90, à la bourse de paris, on avait développé un convertisseur qui prenait le code cobol issus des mainframes IBM, pour le convertir en langage C pour les VAX/VMS, cela a permis de migrer des millions de lignes de code !
5  0 
Avatar de Fagus
Membre expert https://www.developpez.com
Le 30/03/2025 à 21:32
Mais est-ce que c'est si intéressant que ça de convertir les bases de code de cobol, alors que ça marche et c'est performant, sachant que la conversion a un coût et des risques de régressions (il y a eu plusieurs histoires ici de migration ratée vers java avec des pertes de performance).
Alors qu'il existe des compilateurs comme gnuCOBOL qui permettent d'exécuter le code sur PC ?

Au pire, est ce si problématique de maintenir le code ? En regardant sur wikipedia, en cobol 2014 le langage est modernisé avec des types modernes et l'orientation objet. (il y a même un cobol 2023).

Les dév ça se forme, et c'est sans doute préférable de manipuler des grandes quantités de calculs en cobol que dans la plupart des langages non ? surtout si on a besoin d'avoir des arrondis obéissant à des règles comptables plutôt que sur une accumulation d'imprécision du calcul flottant binaire.

Quoique, en python, il y a le module decimal pour ça, et je viens de voir qu'il peut être utilisé en c et c++.
4  0 
Avatar de Prox_13
Membre éprouvé https://www.developpez.com
Le 31/03/2025 à 13:20
Citation Envoyé par der§en Voir le message
Sans avoir recours à l’IA, on peux parfaitement réécrire du code cobol vers d’autres langages !

Dans les années 90, à la bourse de paris, on avait développé un convertisseur qui prenait le code cobol issus des mainframes IBM, pour le convertir en langage C pour les VAX/VMS, cela a permis de migrer des millions de lignes de code !
Malheureusement, travaillant dans une entreprise qui peine a migrer son ERP de COBOL (VMS) vers des langages modernes, c'est beaucoup d'heures-homme qui doivent y passer et comme l'explique l'ami Calvaire ci-dessus, c'est extrêmement difficile de trouver des développeurs COBOL bons et formés sur les nouvelles technos sans débourser une fortune. (Si ça peut donner des idées à certains, d'ailleurs.)
L'accès a un environnement de dev COBOL reste, malgré tout, une chose assez rare. Et être capable de transcoder des monuments d'avant guerre en COBOL vers un langage actuel en préservant les règles de gestion et la performance du code, c'est une tâche aussi fastidieuse que complexe, qui requiert autant d'expérience que de rigueur.

Il faut aussi prendre en compte le fait que les systèmes vieillots ont l'effet "big ball of mud", avec des générations de développeurs qui se sont succédés avec chacun leurs façons de programmer, malgré un format similaire sous jacent.
Au final, ayant essayé de développer un convertisseur COBOL, c'est compliqué de trouver un algorithme suffisamment générique pour plaire a tous.
2  0 
Avatar de calvaire
Expert éminent https://www.developpez.com
Le 31/03/2025 à 8:18
Citation Envoyé par Fagus Voir le message
Mais est-ce que c'est si intéressant que ça de convertir les bases de code de cobol, alors que ça marche et c'est performant, sachant que la conversion a un coût et des risques de régressions (il y a eu plusieurs histoires ici de migration ratée vers java avec des pertes de performance).
Alors qu'il existe des compilateurs comme gnuCOBOL qui permettent d'exécuter le code sur PC ?

Au pire, est ce si problématique de maintenir le code ? En regardant sur wikipedia, en cobol 2014 le langage est modernisé avec des types modernes et l'orientation objet. (il y a même un cobol 2023).

Les dév ça se forme, et c'est sans doute préférable de manipuler des grandes quantités de calculs en cobol que dans la plupart des langages non ? surtout si on a besoin d'avoir des arrondis obéissant à des règles comptables plutôt que sur une accumulation d'imprécision du calcul flottant binaire.

Quoique, en python, il y a le module decimal pour ça, et je viens de voir qu'il peut être utilisé en c et c++.
c'est tous le probleme justement.
Il faut trouver des dev pour faire du cobol, il y'en a peu et coutent cher.

Pour les dev c'est loin d’être une bonne affaire aussi, ok avec cobol ils peuvent trouver un taff mieux pays, mais cobol c'est rare et donc ils seront prisonnier de leurs boite. Un dev cobol va difficilement pouvoir retrouver un taff ailleurs, surtout en cas de layoff il sera dans la merde.
Pour un dev il vaut mieux se former dans des technos d'avenir, sa lui donnera un taff mieux payé et être attractif sur le marché du travail.

Ou alors négocier avec sa boite d’être dev cobol à mi temps ET aussi de faire autre chose de plus vendeur sur le cv, mais pour la boite ca coute encore plus cher ce deal.
Au final la migration apparait comme une bonne solution pour l'avenir de la boite. Car un salarié sa reste pas longtemps dans une boite, 2-5ans. Trouver des devs cobols tous les 2-3 ans, c'est chaud.

Perso j'ai toujours travaillé sur des technos d'avenir, j'ai toujours choisis mes postes en fonction de ca (en plus du salaire). Ca m'a toujours garantie des portes ouvertes auprès des entreprises et des salaires attractifs.
J'ai toujours poussé en interne a utiliser et travailler sur les technos les plus vendeurs sur le cv. Il faut toujours préparer son prochain job, même si il arrivera jamais ou dans 10ans, ou... dans 1 semaine par surprise car la boite a décidé de te virer.

en 2025, Cobol reste une bonne compétence pour le salaire si on habite dans un gros bassin d'emploi comme paris, mais ne surtout pas s'enfermer que la dedans et développer d'autres expertises.
1  2