Pourquoi IBM veut absolument traduire un langage informatique des années 1950 ?

Ibm Innovation Research Lab


Son outil Code Assistant veut devenir le meilleur ami des développeurs. Mais il doit aussi remplacer ceux qui ne veulent plus traduire le COBOL, un langage informatique vieux de 70 ans utilisé par les mainframes dans le milieu des affaires, de la finance et de l’administration.

L’année 2023 est aussi l’année de l’intelligence artificielle chez IBM. La multinationale centenaire a traversé les époques, et pour rivaliser avec OpenAI, Google et AWS, elle a lancé la plateforme watsonx, qui utilise son propre modèle de fondation : Granite. Avec ce dernier, un nouvel outil baptisé Code Assistant fait son arrivée cette fin d’année. Il s’adresse aux développeurs, pour générer des lignes à leurs places, mais aussi interpréter, améliorer, corriger et repérer d’éventuelles vulnérabilités. S’il annonce faire mieux que Copilot (Github) ou que CodeWhisperer (AWS), sa capacité clé n’est peut-être pas celle qui sera la plus populaire.

© IBM

Au coeur des systèmes transactionnels

En parallèle à l’écriture de code, son interprétation et sa correction, l’outil Code Assistant veut aussi traduire. Et l’intérêt ne sera pas que de passer du Java au Python. IBM s’attaque à son ombre et propose de traduire le COBOL. Ce langage informatique, inventé en 1950, l’entreprise en a fait le support logiciel de ses mainframes, sur le système d’exploitation z/OS. Banques, opérateurs de paiement, géants de la grande distribution, agences spatiales ou encore gouvernements les utilisaient jusqu’à récemment. Depuis les années 2010, ils sont pourtant nombreux à les débrancher, pour des machines plus modernes. Et les logiciels délaissent alors le COBOL.

Code Assistant se base sur un modèle maison, à 20 milliards de paramètres, pour être compétent peu importe la demande. Mais IBM reconnaît bien que lorsque l’on s’attarde sur le COBOL, l’automatisation par une IA n’est pas aussi fiable qu’un être humain. Mais l’opportunité est immense, alors que ses clients dans le besoin peinent à trouver des développeurs compétents, bien que ces superordinateurs soient au coeur de la plupart des systèmes transactionnels.

« Les mainframes ne sont pas connus du grand-public, mais tournent en arrière-plan et traitent pratiquement chaque transaction de carte de crédit effectuée dans le monde. On ne le sait pas, mais c’est le cas. Parce que chaque banque dépend de la qualité de nos produits pour faire en sorte que, même quand c’est Black Friday, les systèmes ne plantent jamais et ne sont jamais attaqués par des virus. C’est une plateforme qui a été inventé il y a très longtemps, et qui a toujours eu un enjeu critique », expliquait à 01net Robert Haas, chercheur et responsable d’un département technique du Research Lab IBM à Zurich.

En voie de perdition, le COBOL est de moins en moins maîtrisé par les développeurs, qui ont grandi avec le Java et le C++. Ironie du sort, la brique nouvellement lancée pour la traduction du COBOL s’appelle « Code Assistant for Z ». On y voit évidemment une référence à ceux qui l’utiliseront le plus – les développeurs de la génération Z – même si ce nom s’explique par le fait que les mainframes lancés depuis les années 1960 par IBM appartiennent à la famille Z, baptisée ainsi par la marque. En découle le « z/OS », le fameux système d’exploitation reposant sur le COBOL, modernisé aujourd’hui en Java. Des systèmes avant Code Assistant d’IBM se sont déjà penchés sur la question, mais selon la multinationale, ils ont un problème.

« Il existe aujourd’hui de nombreuses approches de modernisation des applications. Certaines options incluent la réécriture de tout le code de l’application en Java ou la migration de tout vers le cloud public, ce qui peut sacrifier les fonctionnalités essentielles à la proposition de valeur d’IBM Z sans pour autant parvenir à la réduction des coûts attendue. Les outils qui convertissent les applications COBOL en syntaxe Java peuvent produire du code difficile à maintenir et méconnaissable pour un développeur Java. L’IA générative est prometteuse, mais la technologie actuelle de réécriture partielle assistée par l’IA ne prend pas en charge COBOL et n’optimise pas le code Java résultant pour la tâche donnée », explique IBM.

Dans la réalité, la plupart des dépannages et des manipulations actuelles reposent sur un petit réseau de développeurs, particulièrement bien payés, qui voient depuis 2010 arriver de nombreux gros portefeuilles prêts à débourser des sommes colossales. La raison ? Les risques encourus coûteraient bien plus. L’agence Reuters, dans un reportage en 2017, rappelait le cas de la Commonwealth Bank of Australia. En 2012, elle a dû débourser l’équivalent de 749,9 millions de dollars pour moderniser sa plateforme. Un processus qui a pris 5 ans. IBM avait senti l’urgence monter, et rachetait, en 2016, la société israélienne EzSource, spécialisée dans la formation des développeurs pour la modernisation des logiciels mainframe.

Ibm Mainframe Z16
© IBM

« Un amas multicouche de chaos »

Au Research Lab de Zurich, où IBM possède une partie de ses chercheurs en charge du développement de nouveaux outils, on justifie l’importance de passer par de l’IA. Le seul moyen pour pallier le manque de ressources, et répondre aux risques nés de la maintenance des applications sur plusieurs générations. Principal problème : des applications « guidées par des voix différentes au fil des ans. Elles ont tendance à perdre leurs principes architecturaux directeurs et peuvent finir par devenir un amas multicouche de chaos semi-structurés », décrit-on. Une situation qui ne se limiterait d’ailleurs pas au COBOL, mais qui dans le cas de ce langage informatique doit être doublement surveillé pour veiller à ce que les équivalences soient bien respectées entre ce que proposait COBOL et ce que propose Java.

En 2012 à Huntville en Alabama, la NASA débranchait son dernier serveur mainframe System Z au Marshall Space Flight Center, commandé avant même le premier être humain sur la Lune. « Pour de nombreux acteurs du secteur, les mainframes sont devenus tellement accablés par une réputation d’ère informatique révolue qu’ils sont devenus synonymes de dinosaures », expliquait CNET à cette occasion. Depuis, IBM s’est emparé de la remarque et rebondit avec de nouvelles machines empruntant le nom de dinosaures. Les mainframes ont toujours leur place en guise de supercalculateur, en attendant que la science passe à la vitesse supérieure avec le quantique. Un sujet sur lequel les chercheurs chez IBM sont évidemment sur le pont.

À ce moment-là, il ne sera plus question de seulement repenser l’architecture des applications, mais aussi leur protection cryptographique.



Source link

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.