00:00:00Lassen Sie uns erkunden,
00:00:01wie Entwickler Cloud Code nutzen können,
00:00:03um eine COBOL-Codebasis zu modernisieren.
00:00:05Für diese Demo verwenden wir AWS' Mainframe Modernization Demo Repository.
00:00:11Dies ist ein mittelgroßes Kreditkartenverwaltungssystem mit etwa 100 Dateien,
00:00:16einschließlich COBOL-Programme,
00:00:17Copybooks und JCL-Skripte.
00:00:19Phase 1 - Entdeckung und Dokumentation Unsere COBOL-Codebasis hat fast keine Dokumentation.
00:00:25Dies ist natürlich typisch für Legacy-Codebases,
00:00:28in denen kritische Geschäftslogik und behördliche Anforderungen in undokumentiertem Code eingebettet sind,
00:00:33die Entwickler,
00:00:34die den Code geschrieben haben,
00:00:35haben die Organisation längst verlassen,
00:00:37und COBOL-Entwickler sind schwer zu rekrutieren.
00:00:40Wir haben zunächst einen spezialisierten Subagentem mit Cloud Codes /agent-Befehl erstellt.
00:00:44Dies war unser COBOL-Dokumentations- und Übersetzungsexperte.
00:00:47Subagenten können von Cloud Code parallel aufgerufen werden und arbeiten mit ihren eigenen isolierten Kontextfenstern,
00:00:54um den Hauptthread nicht zu beeinträchtigen.
00:00:56Wir aktivierten den Thinking Mode und baten Cloud Code,
00:00:59die Architektur der Codebasis zu analysieren.
00:01:01Cloud Code erstellte eine Aufgabenliste aller 94 Dateien und verfolgte seinen Fortschritt,
00:01:05um sicherzustellen,
00:01:06dass keine Dateien zweimal verarbeitet und nichts übersehen wurde.
00:01:09Die von Cloud Code erstellte Dokumentation ging über einfache Code-Kommentare hinaus.
00:01:13Schauen Sie sich zum Beispiel das Zinsberechnungsprogramm CBACT04C an.
00:01:20Es extrahierte den vollständigen Geschäftsworkflow: wie das Programm Transaktionskategoriesalden liest,
00:01:26Zinssätze nach Kontogruppe nachschlägt,
00:01:28Geschäftsregeln für Fallback-Sätze anwendet und Kontodatensätze aktualisiert.
00:01:33Cloud Code tat dies für jede Datei,
00:01:35erstellte aber auch zwei Memory-Dateien als Klartext.
00:01:39Catalog.txt übersetzt kryptische Namen wie CBACT04C in Zinsrechner-Batch-Programm.
00:01:48Relationships.txt kartiert jede Abhängigkeit in einem einfachen,
00:01:53Pipe-getrennten Format.
00:01:55Mit diesen Indizes generierte Cloud Code dann Mermaid-Diagramme - eine vollständige Karte des täglichen Batch-Processing-Workflows - und zeigte,
00:02:03wie Daten von der Transaktionseingabe über Buchung,
00:02:05Zinsberechnung bis hin zu Kundenkontoauszügen fließen.
00:02:08In dieser Demo lief Cloud Code kontinuierlich eine Stunde lang,
00:02:12um über 100 Seiten Dokumentation zu entwürfen,
00:02:15aber Cloud Code ist in der Lage,
00:02:16über 30 Stunden lang autonom zu laufen,
00:02:19und die hier verwendeten Techniken skalieren auf viel,
00:02:22viel größere Codebases.
00:02:23Phase 2.
00:02:24Migration und Verifizierung.
00:02:26Nach gründlicher Dokumentation der COBOL-Codebasis baten wir Cloud Code,
00:02:29eine ihrer Kernfunktionen zu Java zu migrieren.
00:02:31Wir wechselten in den Planning Mode,
00:02:33um sicherzustellen,
00:02:34dass Cloud Code die gesamte Migrationsstrategie durchdenken würde,
00:02:37ohne Dateien vorzeitig zu bearbeiten.
00:02:39Cloud Code analysierte das früher bekannte Programm CBACT04C und identifizierte komplexe COBOL-Muster wie Zeilenumbruchverarbeitung und Multi-File-Koordination.
00:02:50Cloud Code entwickelte einen Migrationsplan für diese Funktion mit fünf Phasen.
00:02:541.
00:02:55Projektstruktur erstellen.
00:02:562.
00:02:57Datenmodelle von Copybooks in Java-Klassen übersetzen.
00:02:593.
00:03:00I/O-Schicht erstellen,
00:03:01die mit den ursprünglichen Dateiformaten kompatibel ist.
00:03:044.
00:03:05Geschäftslogik konvertieren,
00:03:06während COBOL-spezifisches Verhalten beibehalten wird.
00:03:08Und schließlich einen dualen Test-Harness erstellen,
00:03:11einen mit GNU COBOL 3.2.0 für die ursprüngliche Codebasis und einen in Java 17.
00:03:17Der resultierende Java-Code ging über eine einfache Syntax-Übersetzung hinaus.
00:03:20Cloud Code erstellte ordnungsgemäße Java-Klassen mit angemessenen Design-Patterns,
00:03:24Fehlerbehandlung und Logging.
00:03:25Idiomatisches Java,
00:03:27das ein modernes Entwicklungsteam tatsächlich warten würde.
00:03:30Nächster Schritt war die Verifizierung,
00:03:32um sicherzustellen,
00:03:33dass der neue Java-Code genauso funktioniert wie der COBOL-Code,
00:03:36den er ersetzte.
00:03:37Cloud Code erstellte mehrere Test-Datendateien und lief diese gegen sowohl den Original-COBOL als auch die neuen Programme.
00:03:43Die Verifikation verglich nicht nur die endgültigen Ausgaben,
00:03:46sondern auch Zwischenberechnungen,
00:03:48Dateischreiben und Datentransformationen.
00:03:50Das Ergebnis war perfekte Bit-für-Bit-Treue.
00:03:53Jede Berechnung,
00:03:54Geschäftsregel und Grenzfall wurde beibehalten.
00:03:57Natürlich ist diese Demo-Anwendung viel kleiner als Ihre Legacy-COBOL-Codebases.
00:04:02Aber alle Techniken hier sind skalierbar.
00:04:04Cloud Code wird Ihren Entwicklern ermöglichen,
00:04:07Codebases mit einer Sicherheit und Effizienz zu modernisieren,
00:04:10die vor nur 12 Monaten einfach unmöglich gewesen wäre.