Modernisieren Sie die CardDemo Mainframe-Anwendung mithilfe von AWS Transform - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Modernisieren Sie die CardDemo Mainframe-Anwendung mithilfe von AWS Transform

Erstellt von Santosh Kumar Singh (AWS) und Cheryl du Preez (AWS)

Übersicht

AWS Transformwurde entwickelt, um die Modernisierung von Mainframe-Anwendungen zu beschleunigen. Es verwendet generative KI, um den Mainframe-Modernisierungsprozess zu rationalisieren. Es automatisiert komplexe Aufgaben wie: Analyse von Legacy-Code, Mainframe-Dokumentation, Extraktion von Geschäftsregeln, Zerlegung monolithischer Anwendungen in Geschäftsdomänen und Code-Refactoring. Es beschleunigt Modernisierungsprojekte durch die Automatisierung komplexer Aufgaben wie Anwendungsanalyse und Planung der Migrationssequenz. Bei der Zerlegung monolithischer Anwendungen erfolgt eine AWS Transform intelligente Sequenzierung der Mainframe-Anwendungstransformation, sodass Sie Geschäftsfunktionen parallel transformieren können. AWS Transform kann die Entscheidungsfindung beschleunigen und die betriebliche Flexibilität und Migrationseffizienz verbessern.

Dieses Muster enthält step-by-step Anleitungen, mit denen Sie die Möglichkeiten zur Mainframe-Modernisierung von AWS Transform by using CardDemotesten können. Dabei handelt es sich um ein Beispiel für eine Open-Source-Mainframe-Anwendung.

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktiver AWS-Konto

  • AWS IAM Identity Center, aktiviert

  • Berechtigungen, mit denen Administratoren Folgendes aktivieren können AWS Transform

  • Berechtigungen, die es Administratoren ermöglichen, Verbindungsanfragen von Amazon Simple Storage Service (Amazon S3) für die AWS Transform Webanwendung anzunehmen

Einschränkungen

  • AWS Transform ist nur in einigen Fällen verfügbar AWS-Regionen. Eine vollständige Liste der unterstützten Regionen finden Sie unter Unterstützte Regionen für AWS Transform.

  • AWS Transform unterstützt Codeanalyse, Dokumentgenerierung, Extraktion, Dekomposition und Refactoring von Common Business-Oriented Language (COBOL) auf Java. Weitere Informationen finden Sie unter Funktionen und Hauptfunktionen und Unterstützte Dateitypen für die Transformation von Mainframe-Anwendungen.

  • Es gibt ein Servicekontingent für Mainframe-Transformationsfunktionen in. AWS Transform Weitere Informationen finden Sie unter Kontingente für AWS Transform.

  • Um in einem gemeinsamen Arbeitsbereich zusammenarbeiten zu können, müssen alle Benutzer registrierte Benutzer derselben Instanz sein AWS IAM Identity Center , die mit Ihrer Instanz der AWS Transform Webanwendung verknüpft ist.

  • Der Amazon S3 S3-Bucket AWS Transform muss sich in derselben AWS-Konto Region befinden.

Architektur

Das folgende Diagramm zeigt die Architektur, die Sie nach diesem Muster eingerichtet haben.

Verwendung von AWS Transform zur Modernisierung einer Mainframe-Anwendung, die in einem Amazon S3 S3-Bucket gespeichert ist.

Das Diagramm zeigt den folgenden Workflow:

  1. AWS Transform verwendet einen Connector für den Zugriff auf die CardDemo Mainframe-Anwendung, die in einem Amazon S3 S3-Bucket gespeichert ist.

  2. AWS Transform verwendet AWS IAM Identity Center , um den Benutzerzugriff und die Authentifizierung zu verwalten. Das System implementiert mehrere Ebenen von Sicherheitskontrollen für Authentifizierung, Autorisierung, Verschlüsselung und Zugriffsverwaltung, um Code und Artefakte während der Verarbeitung zu schützen. Benutzer interagieren mit dem AWS Transform Agenten über eine Chat-Oberfläche. Sie können dem KI-Agenten Anweisungen für bestimmte Aufgaben auf Englisch geben. Weitere Informationen finden Sie in der AWS Transform Dokumentation unter Human in the Loop (HITL).

  3. Der KI-Agent interpretiert die Anweisungen des Benutzers, erstellt einen Jobplan, unterteilt den Job in ausführbare Aufgaben und führt ihn selbstständig aus. Benutzer können die Transformation überprüfen und genehmigen. Zu den Transformationsaufgaben gehören die folgenden:

    • Codeanalyse — AWS Transform analysiert den Code in jeder Datei auf Details wie Dateiname, Dateityp, Codezeilen und deren Pfade. Der Agent analysiert den Quellcode, führt Klassifizierungen durch, erstellt Abhängigkeitszuordnungen und identifiziert alle fehlenden Artefakte. Er identifiziert auch doppelte Komponenten.

    • Dokumentgenerierung — AWS Transform generiert Dokumentation für die Mainframe-Anwendung. Durch die Analyse des Codes kann automatisch eine detaillierte Dokumentation der Anwendungsprogramme erstellt werden, einschließlich Beschreibungen der Geschäftslogik, Abläufe, Integrationen und Abhängigkeiten, die in Ihren Altsystemen vorhanden sind.

    • Extraktion von Geschäftslogik — AWS Transform analysiert COBOL-Programme, um deren Kerngeschäftslogik zu dokumentieren und Ihnen zu helfen, die grundlegende Geschäftslogik zu verstehen.

    • Codezerlegung — AWS Transform zerlegt den Code in Domänen, die Abhängigkeiten zwischen Programmen und Komponenten berücksichtigen. Die Gruppierung verwandter Dateien und Programme innerhalb derselben Domäne verbessert die Organisation und trägt dazu bei, die logische Struktur der Anwendung beizubehalten, wenn sie in kleinere Komponenten aufgeteilt wird.

    • Planung von Migrationswellen — Basierend auf den Domänen, die Sie während der Zerlegungsphase erstellt haben, wird ein Migrationswellenplan mit der empfohlenen Modernisierungsreihenfolge AWS Transform generiert.

    • Code-Refactoring — AWS Transform Refaktorierung des Codes in allen oder ausgewählten Domaindateien in Java-Code. Ziel dieses Schritts ist es, die kritische Geschäftslogik der Anwendung beizubehalten und sie gleichzeitig in eine modernisierte, Cloud-optimierte Java-Anwendung umzuwandeln.

  4. AWS Transform speichert den umgestalteten Code, die generierten Dokumente, die zugehörigen Artefakte und die Laufzeitbibliotheken in Ihrem Amazon S3 S3-Bucket. Sie haben die folgenden Möglichkeiten:

    • Greifen Sie auf den Runtime-Ordner in Ihrem Amazon S3 S3-Bucket zu.

    • Folgen Sie beim Erstellen und Bereitstellen der Anwendung den Anweisungen zum Erstellen und Bereitstellen Ihrer modernisierten Anwendung nach dem Refactoring in der Dokumentation. AWS Transform

    • Fordern Sie über die Chat-Oberfläche ein Beispiel AWS CloudFormation oder eine Hashicorp Terraform-Vorlage an und laden Sie sie herunter. AWS Cloud Development Kit (AWS CDK) Diese Vorlagen können Ihnen dabei helfen, die AWS Ressourcen bereitzustellen, die zur Unterstützung der umgestalteten Anwendung erforderlich sind.

    • Verwenden Sie Reforge, um die Qualität von umgestaltetem Code mithilfe umfangreicher Sprachmodelle () zu verbessern. LLMs Die Refactoring-Engine bewahrt die funktionale Äquivalenz von COBOL und wandelt es gleichzeitig in Java-Code um. Reforge ist ein optionaler Schritt, der nach der Transformation verfügbar ist. In diesem Schritt wird der Code so umstrukturiert LLMs , dass er dem nativen Java sehr ähnlich ist, was die Lesbarkeit und Wartbarkeit verbessern kann. Reforge fügt außerdem menschenlesbare Kommentare hinzu, um Ihnen das Verständnis des Codes zu erleichtern, und implementiert moderne Codierungsmuster und bewährte Methoden.

Tools

AWS-Services

  • AWS Transformverwendet agentische KI, um Ihnen zu helfen, die Modernisierung älterer Workloads wie .NET, Mainframe und Workloads zu beschleunigen. VMware

  • AWS IAM Identity Centerhilft Ihnen dabei, den Single Sign-On-Zugriff (SSO) auf Ihre und Cloud-Anwendungen zentral zu verwalten. AWS-Konten

  • Amazon Simple Storage Service (Amazon S3) ist ein cloudbasierter Objektspeicherservice, der Sie beim Speichern, Schützen und Abrufen beliebiger Datenmengen unterstützt.

Code-Repository

Sie können die AWS CardDemoOpen-Source-Mainframe-Anwendung als Beispielanwendung verwenden, um mit der Mainframe-Modernisierung zu beginnen.

Bewährte Methoden

  • Klein anfangen — Beginnen Sie mit kleinem, weniger komplexem Code (15.000—20.000 Codezeilen), um zu verstehen, wie Mainframe-Anwendungen AWS Transform analysiert und transformiert werden.

  • Kombinieren Sie es mit menschlichem Fachwissen — Nutzen Sie es AWS Transform als Beschleuniger und setzen Sie gleichzeitig menschliches Fachwissen ein, um optimale Ergebnisse zu erzielen.

  • Gründlich prüfen und testen — Überprüfen Sie den transformierten Code immer sorgfältig und führen Sie umfassende Tests durch, um die funktionale Gleichwertigkeit nach der Transformation zu überprüfen.

  • Feedback geben — Um Feedback und Verbesserungsvorschläge zu geben, verwenden Sie die Schaltfläche Feedback senden im AWS Management Console oder erstellen Sie einen Fall mit. AWS -Support Weitere Informationen finden Sie unter Support-Anfrage erstellen. Ihr Beitrag ist wertvoll für Serviceverbesserungen und future Entwicklungen.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen Sie einen Bucket.

Erstellen Sie einen Amazon S3 S3-Bucket in derselben AWS-Konto Region, in der er aktiviert AWS Transform ist. Sie verwenden diesen Bucket zum Speichern des Mainframe-Anwendungscodes und AWS Transform diesen Bucket zum Speichern der generierten Dokumente, des umgestalteten Codes und anderer mit der Transformation verknüpfter Dateien. Anweisungen finden Sie in der Amazon S3 S3-Dokumentation unter Bucket erstellen.

Allgemeines AWS

Bereiten Sie die Mainframe-Beispielanwendung vor.

  1. Geben Sie den folgenden Befehl ein, um das CardDemoRepository auf Ihre lokale Workstation zu klonen:

    git clone https://github.com/aws-samples/aws-mainframe-modernization-carddemo.git

  2. Erstellen Sie einen neuen Ordner mit dem Namencarddemo.

  3. Kopieren Sie den app Ordner, der den Mainframe-Quellcode enthält, aus dem geklonten Repository in den carddemo Ordner.

  4. Komprimieren Sie den cardemo Ordner in eine ZIP-Datei.

  5. Laden Sie die ZIP-Datei in den Amazon S3 S3-Bucket hoch, den Sie erstellt haben. Anweisungen finden Sie unter Objekte hochladen in der Amazon S3 S3-Dokumentation.

App-Entwickler, Ingenieur DevOps
AufgabeBeschreibungErforderliche Fähigkeiten

Fügen Sie Benutzer zum IAM Identity Center hinzu.

Fügen Sie Ihre potenziellen Benutzer zum IAM Identity Center hinzu. Folgen Sie den Anweisungen unter Hinzufügen von Benutzern in IAM Identity Center in der AWS Transform Dokumentation.

AWS-Administrator

Benutzer aktivieren AWS Transform und hinzufügen.

  1. Aktivieren AWS Transform. Folgen Sie den Anweisungen unter Aktivieren AWS Transform.

  2. Benutzer hinzufügen zu AWS Transform. Folgen Sie den Anweisungen unter Benutzer hinzufügen zu AWS Transform.

AWS-Administrator

Konfigurieren Sie den Benutzerzugriff auf die AWS Transform Webanwendung.

Jeder Benutzer muss die Einladung annehmen, um auf die AWS Transform Webanwendung zuzugreifen. Folgen Sie den Anweisungen in der AWS Transform Dokumentation unter Annahme der Einladung.

App-Entwickler, App-Besitzer

Loggen Sie sich in die AWS Transform Webanwendung ein.

Folgen Sie den Anweisungen unter Anmelden bei AWS Transform.

App-Entwickler, App-Besitzer

Richte einen Workspace ein.

Richten Sie einen Arbeitsbereich ein, in dem Benutzer in der AWS Transform Webanwendung zusammenarbeiten können. Folgen Sie den Anweisungen unter Einrichtung Ihres Workspace in der AWS Transform Dokumentation.

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen Sie einen Transformationsjob.

Erstellen Sie einen Transformationsjob, um die CardDemo Mainframe-Anwendung zu modernisieren. Anweisungen finden Sie in der Dokumentation unter Einen Job erstellen und starten. AWS Transform Wenn Sie in der AWS Transform Chat-Oberfläche aufgefordert werden, die Ziele festzulegen, wählen Sie Mainframe-Modernisierung durchführen (IBM z/OS to AWS) und dann Code analysieren, Technische Dokumentation generieren, Geschäftslogik, Code zerlegen, Migrationssequenz planen und Code in Java umwandeln aus.

App-Entwickler, App-Besitzer

Richten Sie den Connector ein.

Richten Sie einen Connector zum Amazon S3 S3-Bucket ein, der die CardDemo Mainframe-Anwendung enthält. Dieser Konnektor ermöglicht AWS Transform den Zugriff auf Ressourcen im Bucket und die Ausführung aufeinanderfolgender Transformationsfunktionen. Anweisungen finden Sie in der AWS Transform Dokumentation unter Einen Konnektor einrichten.

AWS-Administrator

Führen Sie eine Codeanalyse durch.

  1. Geben Sie auf der Seite Asset-Standort angeben den Amazon S3 S3-Bucket-Pfad für die carddemo ZIP-Datei ein, die Sie hochgeladen haben.

  2. Wählen Sie Genehmigen und senden an AWS Transform. Es beginnt mit der Analyse des Codes.

  3. Überwachen Sie den Status auf der Registerkarte Worklog.

  4. Wenn die Analyse abgeschlossen ist, wählen Sie im linken Navigationsbereich unter Code analysieren die Option Codeanalyseergebnisse anzeigen aus.

  5. (Optional) Wählen Sie Herunterladen, um die vollständige Asset-Liste, den fehlenden Quellcode und die Abhängigkeitsdatei herunterzuladen.

Weitere Informationen finden Sie in der AWS Transform Dokumentation unter Codeanalyse.

App-Entwickler, App-Besitzer

Generieren Sie technische Dokumentation.

  1. Wählen Sie im linken Navigationsbereich unter Technische Dokumentation generieren die Option Dateien auswählen und Einstellungen konfigurieren aus.

  2. Erweitern Sie COBOL oder JCL und wählen Sie dann eine oder mehrere Dateien aus.

  3. Wählen Sie die Detailebene der Dokumentation aus:

    • Zusammenfassung — Bietet einen allgemeinen Überblick über jede Datei im Geltungsbereich. Enthält außerdem eine einzeilige Zusammenfassung der einzelnen Dateien.

    • Detaillierte Funktionsspezifikation — Enthält umfassende Informationen zu jeder Datei im Bereich der Mainframe-Anwendungstransformation. Einige Details umfassen Logik und Ablauf, identifizierte Geschäftsregeln, Datenfluss, Abhängigkeiten, Eingabe- und Ausgabeverarbeitung sowie verschiedene Transaktionsdetails.

  4. Wählen Sie Senden an AWS Transform.

  5. Überwachen Sie den Fortschritt auf der Registerkarte Worklog.

    Anmerkung

    Die Dauer der Dokumentgenerierung variiert je nach Anzahl der Dateien und Codezeilen zwischen Minuten und Stunden.

  6. Wenn Sie fertig sind, wählen Sie Dokumentationsergebnisse überprüfen aus.

  7. Greifen Sie über die Webanwendung auf das generierte Dokument zu oder laden Sie es herunter. Die generierte Dokumentation wird auch im Amazon S3 S3-Bucket gespeichert.

  8. Erkunden Sie die generierte Dokumentation, indem Sie in der Chat-Oberfläche spezifische Fragen stellen. Sie können zum Beispiel sagen: „Erzählen Sie mir die Funktionen von CBACT01C“.

Weitere Informationen finden Sie in der Dokumentation unter Generieren von technischer Dokumentation. AWS Transform

App-Entwickler, App-Besitzer

Extrahieren Sie die Geschäftslogik.

  1. Erweitern Sie im linken Navigationsbereich die Option Geschäftslogik extrahieren und wählen Sie dann Dateien für die Extraktion der Geschäftslogik auswählen aus.

  2. Erweitern Sie COBOL oder JCL, und wählen Sie dann eine oder mehrere Dateien aus.

  3. Wählen Sie Senden an. AWS Transform

  4. Überwachen Sie den Fortschritt auf der Registerkarte Worklog.

    Anmerkung

    Die Extraktionszeit für die Geschäftslogik variiert je nach Anzahl der Dateien und Codezeilen zwischen Minuten und Stunden.

  5. Wenn die Extraktion abgeschlossen ist, wählen Sie Ergebnisse der Geschäftslogik-Extraktion überprüfen aus.

  6. Wählen Sie eine COBOL- oder JCL-Datei aus, und klicken Sie dann auf Anzeigen.

  7. Ändern Sie den Umfang im Flussdiagramm und in den Funktionsregeln, um die verschiedenen Ebenen der Flussdiagramme, einschließlich des unterstützenden Codes, zu überprüfen.

  8. (Optional) Überprüfen Sie die generierte Geschäftslogik, die im JSON-Format in Ihrem Amazon S3 S3-Bucket gespeichert ist.

Weitere Informationen finden Sie in der AWS Transform Dokumentation unter Geschäftslogik extrahieren.

App-Entwickler, App-Besitzer

Zerlegen Sie den Code.

  1. Erweitern Sie im linken Navigationsbereich den Bereich Code zerlegen, und wählen Sie dann In Domänen zerlegen aus.

  2. Wählen Sie in der Liste Aktionen die Option Domäne erstellen aus.

  3. Geben Sie einen Namen für die neue Domain ein, z. Bill payment B.

  4. (Optional) Geben Sie eine Beschreibung ein.

  5. Suchen Sie in der Suchleiste „Dateien suchen“ nach der DateiCB00, und wählen Sie sie dann aus.

  6. Wählen Sie Als Startwert markieren aus.

  7. Vergewissern Sie sich, dass sich die Startkennzeichnung von Nein auf Ja ändert.

  8. Wählen Sie Erstellen aus.

  9. Wählen Sie Speichern.

  10. Wählen Sie Zerlegen.

  11. Überprüfen Sie die Dekompositionsausgabe, indem Sie den Domainnamen auswählen.

  12. Wenn die Zerlegung abgeschlossen ist, wählen Sie Senden an. AWS Transform

Weitere Informationen zu Zersetzung und Saatgut finden Sie in der Dokumentation unter Zersetzung. AWS Transform

App-Entwickler, App-Besitzer

Planen Sie die Migrationswellen.

Planen Sie die Migrationswellen für die CardDemo Anwendung. Folgen Sie den Anweisungen unter Planung der Migrationswelle in der AWS Transform Dokumentation, um den Wellenplan zu überprüfen und zu bearbeiten.

App-Entwickler, App-Besitzer

Refaktorieren Sie den Code.

  1. Refaktorieren Sie die CardDemo Mainframe-Anwendung in allen oder ausgewählten Domänendateien in Java-Code. Folgen Sie den Anweisungen unter Refactor-Code in der Dokumentation. AWS Transform

  2. Nachdem der Refactoring-Prozess abgeschlossen ist, erstellen und implementieren Sie die modernisierte Java-Anwendung. Folgen Sie den Anweisungen in der Dokumentation unter Erstellen und Bereitstellen Ihrer modernisierten Anwendung nach dem Refactoring. AWS Transform

App-Entwickler, App-Besitzer

(Optional) Verwenden Sie Reforge, um den Java-Code zu verbessern.

  1. Erstellen Sie einen neuen Job und geben Sie dann ein Ziel von Reforge the code ein.

  2. Geben Sie den Wert eines Projekts ein, das durch AWS Transform modernisiert wurde. Dieses Projekt sollte sich in Ihrem Amazon S3 S3-Bucket befinden.

  3. Geben Sie die Java-Klassenliste ein, die angibt, welche Serviceklassen neu formatiert werden sollen.

  4. Überprüfen Sie die generierte Ausgabe im Amazon S3 S3-Bucket.

Weitere Informationen finden Sie in der AWS Transform Dokumentation unter Reforge.

App-Entwickler, App-Besitzer

Rationalisieren Sie die Bereitstellung.

AWS Transform kann IaC-Vorlagen (Infrastructure as Code) für CloudFormation AWS CDK, oder Terraform bereitstellen. Diese Vorlagen helfen Ihnen bei der Bereitstellung von Kernkomponenten, einschließlich Rechen-, Datenbank-, Speicher- und Sicherheitsressourcen.

  1. Fordern AWS Transform Sie die Vorlagen in der Chat-Oberfläche an, indem Sie eingebenShare the mainframe refactor <service> templates, wo <service> sich einer der unterstützten IaC-Dienste befindet.

  2. Stellen Sie die Vorlage mithilfe Ihres bevorzugten Dienstes bereit. Sehen Sie sich zum Beispiel die folgenden Ressourcen an:

Weitere Informationen finden Sie in der Dokumentation unter Bereitstellungsfunktionen. AWS Transform

App-Entwickler, App-Besitzer

Fehlerbehebung

ProblemLösung

Sie können den Quellcode oder das generierte Dokument in der AWS Transform Webanwendung nicht anzeigen.

Fügen Sie der CORS-Berechtigung eine Richtlinie hinzu, die der Amazon S3 S3-Bucket AWS Transform als Ursprung zulassen soll. Weitere Informationen finden Sie in der Dokumentation unter CORS-Berechtigungen für den AWS Transform S3-Bucket.

Zugehörige Ressourcen

AWS Dokumentation

Andere Ressourcen AWS

Videos und Tutorials

Anmerkung

AWS Transform war zuvor als Amazon Q Developer Transform for Mainframe bekannt.