Qu’est-ce que la modernisation des applications RPG ?

By David Zax

Définition de la modernisation des applications RPG

La modernisation des applications RPG consiste à mettre à jour les logiciels de gestion vieillissants qui tournent sur les ordinateurs de milieu de gamme d’IBM, à savoir des programmes écrits dans un langage appelé RPG (pour « report program generator »), afin qu’ils puissent se connecter aux systèmes modernes et perdurer à l’heure où le nombre de programmeurs maîtrisant le langage RPG ne cesse de diminuer., sans pour autant supprimer le code d’origine et repartir de zéro.

Ces applications fonctionnent sous IBM i, le successeur du système d’exploitation OS/400 qui tournait à l’origine sur la plateforme AS/400.

La modernisation des applications RPG peut impliquer plusieurs étapes : le rafraîchissement de l’interface utilisateur, le nettoyage du code, sa traduction vers des langages plus récents, sa connexion à d’autres logiciels via des API ou son transfert vers le cloud. Quelle que soit l’approche adoptée, l’objectif ultime est de préserver un logiciel qui fonctionne encore tout en le mettant à jour. Ce travail s’inscrit dans les cadres plus larges de la modernisation des applications et de la migration du code hérité.

Qu’est-ce que le RPG ?

Le RPG est l’un des plus anciens langages de programmation encore utilisés quotidiennement à des fins commerciales. Créé en 1959 par IBM pour l’ordinateur IBM 1401, il a remplacé le traitement des cartes perforées et permis de générer des rapports d’activité, d’où l’origine de son nom, comme l’explique l’auteur Nick Litten dans « A Brief History of the IBM RPG Programming Language ». Depuis des décennies, il gère la paie, les stocks et la facturation pour les banques, les assureurs, les fabricants et les détaillants.

Le langage a évolué au fil des ans. Le RPG II, utilisé dans les années 1960 et 1970, était quelque peu rigide : les programmeurs saisissaient le code dans des colonnes fixes et s’appuyaient sur une boucle de traitement intégrée. Le RPG III, introduit avec le System/38 en 1979, a ajouté des éléments de construction structurés : des tests conditionnels, des boucles ainsi que des sous-programmes réutilisables, répondant ainsi aux attentes des programmeurs. IBM l’a rebaptisé RPG/400 lors du lancement de l’AS/400 en 1988, selon Wikipédia.

Le RPG IV, introduit au milieu des années 1990, est la version moderne utilisée sur les systèmes IBM i. Il a été intégré à l’Integrated Language Environment d’IBM, ce qui a permis au RPG de fonctionner plus facilement aux côtés d’autres langages métier tels que le COBOL et le C. Depuis lors, IBM n’a cessé de le moderniser, l’éloignant de son ancien format rigide basé sur des colonnes. Le RPG d’aujourd’hui, souvent appelé RPGLE ou ILE RPG, peut être écrit dans un style libre qui ressemble beaucoup plus à du code moderne ordinaire qu’aux versions des décennies passées.

Approches de la modernisation des applications RPG

En quoi consiste exactement une « application RPG moderne » ? La modernisation des applications RPG, qui s’inscrit souvent dans le cadre plus large de la modernisation d’IBM i, peut être effectuée de manière superficielle ou en profondeur.

Du côté des modifications superficielles, on trouve la modernisation de l’interface utilisateur : le remplacement de l’« écran vert » en mode texte (l’affichage terminal vert sur fond noir des applications IBM i classiques) par une interface Web ou mobile, tout en laissant intacte la logique sous-jacente. Il s’agit souvent de l’amélioration la plus rapide et la plus visible. Une approche similaire consiste à conserver le RPG tel quel, mais à encapsuler sa logique métier sous forme de services Web, c’est-à-dire d’API permettant aux applications modernes d’appeler les fonctions et d’accéder aux données de l’ancien code.

Une approche plus approfondie consiste à refactoriser le code : améliorer la structure du code sans en modifier le fonctionnement, en convertissant le RPG au format fixe en RPG au format libre, en décomposant les grands programmes en modules plus petits et en remplaçant les anciennes définitions de bases de données par du SQL, selon N. Litten. L’agent de codage basé sur l’IA d’IBM, IBM Bob, peut être enrichi de connaissances spécifiques à IBM i afin de faciliter cette tâche.

Pourquoi maintenant : la pénurie de compétences

La raison principale pour laquelle cette tâche est devenue urgente est d’ordre humain plutôt que technique. Les programmeurs qui ont mis au point ces systèmes partent à la retraite, et le langage RPG est rarement enseigné dans les universités ; l’offre de programmeurs pour les remplacer s’amenuise donc. « La programmation RPG est une compétence en voie de disparition ; d’ici 2025, le programmeur RPG moyen aura 70 ans », selon l’ASNA. Dans l’enquête « IBM i Marketplace Survey 2026 », Fortra a constaté que la pénurie de compétences relatives à IBM i avait supplanté la cybersécurité en tant que principale préoccupation du secteur pour la première fois en neuf ans, comme l’ont indiqué la plupart des 320 personnes interrogées.

L’IBM Institute for Business Value, dans une recherche de 2023 sur la modernisation des applications dans divers secteurs, a constaté que 83 % des dirigeants considéraient la modernisation des applications et des données comme un élément central de leur stratégie, tandis que seuls 27 % déclaraient avoir effectivement modernisé bon nombre des systèmes nécessaires. Pour de nombreuses entreprises, la pérennisation de ces applications est devenue un élément central de la transformation numérique.

AI Academy

L’IA au service de la modernisation des applications

Découvrez comment l’IA générative peut transformer votre parcours de modernisation des applications en améliorant la productivité, en réduisant les risques de conformité et en rationalisant les mises à jour.

Les outils d’IA peuvent-ils faciliter la modernisation des applications RPG ?

Il existe tout un secteur spécialisé dans la modernisation des applications RPG. Par exemple, Fresche Solutions développe X-Analysis, un outil qui cartographie l’interdépendance des anciens programmes et en extrait les règles métier sous-jacentes. Profound Logic se concentre sur l’adaptation des applications RPG au Web et sur la transformation automatisée du code vers Node.js, tandis que LANSA, rachetée par Idera en 2019 (selon IT Jungle), propose des outils low-code pour créer de nouvelles applications coexistant avec le RPG. IBM fournit également ses propres outils de développement, notamment une extension open source très prisée, Code for IBM i, qui transforme l’éditeur VS Code, largement utilisé, en un environnement de travail RPG grâce à une extension.

Comme pour tout ce qui touche au codage, les outils alimentés par l’IA jouent un rôle de plus en plus important. Pas plus tard qu’au début de l’année 2024, les modèles d’IA peinaient encore à lire le RPG, car ce langage propriétaire est peu représenté dans leurs données d’entraînement (contrairement au COBOL, plus courant, comme l’explique IT Jungle). Mais à la fin de l’année 2025, la situation avait changé. IBM a réagi en lançant le projet Bob, d’abord présenté sous le nom de « watsonx Code Assistant for i », puis transformé en une plateforme de codage agentique à part entière. Bob est capable d’expliquer, de convertir et de tester le RPG ainsi que d’autres langages, notamment en effectuant des tests automatisés sur le code converti. Quatre-vingt mille membres du personnel d’IBM ont utilisé Bob, et les utilisateurs interrogés ont indiqué que cet outil avait augmenté leur productivité de 45 %.

Auteur

David Zax

Staff Writer

IBM Think

Solutions connexes
Agent de codage IA

Donnez à vos équipes les moyens d’innover plus rapidement grâce à IBM Bob, une solution d’IA qui facilite la modernisation de vos applications, accélère votre développement et optimise la mise en production de vos logiciels.

Découvrir notre agent de codage basé sur l’IA
Solutions de modernisation des applications mainframe

Rationalisez la modernisation de vos applications grâce à l’IA générative afin que vos équipe de développement puissent accélérer la transformation, gagner en productivité et réduire la complexité.

Découvrir nos solutions de modernisation des applications mainframe
Services de modernisation des applications

Repensez vos systèmes hérités grâce à une modernisation intelligente basée sur l’IA.

Découvrir nos services de modernisation des applications
Passer à l’étape suivante

Exploitez l’IA générative et l’automatisation avancée pour créer plus rapidement du code prêt à l’emploi. Les modèles Bob augmentent les compétences des développeurs, en simplifiant et en automatisant vos efforts de développement et de modernisation.

  1. Découvrez IBM Bob
  2. Découvrir nos solutions de modernisation des applications mainframe