本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用实现 CardDemo 大型机应用程序的现代化 AWS Transform
Santosh Kumar Singh 和 Cheryl du Preez,Amazon Web Services
摘要
AWS Transform
此模式提供了 step-by-step一些说明,可帮助您 AWS Transform 通过使用来测试大型机现代化功能 CardDemo
先决条件和限制
先决条件
活跃的 AWS 账户
AWS IAM Identity Center,已启用
允许管理员启用的@@ 权限 AWS Transform
允许管理员接受 Web 应用程序的亚马逊简单存储服务 (Amazon S3) Semple Service 连接请求的@@ AWS Transform 权限
限制
AWS Transform 仅在某些版本中可用 AWS 区域。有关支持的区域的完整列表,请参阅支持的区域 AWS Transform
。 AWS Transform 支持代码分析、文档生成、业务规则提取、分解以及从面向业务的通用语言 (COBOL) 重构到 Java。有关更多信息,请参阅功能和主要特性以及支持的大型机应用程序转换文件类型。
中有一个大型机转换功能的服务配额。 AWS Transform有关更多信息,请参阅 AWS Transform配额。
要在共享工作区上进行协作,所有用户都必须是与您 AWS IAM Identity Center 的 AWS Transform Web 应用程序实例关联的相同实例的注册用户。
Amazon S3 存储桶和 AWS Transform 必须位于相同的 AWS 账户 区域中。
架构
下图显示了您在此模式中设置的架构。

图表显示了以下工作流:
AWS Transform 使用连接器访问存储在 Amazon S3 存储桶中的 CardDemo 大型机应用程序。
AWS Transform AWS IAM Identity Center 用于管理用户访问和身份验证。该系统对身份验证、授权、加密和访问管理实施了多层安全控制,以帮助在处理过程中保护代码和工件。用户通过聊天界面与 AWS Transform 代理互动。您可以用英语向 AI 代理提供有关特定任务的说明。有关更多信息,请参阅 AWS Transform 文档中的人为循环 (HITL)。
AI 代理解释用户的指令,创建工作计划,将任务划分为可执行的任务,然后自动对其进行操作。用户可以查看和批准转换。转换任务包括以下内容:
代码分析 — AWS Transform 分析每个文件中的代码,了解文件名、文件类型、代码行及其路径等详细信息。代理分析源代码、运行分类、创建依赖关系映射并识别任何缺失的工件。它还能识别重复的组件。
文档生成-为大型机应用程序 AWS Transform 生成文档。通过分析代码,它可以自动创建应用程序的详细文档,包括对旧系统中存在的业务逻辑、流程、集成和依赖关系的描述。
业务逻辑提取 — AWS Transform 分析 COBOL 程序以记录其核心业务逻辑,从而帮助您了解基本的业务逻辑。
代码分解 — 将代码分 AWS Transform 解为考虑程序和组件之间依赖关系的域。将相关文件和程序分组到同一个域中可以改善组织性,并有助于在将应用程序分解为较小的组件时保留其逻辑结构。
迁移浪潮规划 — 根据您在分解阶段创建的域, AWS Transform 生成带有建议现代化顺序的迁移浪潮计划。
代码重构 — 将所有或选定域文件中的代码 AWS Transform 重构为 Java 代码。此步骤的目标是保留应用程序的关键业务逻辑,同时将其重构为经过云优化的现代化 Java 应用程序。
AWS Transform 将重构后的代码、生成的文档、关联的项目和运行时库存储在您的 Amazon S3 存储桶中。您可执行以下操作:
访问您的 Amazon S3 存储桶中的运行时文件夹。
按照文档中的 “构建和部署现代化应用程序重构后” 来构建和部署应用程序
。 AWS Transform 通过聊天界面,请求并下载样本 AWS CloudFormation AWS Cloud Development Kit (AWS CDK)、或 Hashicorp Terraform 模板。这些模板可以帮助您部署支持重构后的应用程序所需的 AWS 资源。
使用 Reforge 通过使用大型语言模型来提高重构代码的质量 ()。LLMs在将 COBOL 转换为 Java 代码时,重构引擎保留了 COBOL 的功能等效性。Reforge 是一个可选步骤,可在转换后使用。此步骤用于重构代码 LLMs ,使其与原生 Java 非常相似,这样可以提高可读性和可维护性。Reforge 还添加了人类可读的注释来帮助您理解代码,它还实现了现代编码模式和最佳实践。
工具
AWS 服务
AWS Transform使用 agentic AI 来帮助您加快传统工作负载(例如.NET、大型机和工作负载)的现代化。 VMware
AWS IAM Identity Center帮助您集中管理对您的应用程序 AWS 账户 和云应用程序的单点登录 (SSO) 访问权限。
Amazon Simple Storage Service (Amazon S3) 是一项基于云的对象存储服务,可帮助您存储、保护和检索任意数量的数据。
代码存储库
您可以将开源 AWS CardDemo
最佳实践
操作说明
Task | 描述 | 所需技能 |
---|---|---|
创建存储桶。 | 在启用该功能的相同 AWS 账户 区域中创建 Amazon S3 存储桶。 AWS Transform 您可以使用此存储桶存储大型机应用程序代码,并 AWS Transform 使用此存储桶存储生成的文档、重构后的代码以及与转换相关的其他文件。有关说明,请参阅 Amazon S3 文档中的创建存储桶。 | 常规 AWS |
准备大型机应用程序示例。 | 应用程序开发者、 DevOps 工程师 |
Task | 描述 | 所需技能 |
---|---|---|
将用户添加到 IAM 身份中心。 | 将您的潜在用户添加到 IAM 身份中心。按照 AWS Transform 文档中在 IAM 身份中心添加用户中的说明进行操作。 | AWS 管理员 |
启用 AWS Transform 和添加用户。 |
| AWS 管理员 |
配置用户对 AWS Transform Web 应用程序的访问权限。 | 每个用户都必须接受访问该 AWS Transform Web 应用程序的邀请。按照 AWS Transform 文档中接受邀请中的说明进行操作。 | 应用程序开发人员、应用程序所有者 |
登录 AWS Transform Web 应用程序。 | 按照登录中的说明进行操作 AWS Transform。 | 应用程序开发人员、应用程序所有者 |
设置工作区。 | 设置一个用户可以在 AWS Transform Web 应用程序中进行协作的工作区。按照 AWS Transform 文档中设置工作空间中的说明进行操作。 | AWS 管理员 |
Task | 描述 | 所需技能 |
---|---|---|
创建转换作业。 | 创建转型任务以实现 CardDemo 大型机应用程序的现代化。有关说明,请参阅 AWS Transform 文档中的创建和启动作业。当要求你在 AWS Transform 聊天界面中设置目标时,选择执行大型机现代化(IBM z/OS 到 AWS),然后选择分析代码、生成技术文档、业务逻辑、分解代码、规划迁移顺序和将代码转换为 Java。 | 应用程序开发人员、应用程序所有者 |
设置连接器。 | 建立指向包含 CardDemo 大型机应用程序的 Amazon S3 存储桶的连接器。此连接器 AWS Transform 允许访问存储桶中的资源并执行连续的转换功能。有关说明,请参阅 AWS Transform 文档中的设置连接器。 | AWS 管理员 |
执行代码分析。 |
有关更多信息,请参阅 AWS Transform 文档中的代码分析。 | 应用程序开发人员、应用程序所有者 |
生成技术文档。 |
有关更多信息,请参阅文档中的生成技术 AWS Transform 文档。 | 应用程序开发人员、应用程序所有者 |
提取业务逻辑。 |
有关更多信息,请参阅 AWS Transform 文档中的提取业务逻辑。 | 应用程序开发人员、应用程序所有者 |
分解代码。 |
有关分解和种子的更多信息,请参阅文档中的AWS Transform 分解。 | 应用程序开发人员、应用程序所有者 |
规划迁移浪潮。 | 规划 CardDemo 应用程序的迁移浪潮。按照 AWS Transform 文档中迁移浪潮规划中的说明查看和编辑波浪计划。 | 应用程序开发人员、应用程序所有者 |
重构代码。 |
| 应用程序开发人员、应用程序所有者 |
(可选)使用 Reforge 来改进 Java 代码。 |
有关更多信息,请参阅 AWS Transform 文档中的 Reforge。 | 应用程序开发人员、应用程序所有者 |
简化部署。 | AWS Transform 可以为 CloudFormation、 AWS CDK或 Terraform 提供基础设施即代码 (IaC) 模板。这些模板可帮助您部署核心组件,包括计算、数据库、存储和安全资源。
有关更多信息,请参阅 AWS Transform 文档中的部署功能。 | 应用程序开发人员、应用程序所有者 |
故障排除
事务 | 解决方案 |
---|---|
您无法在 AWS Transform Web 应用程序中查看源代码或生成的文档。 | 在 Amazon S3 存储桶的 CORS 权限中添加一项策略以允许其 AWS Transform 作为源。有关更多信息,请参阅 AWS Transform 文档中的 S3 存储桶 CORS 权限 |
相关资源
AWS 文档
大型机应用程序的转型(AWS Transform 文档)
其他 AWS 资源
视频和教程
Amazon Q 开发者简介:转型
(AWS 技能生成器) AWS re: Invent 2024-使用 Amazon Q Developer 更快地实现大型机应用程序的现代化
() YouTube AWS re: Invent 2024-自动化迁移和现代化
以加快转型 () YouTube AWS re: Invent 2024-丰田利用一代人工智能推动创新并提高运营效率
() YouTube
注意
AWS Transform 以前被称为 Amazon Q 大型机开发人员转换。