

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Modernize o aplicativo de CardDemo mainframe usando AWS Transform
<a name="modernize-carddemo-mainframe-app"></a>

*Santosh Kumar Singh e Cheryl du Preez, Amazon Web Services*

## Resumo
<a name="modernize-carddemo-mainframe-app-summary"></a>

O [AWS Transform](https://docs.aws.amazon.com/transform/latest/userguide/what-is-service.html) foi projetado para acelerar a modernização das aplicações de mainframe. Ele usa IA generativa para agilizar o processo de modernização do mainframe. Ele automatiza tarefas complexas, como: análise de código legado, documentação de mainframe, extração de regras de negócios, decomposição de aplicações monolíticas em domínio comercial e refatoração de código. Ele acelera os projetos de modernização automatizando tarefas complexas, como análise de aplicações e planejamento da sequência de migração. Ao decompor aplicativos monolíticos, sequencia de AWS Transform forma inteligente a transformação do aplicativo de mainframe, o que ajuda você a transformar as funções de negócios em paralelo. AWS Transform pode acelerar a tomada de decisões e aprimorar a agilidade operacional e a eficiência da migração.

Esse padrão oferece step-by-step instruções para ajudá-lo a testar os recursos de modernização do mainframe AWS Transform usando [CardDemo](https://github.com/aws-samples/aws-mainframe-modernization-carddemo), que é um exemplo de aplicativo de mainframe de código aberto.

## Pré-requisitos e limitações
<a name="modernize-carddemo-mainframe-app-prereqs"></a>

**Pré-requisitos **
+ Um ativo Conta da AWS
+ Centro de Identidade do AWS IAM, [habilitado](https://docs.aws.amazon.com/singlesignon/latest/userguide/enable-identity-center.html)
+ [Permissões](https://docs.aws.amazon.com/transform/latest/userguide/security_iam_id-based-policy-examples.html#id-based-policy-examples-admin-enable-transform) que permitem que os administradores habilitem AWS Transform
+ [Permissões](https://docs.aws.amazon.com/transform/latest/userguide/security_iam_id-based-policy-examples.html#id-based-policy-examples-admin-connector) que permitem que os administradores aceitem solicitações de conexão do Amazon Simple Storage Service (Amazon S3) para o aplicativo web AWS Transform 

**Limitações**
+ AWS Transform está disponível apenas em alguns Regiões da AWS. Para obter uma lista completa das regiões aceitar, consulte [Supported Regions for AWS Transform](https://docs.aws.amazon.com/transform/latest/userguide/regions.html).
+ AWS Transform suporta análise de código, geração de documentos, extração de regras de negócios, decomposição e refatoração da Common Business-Oriented Language (COBOL) para Java. Para obter mais informações, consulte [Capabilities and key features](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe.html#transform-app-mainframe-features) e [Supported file types for transformation of mainframe applications](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe.html#transform-app-mainframe-supported-files).
+ Há uma cota de serviço para recursos de transformação de mainframe no AWS Transform. Para mais informações, consulte [Cotas para o AWS Transform](https://docs.aws.amazon.com/transform/latest/userguide/transform-limits.html).
+ Para colaborar em um espaço de trabalho compartilhado, todos os usuários devem ser usuários registrados da mesma instância associada à sua instância do aplicativo AWS Transform web. Centro de Identidade do AWS IAM 
+ O bucket do Amazon S3 AWS Transform deve estar na mesma região Conta da AWS .

## Arquitetura
<a name="modernize-carddemo-mainframe-app-architecture"></a>

O diagrama a seguir mostra a arquitetura que é configurada neste padrão.

![\[Usar o AWS Transform para modernizar uma aplicação de mainframe que é armazenada em um bucket do Amazon S3.\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/images/pattern-img/0e539474-b733-452d-b0fb-6b3f4cbd5075/images/75be6d78-5b43-448c-ad07-bf74b9ae14ad.png)


O diagrama mostra o seguinte fluxo de trabalho:

1. AWS Transform usa um conector para acessar o aplicativo de CardDemo mainframe, que é armazenado em um bucket do Amazon S3.

1. AWS Transform usa Centro de Identidade do AWS IAM para gerenciar o acesso e a autenticação do usuário. O sistema implementa várias camadas de controles de segurança para autenticação, autorização, criptografia e gerenciamento de acesso para ajudar a proteger códigos e artefatos durante o processamento. Os usuários interagem com o AWS Transform agente por meio de uma interface de bate-papo. Você pode fornecer instruções ao agente de IA para tarefas específicas em inglês. Para obter mais informações, consulte [Human in the loop (HITL)](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe.html#transform-app-mainframe-hitl) na AWS Transform documentação.

1. O agente de IA interpreta as instruções do usuário, cria um plano de trabalho, divide o trabalho em tarefas executáveis e o executa de forma autônoma. Os usuários podem revisar e aprovar a transformação. As tarefas de transformação incluem o seguinte:
   + **Análise de código** — AWS Transform analisa o código em cada arquivo para obter detalhes como nome do arquivo, tipo de arquivo, linhas de código e seus caminhos. O agente analisa o código-fonte, executa classificações, cria mapeamentos de dependências e identifica quaisquer artefatos ausentes. Ele também identifica componentes duplicados.
   + **Geração de documentos** — AWS Transform gera documentação para o aplicativo de mainframe. Ao analisar o código, ele pode criar automaticamente uma documentação detalhada dos programas de aplicações, incluindo descrições da lógica de negócios, fluxos, integrações e dependências presentes em seus sistemas legados.
   + **Extração da lógica de negócios** — AWS Transform analisa os programas COBOL para documentar sua lógica de negócios principal, para ajudá-lo a entender a lógica comercial fundamental.
   + **Decomposição de código** — AWS Transform decompõe o código em domínios que respondem pelas dependências entre programas e componentes. O agrupamento de arquivos e programas relacionados no mesmo domínio melhora a organização e ajuda a preservar a estrutura lógica da aplicação ao dividi-la em componentes menores.
   + **Planejamento da onda de migração** — Com base nos domínios que você criou durante a fase de decomposição, AWS Transform gera um plano de onda de migração com a ordem de modernização recomendada.
   + **Refatoração de código — AWS Transform refatora** o código em todos os arquivos de domínio ou em arquivos de domínio selecionados em código Java. O objetivo dessa etapa é preservar a lógica comercial essencial da aplicação e, ao mesmo tempo, refatorá-la em uma aplicação Java modernizada e otimizada para a nuvem.

1. AWS Transform armazena o código refatorado, os documentos gerados, os artefatos associados e as bibliotecas de tempo de execução em seu bucket do Amazon S3. Você pode fazer o seguinte:
   + Acesse a pasta de runtime no bucket do Amazon S3.
   + Crie e implante o aplicativo seguindo a seção [Criar e implantar seu aplicativo modernizado após a refatoração](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow-build-deploy.html) na documentação. AWS Transform 
   + Por meio da interface de bate-papo, solicite e baixe uma amostra AWS CloudFormation ou modelo do Hashicorp Terraform. AWS Cloud Development Kit (AWS CDK) Esses modelos podem ajudá-lo a implantar os AWS recursos necessários para dar suporte ao aplicativo refatorado.
   + Use o [Reforge](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-refactor-code-reforge) para melhorar a qualidade do código refatorado usando modelos de linguagem grandes (). LLMs O mecanismo de refatoração preserva a equivalência funcional do COBOL enquanto o transforma em código Java. O Reforge é uma etapa opcional que está disponível após a transformação. Essa etapa é usada LLMs para reestruturar o código para que se pareça muito com o Java nativo, o que pode melhorar a legibilidade e a capacidade de manutenção. O Reforge também adiciona comentários legíveis para ajudar você a entender o código e implementa padrões de codificação modernos e práticas recomendadas.

## Ferramentas
<a name="modernize-carddemo-mainframe-app-tools"></a>

**Serviços da AWS**
+ [AWS Transform](https://docs.aws.amazon.com/transform/latest/userguide/what-is-service.html)usa IA agente para ajudá-lo a acelerar a modernização de cargas de trabalho legadas, como.NET, mainframe e cargas de trabalho. VMware 
+ [Centro de Identidade do AWS IAM](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)ajuda você a gerenciar centralmente o acesso de login único (SSO) aos seus Contas da AWS aplicativos e à nuvem.
+ O [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) é um serviço de armazenamento de objetos baseado na nuvem que ajuda você a armazenar, proteger e recuperar qualquer quantidade de dados.

**Repositório de código**

Você pode usar o aplicativo de AWS [CardDemo](https://github.com/aws-samples/aws-mainframe-modernization-carddemo)mainframe de código aberto como um aplicativo de exemplo para começar a modernizar o mainframe.

## Práticas recomendadas
<a name="modernize-carddemo-mainframe-app-best-practices"></a>
+ **Comece pequeno** — comece com um código pequeno e menos complexo (15.000 a 20.000 linhas de código) para entender como AWS Transform analisa e transforma aplicativos de mainframe.
+ **Combine com a experiência humana** — Use AWS Transform como um acelerador enquanto aplica a experiência humana para obter os melhores resultados.
+ **Revise e teste minuciosamente**: sempre revise cuidadosamente o código transformado e execute testes abrangentes para validar a equivalência funcional após a transformação.
+ **Forneça feedback** — Para fornecer feedback e sugestões de melhoria, use o botão **Enviar feedback** no Console de gerenciamento da AWS ou crie um caso com [AWS Support](https://support.console.aws.amazon.com/). Para obter mais informações, consulte [Criar um caso de suporte](https://docs.aws.amazon.com/awssupport/latest/user/case-management.html). Sua opinião é valiosa para aprimoramentos de serviços e desenvolvimento futuro.

## Épicos
<a name="modernize-carddemo-mainframe-app-epics"></a>

### Preparar a aplicação de mainframe
<a name="prepare-the-mainframe-application"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Crie um bucket. | Crie um bucket do Amazon S3 na mesma Conta da AWS região em que AWS Transform está habilitado. Você usa esse bucket para armazenar o código do aplicativo de mainframe e AWS Transform usa esse bucket para armazenar os documentos gerados, o código refatorado e outros arquivos associados à transformação. Para obter instruções, consulte [Criação de um bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) na documentação do Amazon S3. | AWS geral | 
| Prepare a amostra da aplicação de mainframe. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html) | Desenvolvedor de aplicativos, DevOps engenheiro | 

### Configurar o IAM Identity Center e AWS Transform
<a name="configure-sso-and-trn"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Adicione usuários ao Centro de Identidade do IAM. | Adicione seus usuários em potencial ao Centro de Identidade do IAM. Siga as instruções em [Adicionar usuários no IAM Identity Center](https://docs.aws.amazon.com/transform/latest/userguide/transform-user-management.html#transform-add-idc-users) na AWS Transform documentação. | Administrador da AWS | 
| Habilite AWS Transform e adicione usuários. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html) | Administrador da AWS | 
| Configure o acesso do usuário ao aplicativo AWS Transform web. | Cada usuário deve aceitar o convite para acessar o aplicativo AWS Transform web. Siga as instruções em [Aceitar o convite](https://docs.aws.amazon.com/transform/latest/userguide/transform-user-onboarding.html#transform-user-invitation) na AWS Transform documentação. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Faça login no aplicativo AWS Transform web. | Siga as instruções em [Fazer login em AWS Transform](https://docs.aws.amazon.com/transform/latest/userguide/transform-user-onboarding.html#transform-user-signin). | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Configure um espaço de trabalho. | Configure um espaço de trabalho onde os usuários possam colaborar no aplicativo AWS Transform web. Siga as instruções em [Iniciar seu projeto](https://docs.aws.amazon.com/transform/latest/userguide/transform-environment.html#start-workflow) na AWS Transform documentação. | Administrador da AWS | 

### Transformar a aplicação de mainframe
<a name="transform-the-mainframe-application"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Crie um trabalho de transformação. | Crie um trabalho de transformação para modernizar o aplicativo de CardDemo mainframe. Para obter instruções, consulte [Criar e iniciar um trabalho](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-start-job) na AWS Transform documentação. Quando você for solicitado a definir os objetivos na interface de AWS Transform bate-papo, escolha **Executar modernização do mainframe (IBM z/OS to AWS)** e, em seguida, escolha **Analisar código, Gerar documentação técnica, Lógica de negócios, Decompor código, Planejar sequência de migração e Transformar** código em Java. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Configure o conector. | Estabeleça um conector para o bucket do Amazon S3 que contém o aplicativo de CardDemo mainframe. Esse conector permite AWS Transform acessar recursos no bucket e executar funções de transformação consecutivas. Para obter instruções, consulte [Configurar um conector](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-setup-connector) na AWS Transform documentação. | Administrador da AWS | 
| Realizar a análise do código. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html)Para obter mais informações, consulte [Análise de código](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-code-analysis) na AWS Transform documentação. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Gere documentação técnica. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html)Para obter mais informações, consulte [Gerar documentação técnica](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-generate-documentation) na AWS Transform documentação. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Extraia a lógica de negócios. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html)Para obter mais informações, consulte [Extrair lógica de negócios](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-extract-business-logic) na AWS Transform documentação. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Decomponha o código. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html)Para obter mais informações sobre decomposição e sementes, consulte [Decomposição](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-decomposition) na AWS Transform documentação. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Planejar as ondas de migração. | Planeje as ondas de migração para o CardDemo aplicativo. Siga as instruções em [Planejamento de ondas de migração](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-wave-planning) na AWS Transform documentação para revisar e editar o plano de ondas. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Refatore o código. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html) | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| (Opcional) Use o Reforge para melhorar o código Java. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html)Para obter mais informações, consulte [Reforge](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-refactor-code-reforge) na AWS Transform documentação. | Desenvolvedor do aplicativo, proprietário do aplicativo | 
| Simplifique a implantação. | AWS Transform pode fornecer modelos de infraestrutura como código (IaC) para CloudFormation AWS CDK, ou Terraform. Esses modelos ajudam você a implantar componentes principais, incluindo recursos de computação, banco de dados, armazenamento e segurança.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/modernize-carddemo-mainframe-app.html)Para obter mais informações, consulte [Recursos de implantação](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-features-deployment) na AWS Transform documentação. | Desenvolvedor do aplicativo, proprietário do aplicativo | 

## Solução de problemas
<a name="modernize-carddemo-mainframe-app-troubleshooting"></a>


| Problema | Solução | 
| --- | --- | 
| Você não consegue visualizar o código-fonte ou o documento gerado no aplicativo AWS Transform web. | Adicione uma política à permissão do CORS para que o bucket do Amazon S3 AWS Transform permita como origem. Para obter mais informações, consulte as [permissões CORS do bucket S3](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html#transform-app-mainframe-workflow-setup-connector-s3) na AWS Transform documentação. | 

## Recursos relacionados
<a name="modernize-carddemo-mainframe-app-resources"></a>

**AWS documentação**
+ [Transformação de aplicativos de mainframe](https://docs.aws.amazon.com/transform/latest/userguide/transform-app-mainframe-workflow.html) (AWS Transform documentação)

**Outros AWS recursos**
+ [Acelere sua jornada de modernização do mainframe usando agentes de IA com AWS Transform](https://aws.amazon.com/blogs/migration-and-modernization/accelerate-your-mainframe-modernization-journey-using-ai-agents-with-aws-transform/) (AWS postagem no blog)
+ [AWS Transform FAQs](https://aws.amazon.com/transform/faq/)
+ [Centro de Identidade do AWS IAM FAQs](https://aws.amazon.com/iam/identity-center/faqs/)

**Vídeos e tutoriais**
+ [Introdução ao Amazon Q Developer: Transform](https://explore.skillbuilder.aws/learn/courses/21893/aws-flash-introduction-to-amazon-q-developer-transform) (AWS Skill Builder)
+ [AWS re:Invent 2024 — Modernize aplicativos de mainframe com mais rapidez usando](https://www.youtube.com/watch?v=pSi0XtYfY4o) o Amazon Q Developer () YouTube
+ [AWS re:Invent 2024 - Automatizando a migração e a modernização para acelerar a transformação](https://www.youtube.com/watch?v=9FjxnEoH5wg) () YouTube
+ [AWS re:Invent 2024 - A Toyota impulsiona a inovação e aprimora a eficiência operacional](https://www.youtube.com/watch?v=_NXc1MJenw4) com a geração AI () YouTube

**nota**  
AWS Transform era conhecido anteriormente como *Amazon Q Developer transform for mainframe*.