Blog

Accueil Actualités Applications Base de données Cycle de vie Interfaces

A quoi ressemblent les applications IBM i de nouvelle génération ?

SWill

La vision Steve Will Architecte en chef IBM i – IBM Rochester (Traduction d’un article de IT Jungle)

Article original ici

Qu’adviendra-t-il de nos applications RPG et COBOL ?

Elles évolueront vers ce que Steve Will appelle des applications « de nouvelle génération » pouvant s’exécuter dans le Cloud, si nécessaire.

Selon lui «Aider les clients à passer des écrans verts aux interfaces mobiles ou web n’est pas suffisant. Beaucoup d’entreprises en sont encore à cette étape, mais il faut qu’elles travaillent aux applications de nouvelle génération»

Alors, qu’est-ce qu’une application de nouvelle génération?

Selon Steve Will, plusieurs caractéristiques la définissent :

  • La principale étant qu’au lieu de blocs de code monolithique, ces applications utilisent de plus petits morceaux de code, ou modules, qui peuvent co-exister indépendamment. « Vous devez reprendre le code construit pour une structure monolithique et le modulariser. C’est ce que nous expliquons depuis 20 ans, et la raison pour laquelle l’ILE a été inventé.»
  • Ces applications peuvent toujours être écrites en RPG ou COBOL, dont la logique est liée à la plate-forme IBM i (particulièrement pour RPG), mais elles doivent pouvoir interagir avec d’autres applications de nouvelle génération écrites dans d’autres langages.
  • Les différents modules qui composent l’application doivent être écrits dans le langage qui a le plus de sens pour la fonction qu’ils sont appelés à remplir. « En modularisant votre code, vous devez concentrer vos modules individuels sur les choses qu’ils font le mieux. Vous écrirez ainsi le code pour accéder à la BDD en RPG ou SQL, mais utiliserez des langages mieux adaptés, comme Node.js ou PHP pour les interfaces utilisateurs ou le cloud. »
  • Elles utilisent (qu’elles soient ou non sur le cloud) probablement des API, ou encore des web services pour communiquer avec des applications externes. Ce qui signifie aussi plus de liberté et de flexibilité pour les développeurs.

Le cloud est un élément clé de l’application de nouvelle génération, peu importe si l’IBMi tourne en local ou dans le cloud, l’utilisateur d’applications de nouvelle génération exploitera fréquemment les services cloud dans son fonctionnement quotidien.

Pour quels bénéfices ?

« Il s’agit capitaliser sur la valeur et les spécificités de votre applicatif métier, extrêmement précieux, mais d’en faire un applicatif capable d’interagir avec tout le potentiel de nouvelles technologies disponibles sur le marché, et notamment le cloud. Si votre investissement historique rend la richesse de votre database et de votre IBM i- reflet de vos processus métier- inestimable, vous devez être en mesure d’y ajouter la valeur provenant d’ailleurs. »

Le passage aux applications de nouvelle génération participe aussi d’une démarche globale qui permet une itération plus rapide, telle que définie dans le DevOps, l’intégration continue et autres bonnes pratiques. Lorsque les entreprises entament le processus de transformation de leur code monolithique et de reconfiguration de la logique métier au sein de modules plus petits, elles constatent souvent que la modernisation permet aussi une cadence de livraison plus rapide.

Ce travail de modernisation est impératif dans nos environnements concurrentiels aujourd’hui instables et uberisés : il s’agit de nos applicatifs métiers, la stagnation est donc la pire des stratégies.

« Lorsque vous vous modernisez, vous augmentez la valeur de votre IBM i en lui apportant la valeur des nouvelles technologies externes. Beaucoup ont investi du temps au cours des 15 dernières années pour moderniser leurs interfaces utilisateurs. Mais ce n’est qu’une partie de la valeur potentielle. Vous pouvez également développer de nouveaux services, notamment en exploitant vos données de manière inédite. La modernisation vous permet de vous appuyer sur la stabilité et la valeur de votre système, et d’y ajouter la valeur des nouvelles technologies disponibles sur le marché. »