L’outil d’IA générative d’IBM vise à refactoriser l’ancien code COBOL pour ses mainframes

Agrandir / COBOL 73, vu (à l’intérieur de Windows) dans les bureaux de l’IRS à Austin, au Texas, en 2022.

Washington Post/Getty Images

Il existe des centaines de milliards de lignes de code COBOL exécutées sur les systèmes de production dans le monde. Ce n’est pas idéal pour une langue vieille de plus de 60 ans et dont les principaux architectes sont pour la plupart à la retraite ou décédés.

IBM, désireux de conserver ces fonctions héritées sur ses systèmes mainframe Z, souhaite que ce code soit réécrit en Java. Il y a quelques années, il a essayé de convaincre les humains de le faire, mais il a maintenant une autre idée. Oui, vous l’avez deviné : il s’agit de mettre l’IA au travail.

L’IBM Watsonx Code Assistant, qui devrait être disponible au quatrième trimestre de cette année, a l’intention de garder les humains dans le mix, mais avec la poussée de l’IA générative pour analyser, refactoriser et tester le nouveau code orienté objet. Il ne s’agit pas non plus d’un processus tout ou rien, car IBM affirme que le code généré par Watsonx devrait être interopérable avec COBOL et certaines fonctions du mainframe Z.

Dans un article de blog technique spécifique à la conversion COBOL, Kyle Charlet d’IBM, CTO du logiciel zSystems, prend le relais et dit ce que beaucoup de gens ont dit à propos de COBOL : ce n’est pas seulement le code ; c’est la logique métier, les cas extrêmes et la mémoire institutionnelle, ou son absence.

Certains clients… ont passé des années et des millions à essayer de moderniser leur code COBOL, et malgré tout cela, seule une fraction a été modernisée. Il faut beaucoup de développeurs et un travail manuel minutieux pour réécrire COBOL. Les gens ont essayé de nombreuses façons différentes de moderniser ces applications et, selon mon expérience, avec des résultats variés. Aucun n’est exemplaire.

Selon Charlet, le Watsonx d’IBM pourrait aider les grandes organisations à dissocier les services individuels des applications COBOL monolithiques. Selon IBM, cela se déroulera en trois étapes :

  • Refactor, dans lequel les services individuels sont « chirurgicalement » séparés ou extraits d’un code plus volumineux
  • Transformation, soit en code Java compatible avec le mainframe, soit en COBOL pouvant communiquer directement avec Java
  • Validez, avec l’IA aidant à créer des cas de test mais avec les codeurs toujours « aux commandes »

Présentation par IBM de la façon dont son assistant de code Watsonx basé sur l’IA peut « refactoriser, transformer et valider ».

D’une certaine manière, l’assistance de l’IA semble ne pouvoir qu’aider à relever le défi générationnel consistant à faire avancer COBOL tout en le gardant fonctionnel. Même si les bases de code COBOL peuvent être relativement stables et sécurisées (une fois jugées parmi les moins problématiques dans une vaste enquête), les coûts de leur mise à jour et de leur extension sont gigantesques. L’ancien COBOL était l’une des raisons pour lesquelles le Bureau de gestion du personnel avait subi une intrusion profondément intrusive en 2015, car le code obsolète ne pouvait pas être chiffré ni faire fonctionner avec d’autres systèmes sécurisés.

Mais il existe un argument récurrent selon lequel COBOL est efficace dans la gestion des systèmes et des échanges spécifiques à l’entreprise d’une manière qui (certains diront) présente moins de vecteurs d’attaque. Ou vous pourriez affirmer que le code généré et restructuré par l’IA peut sembler correct et prêt à être testé, mais sans les gens autour qui savent exactement pourquoi le code fait les choses qu’il fait, le code mis à l’échelle par l’IA pourrait avoir autant de bruit que l’IA. vidéo mise à l’échelle.

Watsonx Code Assistant for Z d’IBM sera ensuite déployé pour la vitesse de Red Hat Ansible Light. Étant donné que watsonx.ai aurait été formé sur plus de 100 langages de codage, d’autres copilotes d’IA pour l’ancien code mainframe suivront probablement.

Source-147