1 projeto. 2 roteiro contexto projeto refinando o modelo de análise classes arquitetura pacotes
TRANSCRIPT
![Page 1: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/1.jpg)
11
![Page 2: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/2.jpg)
22
Contexto Projeto Refinando o modelo de análise
◦ Classes◦ Arquitetura◦ Pacotes
![Page 3: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/3.jpg)
33
Após a etapa de análise temos um primeiro modelo do sistema
Queremos agora melhorar esse modelo, a ponto de gerarmos facilmente a implementação do sistema
Este modelo é chamado de modelo de Projeto
![Page 4: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/4.jpg)
44
Requisitos Análise Projeto
![Page 5: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/5.jpg)
55
Abstrato X Concreto Independente X dependente da
tecnologia de implementação Simples X detalhado Modelos por caso de uso X unificação
em um único modelo
![Page 6: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/6.jpg)
66
Refinar o modelo de classes
Projetar arquitetura◦ Camadas◦ Separação em pacotes
Projetar Banco de Dados
![Page 7: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/7.jpg)
77
Analisar se é necessário criar novas classes ou remover classes existentes
Eliminar os estereótipos de análise
Adicionar modificadores de visibilidade aos métodos e atributos
Definir os tipos dos atributos
![Page 8: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/8.jpg)
88
Detalhar assinatura dos métodos◦ Definir todos os parâmetros dos métodos,
seus tipos e o tipo de retorno dos métodos
Mapear associações em atributos
Analisar a possibilidade de utilizar herança
![Page 9: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/9.jpg)
99
Dividir o sistema em camadas Arquitetura bem comum:
Apresentação
Negócio
Persistência
Interface com o usuário
Regras de negócio inerentesà aplicação
Código relacionado ao mecanismode persistência utilizado
![Page 10: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/10.jpg)
1010
Por que dividir em camadas?◦ Aumentar modularidade◦ Diminuir dependências◦ Facilitar possível troca de camadas
![Page 11: 1 Projeto. 2 Roteiro Contexto Projeto Refinando o modelo de análise Classes Arquitetura Pacotes](https://reader035.vdocuments.pub/reader035/viewer/2022062623/552fc100497959413d8bcb6b/html5/thumbnails/11.jpg)
1111
Agrupar classes em pacotes Possíveis critérios:
◦ Camadas◦ Lógica do sistema
Critérios escolhidos devem minimizar a dependência entre os pacotes
Criar um diagrama de pacotes indicando as dependências entre os pacotes