Le code COBOL, écrit pour la première fois en 1959, continue de piloter une part importante des services financiers et administratifs mondiaux. IBM estime que plus de 40 % des systèmes bancaires en ligne, 80 % des transactions par carte en point de vente et 95 % des retraits aux distributeurs automatiques reposent sur ce langage. Le coût de ses inefficacités serait de l’ordre de 105 milliards de dollars par an pour l’économie américaine. Malgré son importance, la plupart des développeurs capables de le maintenir sont à la retraite, rendant toute migration risquée.
Des modèles d’IA qui prétendent simplifier la transition
Le 19 octobre, OpenAI a annoncé des « améliorations substantielles » de ses modèles pour la migration de code ancien vers des langages modernes tels que C++, Java, Kotlin, Python ou Rust. Dans un billet de blog, la société indique que son modèle GPTFamille de modèles génératifs préentraînés reposant sur l'architecture Transformer, notamment utilisés pour produire du texte.‑6.1 Sol a atteint 87 % d’exactitude de préservation du comportement avec un faible effort de raisonnement, et jusqu’à 98 % avec un effort plus élevé. Ces chiffres sont présentés comme le critère de réussite d’une migration : tous les tests doivent réussir.
Anthropic, concurrent d’OpenAI, a publié en février un « playbook » de modernisation du code et propose Claude Code comme agent capable de TransformerArchitecture de réseau neuronal reposant notamment sur des mécanismes d'attention pour traiter des séquences de données. du COBOL en Java ou Python. Aucun benchmark de performance n’est fourni, mais la firme affirme que « l’économie de la modernisation du COBOL a changé ».
Ce que disent les spécialistes
Les universitaires restent prudents. Vadim Zaytsev, de l’Université de Twente, rappelle que la taille des systèmes legacy dépasse souvent les centaines de millions de lignes de code et que la simple traduction de texte ne suffit pas. Il souligne que la complexité réside dans les multiples langages, les formats de données et les intégrations techniques.
Arie van Deursen (Delft) juge les évaluations d’OpenAI « superficielles » : les tests portent sur des tâches bien définies et simples, loin des défis de la modernisation à grande échelle. Il précise que maintenir un système ancien est nettement plus aisé que le refondre entièrement.
Alastair Donaldson (Imperial College London) ajoute que le vrai problème est de comprendre le fonctionnement global d’un système, ce qui est rare aujourd’hui puisque très peu de développeurs maîtrisent encore le COBOL.
Les limites de l’automatisation actuelle
Même avec des taux de préservation élevés, les experts insistent sur le besoin de vérifications rigoureuses. Une différence minime de comportement entre l’ancien et le nouveau système peut être inacceptable, surtout pour les services critiques comme les paiements ou la sécurité sociale. Les approches proposées incluent :
- exécuter les mêmes scénarios de travail sur les deux versions et comparer les résultats ;
- documenter les traductions afin que des spécialistes du COBOL puissent les examiner ;
- recourir à la vérification formelle, une méthode mathématique qui prouve la conformité du code, bien que très coûteuse à mettre en place.
Jacopo Mauro (Université du Danemark du Sud) estime que la vérification formelle, déjà utilisée pour valider des résultats d’Intelligence artificielleEnsemble de techniques permettant à des machines d'accomplir des tâches nécessitant habituellement certaines capacités humaines, comme la reconnaissance, la prédiction ou la prise de décision., pourrait un jour être appliquée aux migrations de legacy, mais cela demanderait « un énorme effort ».
Perspectives réalistes
L’IA ne remplace pas encore les équipes humaines pour les projets de modernisation du COBOL. Elle peut toutefois accélérer certaines phases, comme la génération de code de traduction ou la production de documentation. Le défi majeur reste la décomposition des systèmes en modules isolables, que les modèles actuels ne maîtrisent pas.
En pratique, une entreprise qui envisagerait de moderniser son infrastructure COBOL devrait considérer l’IA comme un assistant : elle pourrait proposer une première version du code cible, qui serait ensuite revue, testée et validée par des experts humains. Cette approche hybride permettrait de réduire les coûts et les délais tout en maintenant la fiabilité exigée par les applications critiques.
