Introduction
De nombreuses entreprises dépendent des technologies mainframe pour des charges de travail importantes en mode batch et en ligne en raison de leurs performances exceptionnelles en matière de calcul et d'entrée/sortie. Cependant, certaines cherchent à accroître leur agilité commerciale en adoptant des pratiques modernes de développement d'applications afin de réduire les coûts opérationnels.
Développées initialement il y a trois ou quatre décennies, ces applications ont souvent été conçues par des développeurs qui ne font plus partie de l'organisation ou ne sont plus impliqués dans le codage. En conséquence, l'expertise technique requise pour maintenir ces applications est de plus en plus rare.
L'absence d'expertise dans le soutien des applications mainframe crée des défis pour les entreprises, entravant leur amélioration. Toutefois, la modernisation peut être rapidement mise en œuvre à l'aide de technologies infonuagiques, de cadres open source et de processus DevOps pour répondre aux exigences du marché et aux exigences réglementaires.
Un rapport Gartner récent indique qu'environ 90 % des applications vieillissantes resteront essentielles pour de nombreuses entreprises, moins de 10 % seulement passant à des plateformes modernes. La plupart des applications évitent la modernisation en raison des coûts élevés, des perturbations des opérations commerciales, de la dette de connaissances et des préoccupations liées à l’abandon de plateformes performantes comme les mainframes.
Le cadre ADvantage Modernize de HCLTech s’attaque à ces défis à l’aide de divers mécanismes de traitement, déterminés lors de la phase d’évaluation du projet. Ces mécanismes incluent :
- Rehost : Déplacement des partitions logiques des centres de données sur site vers un fournisseur de services mainframe gérés tel que HCLTech, réduisant les frais généraux et les coûts de licence grâce à un modèle de service partagé.
- Replatform : Migration du code existant vers une plateforme non mainframe hébergée dans une instance du nuage, permettant des économies rapides sur le matériel et les logiciels. Les plateformes hébergées sur AWS équivalentes aux mainframes assurent la continuité sur des langages comme COBOL, PL/I, natural, etc.
- Repurchase : Remplacement des fonctionnalités des applications mainframe par des solutions SaaS pour les finances, les ressources humaines, la fabrication, la planification des ressources d’entreprise, etc.
- Rewrite : Réécrire les applications mainframe à partir de zéro est risqué, complexe et coûteux, dépassant souvent les prévisions initiales concernant les ressources et les investissements.
- Refactorisation automatisée : Utilisation d’outils pour automatiser ou accélérer la conversion technologique, sans perte de fonctionnalité de l’application dans l’environnement cible. L’automatisation réduit considérablement le coût et le temps nécessaires à la modernisation, souvent de 40 % à 60 %, selon la complexité du programme.
Ce blogue met l’accent sur l’option de traitement « refactorisation automatisée » parmi les stratégies de modernisation énumérées. Voici les principales phases de la refactorisation automatisée et les accélérateurs HCLTech utilisés dans le processus :
- Analyse d’inventaire des applications : iLit-DC
- Migration des données : ADvantage Migrate
- Modernisation d’applications (COBOL, PL/I, natural, JCL, etc. vers Java/.NET) : ATMA
Solution HCLTech

Figure 1 : architecture de la solution ATMA
Nous explorerons comment HCLTech exploite notre approche de transformation et de modernisation accélérée (ATMA) pour accélérer le processus de modernisation des applications mainframe. ATMA est la plateforme d’automatisation exclusive de HCLTech visant à accélérer la conversion des applications héritées en piles technologiques modernes avec une architecture contemporaine et un accès par navigateur.
ATMA analyse les sources et artefacts de configuration des applications héritées, identifie divers composants et les répartit entre les couches appropriées de la pile technologique cible. Il transpile le code dans le langage choisi en utilisant des syntaxes et cadres équivalents, ce qui le rend généralement prêt à 70 %-80 % pour une intervention manuelle. Le processus de modernisation comprend plusieurs phases.
- Préparation : Personnaliser ATMA pour comprendre les nouveaux modèles dans l’application héritée et générer un code cible conforme au plan technologique de la plateforme moderne. Durant cette phase, si des programmes sont écrits dans des langages non pris en charge par ATMA, une analyse de faisabilité et des avantages-coûts est réalisée pour déterminer s’il est pertinent d’ajouter leur support dans ATMA, auquel cas ATMA serait personnalisé pour les prendre en charge. Autrement, ils seraient réécrits ou remplacés manuellement.
- Transpilation : Utiliser ATMA pour générer le code source cible et les échafaudages nécessaires, tels que les dépendances Maven/Gradle, projets/solutions, etc.
- Intervention manuelle : L’équipe de développement modifie le code généré par ATMA sous la direction des experts métier, assurant la validation complète de la fonctionnalité et la résolution des écarts. Les activités incluent la refonte de l’interface utilisateur, les améliorations du code, les optimisations de performance, la gestion des accès et rôles, la cloudification automatisée et les tests. Les activités suivantes sont réalisées à cette étape :
- Refonte de l’IU : Les écrans en ligne sont revisités pour offrir une expérience utilisateur plus contemporaine via angular/react. Ce processus implique souvent une refonte substantielle de l’UI, selon les besoins des clients.
- Améliorations du code : Bien qu’ATMA génère des modèles de code de qualité, la logique métier issue d’une technologie héritée peut manquer d’efficacité dans la technologie cible. Par exemple, de longues manipulations de dates peuvent être remplacées par de simples appels à des méthodes utilitaires de type date. Dans certains cas, HCLTech remplace les moteurs de règles métier hérités par des moteurs de standard industriel malgré l’efficacité du code généré par ATMA.
- Optimisations de performance : Contrairement aux idées reçues, les composants transpilés du mainframe vers la technologie des systèmes ouverts peuvent répondre, voire dépasser, les normes de performance. L’exploitation du multithreading, du traitement parallèle, de la dimensionnement du système et de la topologie infonuagique permet d’atteindre des performances similaires ou supérieures. Par exemple, lors de la modernisation d’un système d’adjudication de réclamations, un processus batch de 20 minutes sur le mainframe était complété en quelques minutes dans l’environnement cible infonuagique.
- Gestion des accès et des rôles : Les applications mainframe utilisent généralement RACF (Resource Access Control Facility) pour la gestion des accès. Les applications modernisées configurent une fonctionnalité similaire à l’aide d’une plateforme de gestion des identités.
- Cloudification automatisée : Cette phase utilise ADvantage Cloud de la suite ADvantage Modernize pour évaluer et remédier le code modernisé en vue du déploiement natif infonuagique sur AWS.
- Tests : Les tests et l’activation de l’intégration et du déploiement continus (CI/CD) sont réalisés à cette étape pour garantir la fiabilité et l’efficacité des applications modernisées.
- Rétrofit : Si l’application mainframe a changé après que le code source ait servi de base à la modernisation, ces changements sont intégrés dans les applications modernisées à cette étape.
- Déploiement : Déployer les applications modernisées dans les environnements UAT et de production.
Voici la cartographie type de la source vers la cible des éléments d’application mainframe et leurs équivalents dans les piles technologiques modernes et les plateformes infonuagiques :
| Source | Cible Java / .NET | Service AWS | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
| AWS Lambda ou déployé sur Amazon EC2 | |||||||||
| |||||||||||
| Fichiers VSAM | Tables RDB cibles ou fichiers texte | Amazon RDS ou Amazon S3 | |||||||||
| Segments IMS | Tables RDB cibles | Amazon RDS | |||||||||
| Fichiers séquentiels | Fichiers texte | Amazon S3 | |||||||||
| MQ | Files JMS | Amazon SQS | |||||||||
| z/OS | Linux ou Windows | Pods Kubernetes déployés sur Amazon EC2 ou Amazon EKS | |||||||||
Tableau 1 : Cartographie des solutions de modernisation pour les applications mainframe
Architecture technique

Figure 2 : Architecture d’application moderne sur AWS
L’architecture typique des applications modernisées déployées sur AWS, avec Java comme plateforme cible, est illustrée à la Figure 2. L’application Spring Boot, générée par le processus de modernisation, présente une architecture contemporaine composée de plusieurs composants :
- Macros-services : Exposés via l’API REST pour les applications UI et les jobs batch lancés à l’aide du job launcher
- Objets d’accès aux données : Utilisés par les services pour effectuer des appels aux bases de données, généralement à AWS RDS si nécessaire
- Passerelle API : Facilite l’accès unifié à l’API REST à partir des applications UI
- Planificateur AWS EventBridge : Déclenche des jobs batch sur des horaires réguliers ou par d’autres événements
- Serveur de découverte : Permet l’enregistrement et la découverte des services grâce au composant Spring Boot Discovery Server
- Serveur de configuration : Externalise la configuration de l’application à travers les environnements via un référentiel de code source grâce au Spring Boot Config server
- Stockage d’objets dans des compartiments AWS S3 : Stocke les fichiers d’entrée/sortie de l’application
- AWS SQS : Utilisé pour les files MQ facilitant la communication intra/inter-application
L’outil Advantage Cloud de HCLTech permet d’affiner le code transpilé et de l’intégrer avec les services infonuagiques natifs d’AWS, accélérant l’identification des implémentations sur site pour des fonctions d’application spécifiques et automatisant la refactorisation avec des déploiements natifs équivalents. De plus, il facilite la conteneurisation automatisée des applications remédiées, comme illustré à la Figure 3.

Figure 3 : Advantage Cloud pour refactoriser les applications modernisées vers le cloud natif
Avantages d’utiliser ADvantage Modernize pour la modernisation mainframe
Modernisation mainframe grâce à ADvantage Modernize de HCLTech répond aux défis ci-dessous :
- Coûts élevés : Le modèle tarifaire « payez à l’utilisation » offre un retour sur investissement plus rapide, possiblement en moins de 12 mois, comparativement à la maintenance du matériel et des logiciels mainframe. De plus, l’automatisation à chaque phase réduit significativement les coûts de la modernisation.
- Dette de connaissances : Le cadre ADvantage Modernize réduit le besoin d’implication des experts métier et la fonctionnalité est conservée grâce à la conversion automatisée du code.
- Performance : L’environnement ouvert du cloud favorise la productivité et l’innovation. L’évolutivité, la récupération après sinistre et la sauvegarde sont transparentes, tandis que les paradigmes modernes comme le parallélisme améliorent les performances.
Conclusion
La modernisation des applications mainframe sur AWS améliore la performance et stimule l’innovation. Les entreprises peuvent s’appuyer sur les feuilles de route personnalisées de HCLTech pour la modernisation et la migration mainframe pour des transformations réussies et à faible risque. À titre de partenaire-conseil principal AWS, HCLTech est particulièrement bien placé pour relever les défis quotidiens ou complexes grâce à son unité d’affaires dédiée full-stack.
Pour en savoir plus, contactez AppModCloud-Presales@hcltech.com.




