---
title: "Parte 5 – Análise de uma aplicação legada com o Altova UModel"
date: "2009-06-15"
tags: 
  - "altova"
  - "c"
  - "java"
  - "missionkit"
  - "software-modeling"
  - "software-tools"
  - "uml"
  - "uml-tool"
  - "umodel"
  - "visual-basic"
description: Explore como analisar uma aplicação existente utilizando o Altova UModel, incluindo a geração de diagramas UML e documentação para melhorar as práticas de modelagem de software.
---
Status: #blog

Tags:  #altova #c #java #missionkit #software-modeling #software-tools #uml #uml-tool #umodel #visual-basic

Categories: [Altova](/blog/pt/category/altova.md) 
# Parte 5 – Análise de uma aplicação legada com o Altova UModel

Em partes anteriores desta série, nas [Partes 1](https://www.altova.com/blog/2009/04/analyzing-legacy-application-with.html), [Partes 2](https://www.altova.com/blog/2009/04/part-2-analyzing-legacy-application.html), [Partes 3](https://www.altova.com/blog/2009/05/part-3-analyzing-legacy-application.html) e [Partes 4](https://www.altova.com/blog/2009/05/part-4-analyzing-legacy-application.html), utilizamos a funcionalidade de [engenharia reversa](https://www.altova.com/pt/features_reverse_engineer.html) do Altova UModel para criar diagramas UML para uma aplicação de simulação de um sistema bancário de caixas automáticas. Após analisar a arquitetura existente, planearam e implementaram uma nova funcionalidade: a taxa de levantamento. Mesmo com um tamanho reduzido, o nosso diagrama de [sequência](https://www.altova.com/pt/features_sequence_diagram.html) atualizado para a transação de levantamento representa graficamente a estrutura lógica interna do código fonte. 

[![Diagrama de sequência UML (tamanho reduzido)](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image1_thumb.gif "UML sequence diagram (reduced size)")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image1.gif) 

Esta manhã, encontramos o gestor de produtos dos caixas automáticos junto à máquina de café. "Já está a trabalhar nesse código dos caixas automáticos há mais de um mês", disse ele. "Quando é que vou poder ver o que conseguiu?" Podemos aproveitar o UModel [Gerar documentação](https://www.altova.com/pt/features_umodel_documentation.html) Esta funcionalidade permite satisfazer essa necessidade. O UModel irá criar automaticamente documentação personalizada para o nosso projeto, em formatos HTML, Microsoft Word ou RTF. A aba "Incluir" na caixa de diálogo "Gerar Documentação" permite-nos escolher quais tipos de diagramas incluir, e especificar o nível de detalhe do nosso relatório, permitindo-nos expandir cada tipo de elemento do diagrama. 

[![Caixa de diálogo "Gerar Documentação" do Altova UModel](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image2_thumb.gif "Altova UModel Generate Documentation dialog box")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image2.gif) 

Para um relatório geral, podemos selecionar todos os tipos de diagramas. Também selecionaremos a opção "classe" na lista de elementos para mostrar informações adicionais sobre as classes na nossa aplicação. O UModel pergunta de forma útil se queremos adicionar também elementos derivados da classe. 

[![Ferramenta de auxílio para gerar documentação com o Altova UModel](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image3_thumb.gif "Altova UModel Generate Documentation helper")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image3.gif) 

Depois de selecionarmos ou ajustarmos outros parâmetros do documento, incluindo fontes e tamanhos, o UModel gera o relatório em apenas alguns segundos. No topo da primeira página, o relatório começa com um índice de diagramas e um índice separado de elementos. Cada item indexado está ligado a um marcador no documento através de um hiperligação. 

[![Documentação do projeto Altova UModel em formato Word](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image4_thumb.gif "Altova UModel project documentation in Word format")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image4.gif) 

Independentemente do formato que escolher, o relatório resultante é totalmente editável. Por exemplo, podemos adicionar um rodapé que inclua números de página e uma linha de texto indicando a data de criação do documento. Podemos utilizar a linha de texto que o UModel criou para criar o nosso rodapé.

[![Etiqueta para a documentação do projeto Altova UModel](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image5_thumb.gif "Altova UModel project documentation tag line")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image5.gif) 

O nosso relatório final contém todos os diagramas UML que descrevem a aplicação ATM existente, com diagramas de classes detalhados que mostram as propriedades e operações das classes. Além disso, a representação de cada classe é acompanhada por um diagrama de hierarquia para mostrar as relações entre as classes, e uma lista de todas as associações entre as classes. Mais tarde, à medida que o nosso projeto evolui, podemos gerar facilmente uma versão atualizada do relatório. Poderíamos até aproveitar a funcionalidade da linha de comandos do UModel ou a API do UModel para automatizar a criação da documentação do projeto, ou poderíamos anexar a versão .html do relatório à wiki da nossa equipa de desenvolvimento. Mas, por agora, tudo o que temos de fazer é enviar o relatório por e-mail ao gestor de produto da aplicação ATM. 

## Conclusão
Esperamos que tenham apreciado acompanhar este exercício de análise de uma aplicação legada com o Altova UModel. Embora estejamos a concluir a série aqui, no mundo real, ainda há muito trabalho a fazer na nossa aplicação de caixas automáticas. Por exemplo, a funcionalidade que permite aos utilizadores aceitar a taxa ou cancelar um levantamento ainda precisa de ser implementada. Ou, poderíamos atualizar o código legado com construções mais recentes da linguagem Java, como genéricos, anotações e enumerações. 

Se já tem experiência com UML, esperamos ter-lhe mostrado algumas novidades. Se é um desenvolvedor que nunca experimentou o UML, queríamos dar-lhe uma ideia dos benefícios e vantagens da modelação visual de software. De qualquer forma, se estiver pronto para avançar no seu próprio projeto, [clique aqui para descarregar](https://www.altova.com/pt/download/umodel/uml_tool_enterprise.html) uma versão de avaliação gratuita e totalmente funcional do [Altova UModel](https://www.altova.com/pt/products/umodel/uml_tool.html).
