![Page 1: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/1.jpg)
Realizando a Análise e Projeto
![Page 2: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/2.jpg)
Modelagem de Negócios
O que temos:
Modelagem dos processos:
Diagrama de Atividades
Modelo de Casos de Uso de Negócio:
Modelo de Objetos de Negócio
Ator de negócio, trabalhador de negócio,
entidade de negócio (objeto)
![Page 3: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/3.jpg)
Requisitos
A solução proposta:
Casos de Uso
Especificação dos casos de uso:
Fluxo principal de eventos;
Pre-condições;
Pos-condições;
Modelo de Casos de Uso;
Modelagem da Interface com o Usuário
![Page 4: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/4.jpg)
Exemplos
• [UC 01]: Cadastrar Produto
AtorCadastrarProduto
EfetuarLogin
<<include>>
![Page 5: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/5.jpg)
Exemplos
• [UC 01]: Cadastrar Produto • Fluxo Principal
• <<include>> [UC 02: Efetuar Login]
• O ator preenche todas informações necessárias ao novo produto e confirma a operação;
• O sistema verifica se o produto não existe. Caso não, o produto é adicionado ao sistema;
• O ator é informado do sucesso da informação.
• Fluxo Alternativo: Produto Existente • [Passo 3 do FP]: Se acusar que o produto já existe, o ator é
informado, e dessa forma, não pode ser adicionado novamente.
![Page 6: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/6.jpg)
Exemplos
• [UC 02]: Efetuar Login • Fluxo Principal
• O ator preenche as informações necessárias (login/senha, por exemplo) e confirma a transação;
• O sistema verifica a existência de um usuário com aquele respectivo conjunto de informações. Caso exista, o ator tem acesso à tela principal do sistema.
• Fluxo Alternativo: Usuário Inexistente • [Passo 2 do FP]: Se não existir um usuário com tais informações, o
ator é informado do erro e da impossibilidade de obter acesso ao sistema.
![Page 7: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/7.jpg)
ANÁLISE
![Page 8: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/8.jpg)
Análise
• Visão estática do sistema
• Cada caso de uso deve ser analisado isoladamente
• Encontrar as classes iniciais do sistema e distribuir o comportamento dos casos de uso entre elas
• Cada classe tem suas responsabilidades, atributos e associações
• Visão das classes participantes (VoPC)
![Page 9: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/9.jpg)
Análise
•Para cada classe:
•Descrever responsabilidades
•Descrever atributos e associações
•Revisar resultados
![Page 10: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/10.jpg)
Análise dos casos de uso
• O comportamento do caso de uso é distribuído em classes de análise dos seguintes tipos (estereótipos):
• Fronteira
• Controle
• Entidade
• Utilizado apenas como convenções, devem sumir na fase de projeto.
![Page 11: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/11.jpg)
Fronteira
Modelam uma interação entre o sistema e
um ator.
Esteriótipo <<boundary>>
FronteiraCadastrarProduto
<<boundary>>
[UC 01]
Ator CadastrarProduto
![Page 12: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/12.jpg)
Entidade
Representam abstrações e conceitos
chave dos casos de uso.
Identificando Entidades:
Identificar substantivos no fluxo de eventos;
Remover candidatos redundantes e vagos;
Remover atores que apenas interagem com o
sistema mas não fazem parte da modelagem;
Remover atributos (serão usados mais tarde)
e operações.
Esteriótipo <<entity>>
![Page 13: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/13.jpg)
Entidade
[UC 01]: Cadastrar Produto
[UC 02]: Efetuar Login
EntidadeAtor
<<entity>>
EntidadeAtor
<<entity>>
EntidadeProduto
<<entity>>
![Page 14: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/14.jpg)
Controle
AtorCadastrarProduto
EfetuarLogin
<<include>>
Coordenam o comportamento (lógica de
controle) do caso de uso;
Interface entre fronteira e entidade.
Esteriótipo <<control>>
ControladorLogin
<<control>>
ControladorCadastrarProduto
<<control>>
![Page 15: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/15.jpg)
Persistência
Identificar as classes de entidade que
devem ser persistentes,e para cada uma
criar uma nova classe
Esteriótipo << Entity Collection >>
[UC 01]: Cadastrar Produto
[UC 02]: Efetuar Login
EntidadeAtor
<<entity>>ColecaoAtor
<<entity collection>>
EntidadeAtor
<<entity>>EntidadeProduto
<<entity>>
ColecaoProdutos
<<entity collection>>
ColecaoAtor
<<entity collection>>
![Page 16: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/16.jpg)
Análise dos casos de uso
•Para cada caso de uso:
• Encontrar classes de análise
• Fronteira, Controle e Entidade
• Identificar persistências
• Coleção de Entidade
• Distribuir comportamento entre elas
![Page 17: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/17.jpg)
Diagrama de Sequências
É utilizado para representar aspectos
dinâmicos do sistema através da troca de
mensagens entre objetos.
É construído para cada caso de uso,
utilizando seu respectivo fluxo de evento e
classes de análise.
Os objetos trocam mensagens entre si
para assim, realizar o caso de uso.
![Page 18: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/18.jpg)
Diagrama de Sequências
[UC 01: Cadastrar Produto]
![Page 19: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/19.jpg)
Diagrama de Sequências
[UC 02: Efetuar Login]
Poderia reportar um erro também!
![Page 20: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/20.jpg)
Diagrama de Classes
Já podemos identificar os relacionamentos, os
métodos e os atributos das classes:
Cada iteração no diagrama de seqüência
corresponde a um relacionamento no diagrama de
classe
ControladorLogin
<<control>>
FronteiraLogin
<<boundary>>
![Page 21: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/21.jpg)
Relacionamentos
Associação
ControladorLogin
<<control>>
FronteiraLogin
<<boundary>>
Agregação X Composição
Dependência
![Page 22: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/22.jpg)
Diagrama de Classes
•Os métodos são identificados através do diagrama de sequência;
•Podemos identificar os atributos mais ainda não podemos identificar o tipo deles
![Page 23: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/23.jpg)
Diagrama de Classes
ControladorLogin<<control>>
FronteiraLogin<<boundary>>
EntidadeAtor<<entity>>
ColeçãoAtor<<entity collection>>
ColeçãoProduto<<entity collection>>
ControladorCadastrarProduto<<control>>
EntidadeProduto<<entity>>
FronteiraCadastrarProduto<<boundary>>[UC 01] [UC 02]
•Faltam os métodos e os atributos!!!
![Page 24: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/24.jpg)
Projeto
![Page 25: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/25.jpg)
•Mais concreto do que o modelo de análise
•Depende da tecnologia de implementação
•Unificação em um único modelo
•Definição da arquitetura do sistema
•Proposição de padrões de projeto
•Projetar arquitetura
•Projetar Banco de Dados
Modelo de Projeto
![Page 26: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/26.jpg)
• Agrupar todas as classes de análise em um único
diagrama
• Identificar redundância
• Criar ou remover classes
• Identificar interfaces entre os grupos maiores
Refinamento
![Page 27: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/27.jpg)
•Adicionar modificadores de visibilidade aos métodos
e atributos
• Definir os tipos dos atributos
• Definir o tipo do retorno e dos parâmetro dos
métodos
• Identificar padrões de projeto
Refinamento
![Page 28: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/28.jpg)
• Dividir o sistema em camadas
• A mais comum:
Arquitetura
Apresentação
Negócio
Dados
Comunicação
•Utilizar pacotes para organizar as classes em grupo
![Page 29: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/29.jpg)
Diagrama de Classes – Modelo de Projeto
![Page 30: Realizando a Análise e Projetobacala/ES/Realizando Analise e Projeto.pdf · Diagrama de Sequências É utilizado para representar aspectos dinâmicos do sistema através da troca](https://reader033.vdocuments.com.br/reader033/viewer/2022042012/5e729cf01eb570245959a85b/html5/thumbnails/30.jpg)
Próximos Passos
• Implementação
•Testes
• Implantação