Conceitualmente a engenharia reversa é um estudo do processo de funcionamento de um objeto, podendo ser um sistema mecânico ou software ou um banco de dados, através da análise de sua estrutura, função e operação.
No Cronapp, a funcionalidade engenharia reversa traz as tabelas de um banco de dados externo cadastrado no sistema para o diagrama de dados. As novas classes, atributos e relacionamentos do diagrama serão geradas a partir das tabelas, campos e chaves estrangeiras do banco de dados externo.
Esse procedimento é muito útil caso queira gerar toda a estrutura básica (camadas entity, DAO e formulário) de um sistema legado no Cronapp.
Importante
A engenharia reversa não funciona no banco H2 do Cronapp.
Pré-requisitos
Banco de dados relacional externo configurado no Cronapp, como um MySQL, SQL Server, etc. Caso não saiba como configurar um banco no Cronapp, acesse o link Banco de dados;
Figura 1.1 - Exemplo de banco de dados externo configurado no Cronapp
Novo diagrama de dados com o banco de dados selecionado (destaque da Figura 1.2).
Figura 1.2 - Novo diagrama de dados com o banco de dados selecionado
Gerando o diagrama a partir do banco de dados
A opção gerar diagrama a partir do banco de dados (destaque da Figura 2.1) abre uma janela de seleção mostrando as tabelas existentes no banco. Geralmente, as novas tabelas que irão para o diagrama já vem previamente selecionadas mas é possível selecionar quais tabelas desejadas para realizar a engenharia reversa.
Em estratégia de chaves: define a forma de como as chaves da tabela serão geradas, podendo ser:
Auto: gera as tabelas sem configurar o campo tipo de PK (auto completar identity ou UUID), necessário selecionar manualmente em cada tabela depois;
Forçar auto geração: gera as tabelas com o campo tipo de PK configurado para identity quando a PK for inteiro ou UUID quando o PK for varchar;
Descobrir sequências:
Sequence Template: nome da sequência que será criada no banco de dados;
Busca: pesquisa as tabelas que contém a sequência de palavras informadas;
Marca / Desmar
Figura 7 - Selecionar tabelas
É possível escolher os campos de cada tabela (Figura 8), ou seja, caso não queira gerar todo o conteúdo, é possível filtrar apenas os campos necessários clicando no botão "..." (Figura 7)ao lado da tabela correspondente.
Figura 8 - Escolher campos para serem gerados
Pronto, tudo já foi configurado, agora clique em coletar e uma mensagem aparecerá informando que a engenharia reversa foi concluída com sucesso.
Figura 9 - Diagrama gerado via banco de dados
Dica:
É possível separar as tabelas do diagrama por funcionalidade do sistema, facilitando a visualização. Veja mais em Visão do Diagrama de Dados.