翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
を使用して CardDemo メインフレームアプリケーションをモダナイズする AWS Transform
アマゾン ウェブ サービス、サントッシュ・クマール・シンとチェリル・デュ・プレズ
概要
AWS Transform
このパターンでは、オープンソースのメインフレームアプリケーションのサンプルである CardDemo
前提条件と制限
前提条件
機能制限
AWS Transform は一部の でのみ使用できます AWS リージョン。サポートされているリージョンの完全なリストについては、「 でサポートされているリージョン AWS Transform
」を参照してください。 AWS Transform は、共通ビジネス指向言語 (COBOL) から Java へのコード分析、ドキュメント生成、ビジネスルールの抽出、分解、リファクタリングをサポートしています。詳細については、「機能と主要な機能」および「メインフレームアプリケーションの変換でサポートされているファイルタイプ」を参照してください。
のメインフレーム変換機能にはサービスクォータがあります AWS Transform。詳細については、「AWS Transformのクォータ」を参照してください。
共有ワークスペースでコラボレーションするには、すべてのユーザーが、 AWS Transform ウェブアプリケーションのインスタンス AWS IAM Identity Center に関連付けられている の同じインスタンスの登録済みユーザーである必要があります。
Amazon S3 バケット と は、同じ AWS アカウント とリージョンにある AWS Transform 必要があります。
アーキテクチャ
次の図は、このパターンで設定したアーキテクチャを示しています。

この図表は、次のワークフローを示しています:
AWS Transform はコネクタを使用して、Amazon S3 バケットに保存されている CardDemo メインフレームアプリケーションにアクセスします。
AWS Transform は AWS IAM Identity Center を使用してユーザーアクセスと認証を管理します。システムは、認証、認可、暗号化、アクセス管理のためのセキュリティコントロールの複数のレイヤーを実装し、処理中のコードとアーティファクトを保護します。ユーザーはチャットインターフェイスを介して AWS Transform エージェントとやり取りします。特定のタスクに関する指示を AI エージェントに英語で提供できます。詳細については、 AWS Transform ドキュメントの「Human in the loop (HITL)」を参照してください。
AI エージェントは、ユーザーの指示を解釈し、ジョブプランを作成し、ジョブを実行可能なタスクに分割して、自律的にアクションを実行します。ユーザーは変換を確認して承認できます。変換タスクには以下が含まれます。
コード分析 – ファイル名、ファイルタイプ、コード行、パスなどの詳細について、各ファイルのコードを AWS Transform 分析します。エージェントはソースコードを分析し、分類を実行し、依存関係マッピングを作成し、欠落しているアーティファクトを特定します。また、重複するコンポーネントも識別します。
ドキュメント生成 – メインフレームアプリケーションのドキュメント AWS Transform を生成します。コードを分析することで、レガシーシステムに存在するビジネスロジック、フロー、統合、依存関係の説明など、アプリケーションプログラムの詳細なドキュメントを自動的に作成できます。
ビジネスロジック抽出 – COBOL プログラム AWS Transform を分析してコアビジネスロジックを文書化し、基本的なビジネスロジックを理解するのに役立ちます。
コード分解 – プログラムとコンポーネント間の依存関係を考慮したドメインにコードを AWS Transform 分解します。同じドメイン内の関連ファイルとプログラムをグループ化すると、組織が改善され、より小さなコンポーネントに分割するときにアプリケーションの論理構造が保持されます。
移行ウェーブ計画 – 分解フェーズで作成したドメインに基づいて、推奨されるモダナイゼーション順序で移行ウェーブ計画 AWS Transform を生成します。
コードリファクタリング – すべてのドメインファイルまたは選択したドメインファイルのコードを Java コードに AWS Transform リファクタリングします。このステップの目的は、アプリケーションの重要なビジネスロジックを維持しながら、モダナイズされたクラウド最適化 Java アプリケーションにリファクタリングすることです。
AWS Transform は、リファクタリングされたコード、生成されたドキュメント、関連するアーティファクト、ランタイムライブラリを Amazon S3 バケットに保存します。以下の操作を行うことができます。
Amazon S3 バケットのランタイムフォルダにアクセスします。
AWS Transform ドキュメントの「モダナイズされたアプリケーションのリファクタリング後のビルドとデプロイ」に従って、アプリケーションを
ビルドおよびデプロイします。 チャットインターフェイスを使用して、サンプル AWS CloudFormation AWS Cloud Development Kit (AWS CDK)、または Hashicorp Terraform テンプレートをリクエストしてダウンロードします。これらのテンプレートは、リファクタリングされたアプリケーションをサポートするために必要な AWS リソースをデプロイするのに役立ちます。
リフォージを使用すると、大規模言語モデル (LLMs) を使用してリファクタリングされたコードの品質が向上します。リファクタリングエンジンは、COBOL を Java コードに変換しながら、COBOL の機能的同等性を維持します。リフォージは、変換後に使用できるオプションのステップです。このステップではLLMs を使用してネイティブ Java とよく似たコードを再構築します。これにより、読みやすさと保守性が向上します。Reforge は、コードを理解するのに役立つ人間が読めるコメントも追加し、最新のコーディングパターンとベストプラクティスを実装します。
ツール
AWS のサービス
AWS Transform はエージェント AI を使用して、.NET、メインフレーム、VMware ワークロードなどのレガシーワークロードのモダナイゼーションを加速します。
AWS IAM Identity Center を使用すると、 AWS アカウント およびクラウドアプリケーションへのシングルサインオン (SSO) アクセスを一元管理できます。
Amazon Simple Storage Service (Amazon S3) は、データ量にかかわらず、保存、保護、取得する上で役立つクラウドベースのオブジェクトストレージサービスです。
コードリポジトリ
オープンソースの AWS CardDemo
ベストプラクティス
小規模から始める – メインフレームアプリケーションの AWS Transform 分析と変換方法を理解するために、小規模で複雑ではないコード (15,000~20,000 行のコード) から始めます。
人間の専門知識と組み合わせる – 最適な結果を得るために人間の専門知識を適用しながら、アクセラレータ AWS Transform ーとして使用します。
レビューとテストを徹底する – 変換されたコードを注意深く確認し、包括的なテストを実行して、変換後の機能同等性を検証します。
フィードバックを提供する – 改善のためのフィードバックと提案を提供するには、 のフィードバックを送信するボタンを使用する AWS Management Console か、 でケースを作成しますAWS サポート
。詳細については、「サポートケースの作成」を参照してください。入力は、サービスの強化と将来の開発に役立ちます。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
バケットを作成します。 | AWS Transform が有効になっているのと同じ AWS アカウント およびリージョンに Amazon S3 バケットを作成します。このバケットを使用してメインフレームアプリケーションコードを保存し、このバケット AWS Transform を使用して、生成されたドキュメント、リファクタリングされたコード、および変換に関連付けられたその他のファイルを保存します。手順については、Amazon S3 ドキュメントの「バケットの作成」を参照してください。 | AWS 全般 |
サンプルメインフレームアプリケーションを準備します。 |
| アプリ開発者、DevOps エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
IAM Identity Center にユーザーを追加します。 | IAM Identity Center に見込みユーザーを追加します。 AWS Transform ドキュメントの「IAM Identity Center でのユーザーの追加」の手順に従います。 | AWS 管理者 |
ユーザーを有効に AWS Transform して追加します。 |
| AWS 管理者 |
AWS Transform ウェブアプリケーションへのユーザーアクセスを設定します。 | AWS Transform ウェブアプリケーションにアクセスするには、各ユーザーが招待を受け入れる必要があります。 AWS Transform ドキュメントの「招待を受け入れる」の手順に従います。 | アプリ開発者、アプリオーナー |
AWS Transform ウェブアプリケーションにログインします。 | 「 にサインインする AWS Transform」の手順に従います。 | アプリ開発者、アプリオーナー |
ワークスペースをセットアップします。 | ユーザーが AWS Transform ウェブアプリケーションでコラボレーションできるワークスペースを設定します。 AWS Transform ドキュメントの「ワークスペースのセットアップ」の手順に従います。 | AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
変換ジョブを作成します。 | CardDemo メインフレームアプリケーションをモダナイズする変換ジョブを作成します。手順については、 AWS Transform ドキュメントの「ジョブの作成と開始」を参照してください。 AWS Transform チャットインターフェイスで目標を設定するように求められたら、メインフレームのモダナイゼーション (IBM z/OS から へ AWS) を実行し、コードの分析、技術ドキュメントの生成、ビジネスロジック、コードの分解、移行シーケンスの計画、コードを Java に変換を選択します。 | アプリ開発者、アプリオーナー |
コネクタをセットアップします。 | CardDemo メインフレームアプリケーションを含む Amazon S3 バケットへのコネクタを確立します。このコネクタにより AWS Transform 、 はバケット内のリソースにアクセスし、連続する変換関数を実行できます。手順については、 AWS Transform ドキュメントの「コネクタのセットアップ」を参照してください。 | AWS 管理者 |
コード分析を実行します。 |
詳細については、 AWS Transform ドキュメントの「コード分析」を参照してください。 | アプリ開発者、アプリオーナー |
技術ドキュメントを生成します。 |
詳細については、 ドキュメントの「技術ドキュメントの生成」を参照してください。 AWS Transform | アプリ開発者、アプリオーナー |
ビジネスロジックを抽出します。 |
詳細については、 AWS Transform ドキュメントの「Extract business logic」を参照してください。 | アプリ開発者、アプリオーナー |
コードを分解します。 |
分解とシードの詳細については、 AWS Transform ドキュメントの「分解」を参照してください。 | アプリ開発者、アプリオーナー |
移行ウェーブを計画します。 | CardDemo アプリケーションの移行ウェーブを計画します。「 AWS Transform ドキュメント」の「移行ウェーブ計画」の指示に従って、ウェーブ計画を確認して編集します。 | アプリ開発者、アプリオーナー |
コードをリファクタリングします。 |
| アプリ開発者、アプリオーナー |
(オプション) Reforge を使用して Java コードを改善します。 |
詳細については、 AWS Transform ドキュメントの「リフォージ」を参照してください。 | アプリ開発者、アプリオーナー |
デプロイを合理化します。 | AWS Transform は、CloudFormation、 AWS CDK、または Terraform の infrastructure as code (IaC) テンプレートを提供できます。これらのテンプレートは、コンピューティング、データベース、ストレージ、セキュリティリソースなどのコアコンポーネントをデプロイするのに役立ちます。
詳細については、 AWS Transform ドキュメントの「デプロイ機能」を参照してください。 | アプリ開発者、アプリオーナー |
トラブルシューティング
問題 | ソリューション |
---|---|
AWS Transform ウェブアプリケーションでソースコードまたは生成されたドキュメントを表示できません。 | Amazon S3 バケットの CORS アクセス許可にポリシーを追加して、 をオリジン AWS Transform として許可します。詳細については、 AWS Transform ドキュメントのS3 バケット CORS アクセス許可 |
関連リソース
AWS ドキュメント
メインフレームアプリケーションの変換 (AWS Transform ドキュメント)
その他の AWS リソース
動画とチュートリアル
注記
AWS Transform は、以前はメインフレームの Amazon Q Developer 変換と呼ばれていました。