Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Transformez Easytrieve en langues modernes en utilisant AWS Transform personnalisé
Shubham Roy, Subramanyam Malisetty et Harshitha Shashidhar, Amazon Web Services
Résumé
Ce modèle fournit des conseils prescriptifs pour une transformation plus rapide et moins risquée des charges de travail EZT (Broadcom Easytrieve Report Generator
Ce modèle fournit une définition de transformation personnalisée prête à l'emploi pour la transformation EZT. La définition utilise plusieurs entrées de transformation :
Règles commerciales EZT extraites à l'aide AWS Transform de méthodes personnalisées
Documentation de référence sur la programmation EZT
Code source d'EZT
Ensembles de données d'entrée et de sortie du mainframe
AWS Transform custom utilise ces entrées pour générer des applications fonctionnellement équivalentes dans des langages cibles modernes, tels que Java ou Python.
Le processus de transformation utilise l'exécution intelligente des tests, le débogage automatique et les fonctionnalités de correction itérative pour valider l'équivalence fonctionnelle par rapport aux résultats attendus. Il prend également en charge l'apprentissage continu, permettant la définition personnalisée des transformations afin d'améliorer la précision et la cohérence entre les transformations successives. Grâce à ce modèle, les entreprises peuvent réduire les efforts et les risques liés à la migration, remédier à la dette technique des ordinateurs centraux spécialisés et moderniser les charges de travail EZT AWS afin d'améliorer l'agilité, la fiabilité, la sécurité et l'innovation.
Conditions préalables et limitations
Conditions préalables
Un AWS compte actif
Une charge de travail EZT pour ordinateur central avec des données d'entrée et de sortie
Limites
Limites de portée
Support linguistique : seule EZT-to-Java la transformation est prise en charge pour ce modèle de transformation spécifique. Ce modèle APG est testé sur du code EZT en ligne dans. JCL/Proc
Hors de portée - Pour la transformation d'autres langages de programmation du mainframe, utilisez-le AWS Transform pour le mainframe. Pour en savoir plus, consultez la section Types de fichiers pris en charge pour la transformation d'applications mainframe dans le guide de AWS Transform l'utilisateur.
Limites du processus
Dépendance de validation — Sans données de sortie de référence, la transformation ne peut pas être validée.
Logique propriétaire — Les utilitaires hautement spécifiques développés sur mesure nécessitent une documentation utilisateur et des documents de référence supplémentaires pour être correctement interprétés par l'agent d'intelligence artificielle.
Limites techniques
Limites de service — Pour connaître les limites de service et les quotas AWS Transform personnalisés, consultez le Guide de AWS Transform l'utilisateur - Quotas et la référence AWS générale - Transform Quotas.
Versions du produit
AWS Transform CLI — Dernière version
Node.js — version 20 ou ultérieure
Git — Dernière version
Environnement cible
Java — version 17 ou ultérieure
Spring Boot : la version 3.x est la cible principale des applications refactorisées
Maven — version 3.6 ou ultérieure
Architecture
Pile technologique source
Système d'exploitation — IBM z/OS
Langage de programmation — Easytrieve, langage de contrôle des tâches (JCL)
Base de données — IBM DB2 pour z/OS, méthode d'accès au stockage virtuel (VSAM), fichiers plats du mainframe
Pile technologique cible
Système d'exploitation — Amazon Linux
Calcul — Amazon Elastic Compute Cloud (Amazon EC2)
Langage de programmation — Java
Base de données Amazon Relational Database Service (Amazon RDS)
Architecture cible

Flux de travail
Cette solution utilise des définitions de transformation AWS Transform personnalisées et prédéfinies pour moderniser les applications mainframe Easytrieve (EZT) vers Java grâce à un flux de travail automatisé en trois étapes. AWS Transform custom gère l'ensemble du processus (extraction des règles métier (BRE), transformation du code et validation de l'équivalence fonctionnelle, en s'appuyant sur les définitions de transformation fournies dans le cadre de cette solution. Une validation humaine est requise pour valider le BRE généré et la validation du rapport d'équivalence fonctionnelle.
Étape 1 — Préparer le dossier des entrées
source-code/ — code source EZT (fichiers .ezt), flux de tâches JCL (fichiers .JCL/.JCL), programmes COBOL, cahiers et cartes de contrôle
bre-doc/ - Document d'extrait de règles métier généré
input-data/ — Ensembles de données d'entrée du mainframe de référence pour validation
output-data/ — Ensembles de données de sortie du mainframe de référence pour validation
document_references/ — Définitions de transformation et documentation de référence fournies par :
-
bre_transformation_definition.md— Définit le processus d'extraction des règles métier en 5 phases-
transformation_definition.md— Définit la façon dont Easytrieve construit une carte vers Java-
summaries.md— Règles et modèles de transformation-
ca-easytrieve-report-generator-11-6.txt— Manuel de référence Easytrieve
Étape 2 — Extraire les règles métier à l'aide d'AWS Transform Custom
1. Interagissez avec la AWS Transform CLI en langage naturel pour passer en revue les définitions de transformation (TD) disponibles et personnaliser le BRE TD en fonction de vos critères et règles spécifiques
2. Utilisez le TD finalisé pour générer le document BRE : analyse de manière AWS Transform personnalisée les artefacts sources du mainframe (Easytrieve, JCL, COBOL, cahiers, cartes de contrôle) et produit un BRE structuré avec un catalogue de règles métier, des mises en page de fichiers, un lignage des données et des mappages de types de données
3. Déplacez le document BRE généré vers le bre-doc/ dossier à utiliser à l'étape 3
Étape 3 — Génération d'un code modernisé équivalent fonctionnel
Interagissez avec la AWS Transform CLI en langage naturel pour passer en revue les définitions de transformation de base (TD)
disponibles et personnaliser le TD de base en fonction de vos critères et règles spécifiques. Invoquez ensuite la AWS Transform CLI avec le code source du projet. AWS Transform custom crée des plans de transformation, convertit EZT en Java après approbation, génère des fichiers de support, crée le fichier JAR exécutable et valide les critères de sortie.
Utilisez l'agent de validation pour tester l'équivalence fonctionnelle par rapport à la sortie du mainframe. L' Self-Debugger agent résout les problèmes de manière autonome. Les livrables finaux incluent du code Java validé et des rapports de validation HTML.
Automatisation et mise à l'échelle
Architecture d'exécution multimode d'Agentic AI : AWS Transform custom exploite l'IA agentic avec 3 modes d'exécution (conversationnel, interactif et automatisation complète) pour automatiser les tâches de transformation complexes, notamment l'analyse du code, le refactoring, la planification de la transformation et les tests.
Système de feedback adaptatif sur l'apprentissage : la plateforme met en œuvre des mécanismes d'apprentissage continu par le biais de l'analyse d'échantillons de code, de l'analyse de la documentation et de l'intégration des commentaires des développeurs avec des définitions de transformation versionnées.
Architecture de traitement simultané des applications : le système permet l'exécution parallèle distribuée de plusieurs opérations de transformation d'applications simultanément sur une infrastructure évolutive.
Outils
Services AWS
AWS Transform custom est un service d'IA agentique utilisé pour transformer les applications EZT existantes en langages de programmation modernes.
Amazon Simple Storage Service (Amazon S3) est un service de stockage d'objets basé sur le cloud qui vous permet de stocker, de protéger et de récupérer n'importe quel volume de données. Amazon S3 est le principal service de stockage AWS Transform personnalisé pour le stockage des définitions de transformation, des référentiels de code et des résultats de traitement.
Gestion des identités et des accès AWS (IAM) vous aide à gérer en toute sécurité l'accès à vos AWS ressources en contrôlant qui est authentifié et autorisé à les utiliser. IAM fournit le cadre de sécurité pour la AWS Transform personnalisation, la gestion des autorisations et le contrôle d'accès pour les opérations de transformation.
Autres outils
AWS Transform La CLI est l'interface de ligne de commande pour AWS Transform la personnalisation, permettant aux développeurs de définir, d'exécuter et de gérer des transformations de code personnalisées par le biais de conversations en langage naturel et de modes d'exécution automatisés. AWS Transform custom prend en charge à la fois les sessions interactives (atx custom def exec) et les transformations autonomes pour une modernisation évolutive des bases de code.
Système de contrôle de version Git
utilisé pour la protection des branches, le suivi des modifications et les fonctionnalités de restauration lors d'une application de correction automatique. Java
est le langage de programmation et l'environnement de développement utilisés dans ce modèle.
Référentiel de code
Le code de ce modèle est disponible dans Easytrieve to Modern Languages Transformation with AWS Transform Custom
Bonnes pratiques
Établissez une structure de projet standardisée : créez une structure à quatre dossiers (code source, bre-doc, données d'entrée, données de sortie), validez l'exhaustivité et le contenu du document avant la transformation.
Utiliser des fichiers de référence pour la validation : utilisez les fichiers d'entrée de référence de production, effectuez une comparaison octet par octet avec la sortie de référence, acceptez une tolérance zéro pour les écarts.
Utiliser tous les documents de référence disponibles — Pour augmenter la précision de la transformation, fournissez tous les documents de référence disponibles, tels que les exigences commerciales et les listes de contrôle de codage.
Fournissez des informations pour améliorer la qualité : la AWS Transform personnalisation extrait automatiquement les enseignements tirés des exécutions de transformation (commentaires des développeurs, problèmes de code) et crée des éléments de connaissances pour ces derniers. Après chaque transformation réussie, passez en revue les éléments de connaissances et approuvez celui que vous souhaitez utiliser lors de futures exécutions. Cela améliore la qualité des transformations futures.
Épopées
| Sous-tâche | Description | Compétences requises |
|---|---|---|
Fournissez l'infrastructure AWS Transform sur mesure. | Déployez l'infrastructure prête pour la production requise pour héberger un environnement de transformation sécurisé. Cela inclut une instance Amazon EC2 privée configurée avec les outils nécessaires, les autorisations IAM et les paramètres réseau pour convertir le code Easytrieve. Pour configurer l'environnement à l'aide de l'infrastructure en tant que code (IaC), suivez les instructions de déploiement du référentiel Easytrieve to Modern Languages Transformation with AWS Transform Custom | Développeur d'applications, administrateur AWS |
Préparez les matières premières pour la transformation. |
| Développeur d’applications |
| Sous-tâche | Description | Compétences requises |
|---|---|---|
Créer une définition de transformation BRE | Suivez ces étapes pour créer la définition de transformation personnalisée pour BRE (Business Rule Extraction) à partir du code source d'Easytrieve. 1. Accédez au dépôt de code correspondant à ce modèle et copiez bre_transformation_definition.md du dossier documents ainsi que du dossier document_references contenant le guide de codage EZT. 2. Téléchargez ce contenu dans le téléchargement de la AWS Transform CLI vers un emplacement de votre choix et notez l'emplacement du chemin à utiliser dans les étapes suivantes. 3. Appelez AWS Transform depuis la CLI avec la commande atx. 4. Fournissez cette invite dans la CLI : Créez une transformation personnalisée à l'aide de mon fichier de définition de transformation disponible sur path <path to content from step #2 > AWS Transform crée une nouvelle définition de transformation personnalisée pour la génération BRE. 5. Passez en revue la définition de la transformation et apportez des modifications si nécessaire. | Développeur d’applications |
Publier la définition de la transformation BRE | Après avoir examiné et validé la définition de transformation BRE, vous pouvez la publier dans le registre AWS Transform personnalisé avec une invite en langage naturel, en fournissant un nom de définition tel que Easytrieve-Business-Rule-Extract. | Développeur d’applications |
Créez une définition de transformation. | Suivez ces étapes pour créer la définition de transformation personnalisée pour la transformation EZT vers Java avec validation fonctionnelle.
| Développeur d’applications |
Publiez la définition de la transformation. | Après avoir examiné et validé la définition de transformation, vous pouvez la publier dans le registre AWS Transform personnalisé à l'aide d'une invite en langage naturel, en fournissant un nom de définition tel que Easytrieve-to-Java-Migration. | Développeur d’applications |
| Sous-tâche | Description | Compétences requises |
|---|---|---|
Exécutez la tâche de génération BRE. | Exécutez la commande AWS Transform CLI en choisissant l'option non interactive ou interactive : Non-interactive exécution (totalement autonome) :
Exécution interactive (avec supervision humaine) :
Reprendre l'exécution interrompue :
OU
Déplacez le document BRE généré vers le dossier bre-doc/ à utiliser comme entrée lors de l' Easytrieve-to-Java étape de transformation. | Développeur d’applications |
| Sous-tâche | Description | Compétences requises |
|---|---|---|
Consultez le résumé de validation de la transformation. | Avant d'exécuter la transformation AWS Transform personnalisée, vérifiez que le
| Développeur d’applications |
Exécutez le travail de transformation personnalisé. | Exécutez la commande AWS Transform CLI en choisissant l'option non interactive ou interactive :
AWS Transform valide automatiquement par le biais de build/test commandes lors de l'exécution de la transformation. | Développeur d’applications |
| Sous-tâche | Description | Compétences requises |
|---|---|---|
Consultez le résumé de validation de la transformation. |
| Développeur d’applications |
Accédez aux rapports de validation. | Entrez les commandes suivantes pour passer en revue les artefacts de validation détaillés :
| Développeur d’applications |
Activez les éléments de connaissances pour un apprentissage continu. | Améliorez la précision des transformations futures en intégrant les éléments de connaissances suggérés à votre configuration permanente. Après une transformation, l'agent stocke les modèles identifiés et les règles de mappage dans votre répertoire de session local. Pour consulter et appliquer ces éléments appris, exécutez les commandes suivantes sur votre instance Amazon EC2 :
| Développeur d’applications |
Résolution des problèmes
| Problème | Solution |
|---|---|
Configuration des chemins d'entrée et de sortie Les fichiers d'entrée ne sont pas lus ou les fichiers de sortie ne sont pas écrits correctement. | Spécifiez le chemin complet du répertoire dans lequel les fichiers d'entrée sont stockés et indiquez clairement l'emplacement où la sortie doit être écrite. Assurez-vous que les autorisations d'accès appropriées sont configurées pour ces répertoires. Les meilleures pratiques incluent l'utilisation de chemins absolus plutôt que de chemins relatifs pour éviter toute ambiguïté et la vérification que tous les chemins spécifiés existent avec les read/write autorisations appropriées. |
Reprise des exécutions interrompues L'exécution a été interrompue ou doit être poursuivie là où elle s'est arrêtée | Vous pouvez reprendre l'exécution là où vous l'avez interrompue en fournissant l'ID de conversation dans la commande CLI. Trouvez l'identifiant de conversation dans les journaux de votre précédente tentative d'exécution. |
Résolution des contraintes de mémoire Une erreur de mémoire insuffisante se produit lors de l'exécution. | Vous pouvez demander AWS Transform de partager la taille actuelle de la JVM en mémoire, puis d'augmenter l'allocation de mémoire en fonction de ces informations. Cet ajustement permet de répondre à des exigences de traitement plus importantes. Envisagez de diviser les tâches volumineuses en lots plus petits si les contraintes de mémoire persistent après les ajustements. |
Corriger les divergences entre les fichiers de sortie Les fichiers de sortie ne correspondent pas aux attentes et AWS Transform indiquent qu'aucune autre modification n'est possible. | Fournissez des commentaires spécifiques et des raisons techniques expliquant pourquoi la sortie actuelle est incorrecte. Incluez de la documentation technique ou commerciale supplémentaire pour répondre à vos besoins. Ce contexte détaillé permet de AWS Transform corriger le code afin de générer les fichiers de sortie appropriés.
|