Faire coexister vos applications mainframe et le Web, c’est possible ! Trois stratégies pour réussir la migration progressive des applications mainframe

Afin de répondre à de nouveaux besoins métier, beaucoup d’entreprises disposant d’un patrimoine applicatif sur mainframe envisagent de le moderniser en effectuant une migration sur des environnements ouverts. D’autres peuvent choisir de conserver une base de données sur le mainframe et de moderniser les applications construites autour, en les réécrivant sous forme d’applications web.

Dans les deux cas, l’existant sur mainframe représente souvent plusieurs millions de lignes de code… De tels projets ne peuvent donc s’envisager que sur le long terme. La migration des applications mainframe doit être effectuée de manière progressive, portion de code par portion de code, sur une durée longue (de cinq à dix ans). Pour éviter les surcoûts inutiles et l’interruption des activités de l’entreprise, l’intégration entre les deux mondes doit se faire sans modifier le code existant, de manière simple et rapide à mettre en œuvre.

Selon la stratégie de modernisation choisie, trois approches sont possibles : les nouvelles applications peuvent simplement récupérer les données dont elles ont besoin sur le mainframe ; elles peuvent inclure directement des écrans mainframe ; ou elles peuvent intégrer des écrans mainframe préalablement modernisés.

Intégrer les données et résultats des transactions mainframe au sein des applications web

Dans le premier cas, les nouvelles applications ont simplement besoin d’accéder à des données issues du mainframe, stockées dans une base DB2 par exemple, ou bien résultant de transactions IMS ou CICS. Il suffit donc de récupérer la donnée ou le résultat souhaité et l’intégrer dans la nouvelle application : un service web JSON ou XML sait faire cela de manière simple et non-intrusive.

Prenons cas d’une grande entreprise de transports dont les opérations critiques sont gérées par une plateforme System z depuis des décennies. Ses nouveaux objectifs de développement lui imposent de s’ouvrir à de nouveaux marchés, nécessitant de faire évoluer ses applications mainframe au plus vite et d’en ouvrir l’accès à une nouvelle population d’utilisateurs. Le projet s’étalant sur une dizaine d’années, l’entreprise doit trouver une solution évolutive lui permettant d’être rapidement compétitive…
La société a donc choisi de migrer son application métier vers un environnement web et de s’appuyer en parallèle sur une solution de récupération des données et résultats de transactions mainframe. Pour cela, le code mainframe est invoqué depuis la nouvelle application web via un service JSON : celui-ci s’exécute automatiquement sur le mainframe, puis renvoie à l’application uniquement les résultats indispensables à don fonctionnement. Implémentée en une seule journée, cette solution ne nécessite aucune modification de l’application mainframe, ni compétence spécialisée. Évolutive et totalement transparente pour les nouveaux utilisateurs (qui n’utilisent que la nouvelle application web), la solution permet d’opérer au fil du projet le basculement complet vers la nouvelle plateforme, sans impact sur la logique métier de l’entreprise.

Intégrer des écrans mainframe dans les nouvelles applications web

Dans ce second cas, la problématique est de faire cohabiter le mainframe et le web en intégrant des écrans 3270 au sein d’applications web. En effet, les utilisateurs des applications migrées ont parfois besoin d’interagir avec des programmes hébergés sur le mainframe ; les nouvelles applications doivent donc être capables d’appeler le mainframe via des services web, puis d’afficher directement une succession d’écrans 3270 directement dans l’interface utilisateur.

Cette solution est privilégiée par une importante organisation bancaire, engagée dans la réécriture d’une application métier. Lors de l’exécution du code encore situé sur le mainframe, la nouvelle application déclenche un service web qui se place à l’endroit requis, et présente ensuite les écrans 3270 souhaités. Les utilisateurs bénéficient ainsi  d’un poste de travail unique et retrouvent dans leur interface les écrans qui leur sont familiers, sans avoir besoin d’utiliser les anciens terminaux. À terme, le moniteur transactionnel du mainframe sera supprimé de manière transparente pour les utilisateurs, afin de conserver uniquement les données.

Intégrer des écrans mainframe modernisés au sein des applications web

Dans ce dernier cas, l’enjeu est identique au précédent, si ce n’est que l’entreprise souhaite en plus moderniser les écrans reliés au mainframe afin que leur ergonomie soit en harmonie avec celle de ses nouvelles applications. La solution consiste à convertir les écrans 3270 en véritables pages web interactives, toujours sans toucher au code.

Modernisation d'écrans 3270
Écran 3270 modernisé en fonction des paramètres d’affichage de différents terminaux

C’est l’approche choisie par un établissement financier ayant réécrit une partie de ses applications mainframe sous forme d’applications web : l’entreprise souhaitait y intégrer rapidement des données et des écrans venant de sa plateforme z/OS, de manière transparente pour les utilisateurs et sans redévelopper d’applicatif sur sa nouvelle plateforme.
La conversion les écrans 3270 en pages HTML, conformes à la charte graphique des nouvelles applications, offre un gain de temps considérable : plus besoin de former les (nouveaux) utilisateurs à l’interface 3270. Cette solution est donc économiquement beaucoup plus rentable et rapide qu’une réécriture applicative.

Grâce à ces trois modes opératoires, la migration des applications mainframe vers les technologies web peut s’effectuer de façon rapide et progressive. Dans tous les cas, en fonction des objectifs et du contexte, les utilisateurs ne sont pas perturbés, les besoins en formation sont réduits ; la migration s’effectue sans modification du code applicatif mainframe, permettant au final de limiter les coûts.