翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS Transform カスタムを使用して Easytrieve を最新の言語に変換する
Shubham Roy、Subramanyam Malisetty、Harshitha Shashidhar、Amazon Web Services
概要
このパターンは、 AWS Transform カスタム
このパターンは、EZT 変換用のすぐに使用できるカスタム変換定義を提供します。定義は複数の変換入力を使用します。
AWS Transform メインフレームに
を使用して抽出された EZT ビジネスルール EZT プログラミングリファレンスドキュメント
EZT ソースコード
メインフレーム入出力データセット
AWS Transform カスタムは、これらの入力を使用して、Java や Python などの最新のターゲット言語で機能的に同等のアプリケーションを生成します。
変換プロセスでは、インテリジェントなテスト実行、自動デバッグ、反復修正機能を使用して、期待される出力と機能的同等性を検証します。また、継続的な学習をサポートし、カスタム変換定義が連続する変換の精度と一貫性を向上させることができます。このパターンを使用すると、組織は移行の労力とリスクを軽減し、ニッチなメインフレームの技術的負債に対処し、 で EZT ワークロードをモダナイズ AWS して、俊敏性、信頼性、セキュリティ、イノベーションを向上させることができます。
前提条件と制限
前提条件
アクティブな AWS アカウント
入力データと出力データを含むメインフレーム EZT ワークロード
制限事項
スコープの制限
言語サポート – この特定の変換パターンでは、 EZT-to-Java 変換のみがサポートされています。
範囲外 – 他のメインフレームプログラミング言語の変換には、 カスタム で新しい AWS Transform カスタム変換定義が必要です。
プロセスの制限
検証の依存関係 – ベースライン出力データがないと、変換を検証できません。
独自のロジック – 高度に固有のカスタム開発ユーティリティでは、AI エージェントによって正しく解釈されるために、追加のユーザードキュメントと参考資料が必要です。
技術的な制限事項
サービスの制限 – AWS Transform カスタムサービスの制限とクォータについては、AWS Transform 「 ユーザーガイド - クォータ 」および AWS 「 全般のリファレンス - クォータの変換」を参照してください。
製品バージョン
AWS Transform CLI – 最新バージョン
Node.js – バージョン 20 以降
Git – 最新バージョン
ターゲット環境
Java – バージョン 17 以降
Spring Boot – リファクタリングされたアプリケーションのプライマリターゲットは バージョン 3.x です
Maven – バージョン 3.6 以降
アーキテクチャ
ソーステクノロジースタック
オペレーティングシステム – IBM z/OS
プログラミング言語 – Easytrieve、ジョブコントロール言語 (JCL)
データベース – IBM DB2 for z/OS、仮想ストレージアクセス方法 (VSAM)、メインフレームフラットファイル
ターゲットテクノロジースタック
オペレーティングシステム – Amazon Linux
コンピューティング – Amazon Elastic Compute Cloud (Amazon EC2)
プログラミング言語 – Java
Database Amazon Relational Database Service (Amazon RDS)
ターゲットアーキテクチャ

ワークフロー
このソリューションでは、 AWS Transform カスタムlanguage-to-language移行変換パターンを使用して、メインフレーム Easytrieve (EZT) アプリケーションを 4 ステップの自動ワークフローを通じて Java にモダナイズします。
ステップ 1 – Mainframe AWS Transform の にレガシーコード を指定します。
コードを分析する
高レベルのビジネスロジックを抽出します
詳細なビジネスロジックを抽出します。
ステップ 2 – 必要な入力を含むフォルダを作成します。
メインフレーム AWS Transform に を使用して抽出された EZT ビジネスルール
EZT プログラミングリファレンスドキュメント
EZT ソースコード
メインフレーム入出力データセット
ステップ 3 – カスタム変換定義を作成して実行する
AWS Transform CLI を使用して自然言語で変換の目的を記述します。 AWS Transform custom は BRE、ソースコード、および EZT プログラミングガイドを分析し、開発者によるレビューと承認のためのカスタム変換定義を生成します。
次に、プロジェクトソースコードを使用して AWS Transform CLI を呼び出します。 AWS Transform custom は変換プランを作成し、承認時に EZT を Java に変換し、サポートファイルを生成して、実行可能 JAR を構築し、終了基準を検証します。
検証エージェントを使用して、メインフレーム出力に対する 機能同等性をテストします。セルフデバッガーエージェントは問題を自動的に修正します。最終的な成果物には、検証済みの Java コードと HTML 検証レポートが含まれます。
自動化とスケール
エージェント AI マルチモード実行アーキテクチャ – AWS Transform カスタムは、3 つの実行モード (対話型、インタラクティブ、完全オートメーション) を持つエージェント AI を活用して 、コード分析、リファクタリング、変換計画、テストなどの複雑な変換タスクを自動化します。
アダプティブラーニングフィードバックシステム – プラットフォームは、コードサンプル分析、ドキュメント解析、および開発者フィードバックとバージョニングされた変換定義の統合を通じて、継続的な学習メカニズムを実装します。
同時アプリケーション処理アーキテクチャ – このシステムでは、スケーラブルなインフラストラクチャ間で複数のアプリケーション変換オペレーションを同時に分散並列実行できます。
ツール
AWS のサービス
AWS Transform custom は、従来の EZT アプリケーションを最新のプログラミング言語に変換するために使用されるエージェント AI サービスです。
AWS Transform はエージェンティック AI を使用して、.NET、メインフレーム、VMware ワークロードなどのレガシーワークロードのモダナイズを加速します。
AWS Transform メインフレームの は、 レガシー EZT アプリケーションを分析して埋め込みビジネスロジックを抽出し、ロジックの概要、頭字語の定義、構造化されたナレッジベースなど、包括的なビジネスルールドキュメントを生成するために使用されます。これらは AWS Transform カスタムの入力データとして機能します。
Amazon Simple Storage Service (Amazon S3) は、あらゆる量のデータを保存、保護、取得できるクラウドベースのオブジェクトストレージサービスです。Amazon S3 は、変換定義、コードリポジトリ、および処理結果を保存するための AWS Transform カスタムのプライマリストレージサービスとして機能します。
AWS Identity and Access Management (IAM) は、誰を認証し、誰に使用する権限を付与するかを制御することで、 AWS リソースへのアクセスを安全に管理するのに役立ちます。IAM は、変換オペレーションのアクセス許可とアクセスコントロールを管理する AWS Transform カスタムのセキュリティフレームワークを提供します。
その他のツール
AWS Transform CLI は AWS Transform カスタムのコマンドラインインターフェイスであり、開発者は自然言語の会話と自動実行モードを通じてカスタムコード変換を定義、実行、管理できます。 AWS Transform custom は、コードベースのスケーラブルなモダナイゼーションのためのインタラクティブセッション (atx custom def exec) と自律変換の両方をサポートしています。
自動修正アプリケーション中のブランチ保護、変更追跡、ロールバック機能に使用される Git
バージョン管理システム。 「Java
」 はこのパターンで使用されるプログラミング言語ならびに開発環境です。
コードリポジトリ
このパターンのコードは、GitHub の Easytrieve to Modern Languages Transformation with AWS Transform Custom
ベストプラクティス
標準化されたプロジェクト構造を確立する – 変換前に 4 つのフォルダ構造 (source-code、bre-doc、input-data、output-data) を作成し、完全性を検証し、その内容を文書化します。
検証にベースラインファイルを使用する – 本番稼働用ベースライン入力ファイルを使用し、ベースライン出力とのbyte-by-byte比較を実行し、偏差に対するゼロトレランスを受け入れます。
利用可能なすべてのリファレンスドキュメントを使用する – 変換の精度を高めるには、ビジネス要件やコーディングチェックリストなど、利用可能なすべてのリファレンスドキュメントを提供します。
品質向上のための入力を提供する – AWS Transform カスタムは、変換実行から学習を自動的に抽出し (開発者のフィードバック、コードの問題)、ナレッジ項目を作成します。変換が成功するたびに、ナレッジ項目を確認し、将来の実行で使用する項目を承認します。これにより、将来の変換の品質が向上します。
エピック
| タスク | 説明 | 必要なスキル |
|---|---|---|
メインフレーム AWS Transform 用に を設定します。 | メインフレームのモダナイゼーションワークフローをサポートするために、環境と必要な AWS Identity and Access Management (IAM) アクセス許可を設定します。詳細については、 AWS ドキュメントの「メインフレームアプリケーションの変換」を参照してください。 | アプリ開発者 |
ビジネスルール抽出 (BRE) ドキュメントを生成します。 | ソース EZT または COBOL コードからビジネスロジックを抽出して、機能ドキュメントを生成します。抽出プロセスを開始し、出力を確認する方法については、 AWS Transform ドキュメントの「Extract business logic」を参照してください。 | アプリ開発者 |
| タスク | 説明 | 必要なスキル |
|---|---|---|
AWS Transform カスタム用にインフラストラクチャをプロビジョニングします。 | 安全な変換環境をホストするために必要な本番環境対応のインフラストラクチャをデプロイします。これには、Easytrieve コードを変換するために必要なツール、IAM アクセス許可、ネットワーク設定で設定されたプライベート Amazon EC2 インスタンスが含まれます。Infrastructure as Code (IaC) を使用して環境をプロビジョニングするには、Easytrieve to Modern Languages Transformation with AWS Transform Custom | アプリ開発者、AWS 管理者 |
変換用の入力マテリアルを準備します。 |
| アプリ開発者 |
| タスク | 説明 | 必要なスキル |
|---|---|---|
変換定義を作成します。 | 以下の手順に従って、機能検証による EZT から Java への変換のカスタム変換定義を作成します。
| アプリ開発者 |
変換定義を発行します。 | 変換定義を確認して検証したら、自然言語プロンプトを使用してカスタムレジストリに AWS Transform 発行し、Easytrieve-to-Java-Migration などの定義名を指定できます。 | アプリ開発者 |
| タスク | 説明 | 必要なスキル |
|---|---|---|
変換検証の概要を確認します。 | カスタム変換を実行する AWS Transform 前に、メインフレームバッチジョブの実行前にキャプチャされた必要なデータファイルがフォルダに含まれていることを確認します
| アプリ開発者 |
カスタム変換ジョブを実行します。 | AWS Transform CLI コマンドを実行し、非インタラクティブまたはインタラクティブオプションを選択します。
AWS Transform は、変換の実行中にビルド/テストコマンドを使用して を自動的に検証します。 | アプリ開発者 |
| タスク | 説明 | 必要なスキル |
|---|---|---|
変換検証の概要を確認します。 |
| アプリ開発者 |
検証レポートにアクセスします。 | 以下のコマンドを入力して、詳細な検証アーティファクトを確認します。
| アプリ開発者 |
継続的な学習のためにナレッジ項目を有効にします。 | 提案されたナレッジ項目を永続的な設定に昇格させることで、将来の変換精度を向上させます。変換後、エージェントは識別されたパターンとマッピングルールをローカルセッションディレクトリに保存します。これらの学習した項目を確認して適用するには、Amazon EC2 インスタンスで次のコマンドを実行します。
| アプリデベロッパー |
トラブルシューティング
| 問題 | ソリューション |
|---|---|
入力パスと出力パスの設定 入力ファイルが読み取られていないか、出力ファイルが正しく書き込まれていません。 | 入力ファイルが保存される完全なディレクトリパスを指定し、出力を書き込む場所を明確に指定します。これらのディレクトリに適切なアクセス許可が設定されていることを確認します。 ベストプラクティスには、相対パスではなく絶対パスを使用してあいまいさを回避し、指定されたすべてのパスが適切な読み取り/書き込みアクセス許可で存在することを確認することが含まれます。 |
中断された実行の再開 実行が中断されたか、停止した場所から続行する必要があります | CLI コマンドで会話 ID を指定することで、中断した場所から実行を再開できます。 前回の実行試行のログで会話 ID を見つけます。 |
メモリ制約の解決 実行中にメモリ不足エラーが発生します。 | 現在のインメモリ JVM サイズを共有し、この情報に基づいてメモリ割り当てを増やす AWS Transform ように に依頼できます。この調整は、より大きな処理要件に対応するのに役立ちます。 調整後もメモリ制約が続く場合は、大きなジョブを小さなバッチに分割することを検討してください。 |
出力ファイルの不一致に対処する 出力ファイルが期待と一致しず、これ以上の変更ができない AWS Transform ことを示します。 | 現在の出力が正しくない理由を説明する具体的なフィードバックと技術的な理由を提供します。要件をサポートするために、追加の技術またはビジネスドキュメントを含めます。この詳細なコンテキストは AWS Transform 、コードを修正して適切な出力ファイルを生成するのに役立ちます。
|
関連リソース
アタッチメント
このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「attachment.zip」