Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 -...

55
Datachk Projeto I Recife, 19 de Fevereiro de 2012 IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo Ferraz Tiago Nascimento

Transcript of Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 -...

Page 1: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

DatachkProjeto I

Recife, 19 de Fevereiro de 2012 IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE

Aline D'OleronAngelo Brito

Rebeca AlvesRodolfo Ferraz

Tiago Nascimento

Page 2: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Contexto

• Projeto CI – Computadores para Inclusãoo Recondiciona equipamentos de informáticao Distribuição para iniciativas de inclusão digital no Brasilo Oficinas com o foco no recondicionamento de computadoreso CRCs – Centros de Recondicionamento de Computadores

• Objetivos:o Formar jovens de baixa renda para inserção no mercado de trabalhoo Promover a inclusão digitalo Estimular a disseminação de políticas de descarte planejado e

ecologicamente sustentável de equipamentos de informáticao Implantar modelo de funcionamento em rede dos CRCs

Page 3: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Contexto

Page 4: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Diagrama de Casos de uso

Page 5: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Este caso de uso é responsável por cadastrar as peças recebidas como doação no estoque.

Pré-condição: Usuário encontra-se logado no sistema.Pós-condição: As peças encontram-se cadastradas no sistema e estão com o

status “disponível”.

Fluxo de eventos principal:Usuário insere os dados num formulário de cadastro contendo os campos para

os dados da peça (Ex: Nome da peça, modelo, código, etc) e sistema valida os dados informados. Em seguida, os dados da peça são cadastrados no sistema e passam a ter o status “disponível”. É enviada uma mensagem ao Servidor Central (remoto), contendo os dados das peças cadastradas.

Fluxos secundários:Não se aplica.

Page 6: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 1: Encontrar classes de análise

• Classes de Fronteirao TelaCadastroPeçao ComunicaçãoServidorCentral

• Classes de Entidadeo Peça

• Classes de Controleo ControlePeças

<<entity>>Peça

________________________

<<boundary>>TelaCadastroPeça

________________________

<<boundary>>Comunicação

ServidorCentral________________________

<<control>>ControlePeças________________________

Page 7: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 2: Identificar persistência

• Classes de Fronteirao TelaCadastroPeçao ComunicaçãoServidorCentral

• Classes de Entidadeo Peça

• Classes de Controleo ControlePeças

<<entity>>Peça

________________________

<<boundary>>TelaCadastroPeça

________________________

<<boundary>>Comunicação

ServidorCentral________________________

<<control>>ControlePeças________________________

Page 8: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 2: Identificar persistência

• Classes de Fronteirao TelaCadastroPeçao ComunicaçãoServidorCentral

• Classes de Entidadeo Peça

• Classes de Controleo ControlePeças

<<entity>>Peça

________________________

Page 9: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 2: Identificar persistência

• Classes de Fronteirao TelaCadastroPeçao ComunicaçãoServidorCentral

• Classes de Entidadeo Peça

• Classes de Controleo ControlePeças

<<entity>>Peça

________________________

<<entity collection>>Cadastro

Peças________________________________

Page 10: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 3: Distribuir comportamento entre as classes

• Diagrama de sequência

Page 11: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 3: Distribuir comportamento entre as classes

• Diagrama de sequência

Responsabilidades

Page 12: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 4: Descrever responsabilidades

• Classes com responsabilidades

<<boundary>>Comunicação

ServidorCentral____________________________________

enviarDados(nome,modelo,código,data,nomeCRC)

<<control>>ControlePeças ________________________cadastrarDados(nome, modelo, código, login)

<<entity collection>>Cadastro

Peças____________________________________cadastrarDados(nome, modelo, código, login)

<<boundary>>TelaCadastroPeça

________________________

cadastrarDados(nome, modelo, código)

Page 13: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Cadastrar peças no estoque"

Passo 5: Descrever atributos e associações

Page 14: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Solicitar Peças"

Este caso de uso é responsável pela solicitação de peças ao estoque por um usuário da manutenção.

Pré-condição: Usuário do estoque encontra-se autenticado no sistema.Pós-condição: O pedido das peças deve estar cadastrado no sistema, aguardando ser visualizado pela

pessoa responsável pela entrega das peças.

Fluxo de eventos principal:

1. O usuário faz a busca do tipo e modelo da peça que ele deseja através de um formulário.

2. O sistema mostra uma lista de peças com as características requisitadas.

3. O usuário seleciona a peça, e esta é adicionada em uma lista de pedidos.

4. Se o usuário quiser pedir mais peças ele deve voltar para o passo2 do [FP].

5. O usuário seleciona o botão “Finalizar pedido”.

6. O sistema exibe um resumo do pedido.

7. O usuário clica no botão “Confirmar”.

8. O sistema modifica o status da peça para “Peça solicitada”.

9. O sistema envia uma mensagem “Pedido enviado com sucesso”.

Fluxos secundários:Não se aplica.

Page 15: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 1: Encontrar classes de análise

• Classes de Fronteirao TelaInicialManutencaoo TelaSolicitarPecas

• Classes de Entidadeo SolicitacaoPecao Peca

• Classes de Controleo ControladorSolicitacaoo ControladorPecas

<<entity>>Solicitacao

Peca________________________

<<control>>Controlador Solicitacao

________________________

<<entity>>Peca

________________________

Análise de Caso de Uso “Solicitar Pecas”

<<control>>Controlador

Pecas________________________

<<boundary>>Tela Inicia da Manutencao

________________________

<<boundary>>Tela Solicitar

Pecas________________________

Page 16: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 2: Identificar persistência

• Classes de Fronteirao TelaInicialManutencaoo TelaSolicitarPecas

• Classes de Entidadeo Solicitacaoo Peca

• Classes de Controleo Controlador Solicitacaoo ControladorPecas

<<entity>>Solicitacao

________________________

<<entity>>Peca

________________________

Análise de Caso de Uso “Solicitar Pecas”

Page 17: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 2: Identificar persistência

• Classes de Fronteirao TelaInicialManutencaoo TelaSolicitarPecas

• Classes de Entidadeo Solicitacaoo Peca

• Classes de Controleo Controlador Solicitacaoo ControladorPecas

<<entity>>Solicitacao

________________________

<<entity>>Peca

________________________

Análise de Caso de Uso “Solicitar Pecas”

<<entity collection>>CadastroSolicitacoes

________________________________

<<entity collection>>CadastroPecas

________________________________

Page 18: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 3: Distribuir comportamento entre as classes

• Diagrama de sequência

Análise de Caso de Uso “Solicitar Pecas”

Page 19: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 4: Descrever responsabilidades

• Classes com responsabilidades

Análise de Caso de Uso “Solicitar Pecas”

<<entity>>CadastroPecas________________________

buscarPecasDisponiveis()

<<boundary>>TelaInicial

Manutencao________________________Encaminhar()

<<control>>ControladorPecas

________________________

buscarPeçasDisponiveis()marcarPecaSolicitada()

<<entity>>ListaPecas

________________________

Inserir()

<<entity>>CadastroSolicitacoes

________________________

save()

<<boundary>>TelaSolicitarPecas

________________________Encaminhar()

exibirListaPecasDisponiveis()exibirSolicitacao

mostrarAvisoConfirmacao()

<<control>>ControladorSolicitacoes

________________________

salvaSolicitacao()novaSolicitacao()

<<entity>>SolicitarPecas________________________

Page 20: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 5: Descrever atributos e associações

Análise de Caso de Uso “Solicitar Pecas”

Page 21: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Entregar Peças"

Este caso de uso é responsável pela resposta às solicitações de peças ao estoque.

Pré-condição: Usuário do estoque encontra-se autenticado no sistema.Pós-condição: O sistema registra que a Solicitação de peças foi atendida e armazena qual funcionário entregou as

peças e qual funcionário está com a posse delas.

Fluxo de eventos principal:

1. O Sistema procura por solicitações de peças que ainda estejam pendentes.

2. Exibe ao Controlador a pagina Inicial para Controladores de Estoque com uma notificação de solicitações pendentes.

3. O Sistema exibe as informações da solicitação.

4. O Controlador do Estoque avalia se a solicitação das peças é valida e aceita a solicitação.

5. O Sistema atualiza a solicitação para aceita.

6. O Usuário busca as peças solicitadas no estoque e entrega as peças ao Funcionário da Manutenção que criou a Solicitação.

7. O Usuário clica no botão “Entregue”.

8. O Sistema atualiza o estado das Peças para em Manutenção.

9. O Sistema altera o status da solicitação para completa.

Fluxos secundários:Não se aplica.

Page 22: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 1: Encontrar classes de análise

• Classes de Fronteirao TelaInicialEstoqueo TelaEntregarPecas

• Classes de Entidadeo SolicitacaoPecaso Peca

• Classes de Controleo ControladorSolicitacaoo ControladorPecas

<<entity>>Solicitacao

Pecas________________________

<<control>>Controlador Solicitacao

________________________

<<entity>>Peca

________________________

<<control>>Controlador

Pecas________________________

<<boundary>>Tela Inicia do

Estoque________________________

<<boundary>>Tela Entregar

Pecas________________________

Análise de Caso de Uso “Entregar Pecas”

Page 23: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 2: Identificar persistência

• Classes de Fronteirao TelaInicialManutencaoo TelaSolicitarPecas

• Classes de Entidadeo Solicitacaoo Peca

• Classes de Controleo Controlador Solicitacaoo ControladorPecas

<<entity>>Solicitacao

________________________

<<entity>>Peca

________________________

Análise de Caso de Uso “Entregar Pecas”

Page 24: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 2: Identificar persistência

• Classes de Fronteirao TelaInicialManutencaoo TelaSolicitarPecas

• Classes de Entidadeo SolicitacaoPecaso Peca

• Classes de Controleo Controlador Solicitacaoo ControladorPecas

<<entity>>Solicitacao

Pecas________________________

<<entity>>Peca

________________________

<<entity collection>>CadastroSolicitacoes

________________________________

<<entity collection>>CadastroPecas

________________________________

Análise de Caso de Uso “Entregar Pecas”

Page 25: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 3: Distribuir comportamento entre as classes

• Diagrama de sequência

Análise de Caso de Uso “Entregar Pecas”

Page 26: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 4: Descrever responsabilidades

• Classes com responsabilidades

<<entity>>CadastroPecas________________________

alterarEstadoPecas()

<<boundary>>TelaInicial Estoque

________________________Encaminhar()

ExibirAvisoSolicitacaoPendente()

<<control>>ControladorPecas

________________________

marcarPecasEmManutencao()varerListaPecas()

<<entity>>ListaPecas

________________________

Inserir()

<<boundary>>TelaEntregarPecas

________________________Encaminhar()

exibirAvisoEntrega()esperarResposta()

confirmaEntregaSolicitacao()

Análise de Caso de Uso “Entregar Pecas”

<<entity>>Peca

________________________mudarEstado()

Page 27: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 4: Descrever responsabilidades

• Classes com responsabilidades

<<control>>ControladorSolicitacoes

________________________

verificaSolicitacoesPendentes()aceitarSolicitacao()

salvaEntregaSolicitada()

<<entity>>CadastroSolicitacoes

________________________

getPrimeiraSolicitacaoPendente()marcarSolicitacaoAceita()alterarEstadoSolicitacao()

<<entity>>SolicitacaoPecas________________________mudarEstado()

Análise de Caso de Uso “Entregar Pecas”

Page 28: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Passo 5: Descrever atributos e associações

Análise de Caso de Uso “Entregar Pecas”

Page 29: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso “Cadastrar Computador”

Este caso de uso é responsável pelo cadastro do computador quando sua montagem estiver finalizada.

Pré-condição: Usuário autenticado no sistema.Pós-condição: O computador deve estar armazenado no sistema.

Fluxo de eventos principal: 1. Este caso de uso se inicia quando o usuário seleciona a opção “Cadastrar computador” no menu

“Montagem de equipamentos”. 2. O usuário cadastra as informações de todos os componentes do computador (Ex: mouse, teclado,

gabinete, monitor, etc.), buscando cada peça que foi utilizada.3. O usuário seleciona o botão “Finalizar cadastro”. 4. O sistema insere os dados, modifica o status de cada peça para “Peça recebida” e o status do

computador para “Computador montado”5. O sistema finaliza com o envio de uma mensagem “Computador cadastrado com sucesso”.

Fluxos secundários:Caso o usuário não coloque as informações de algum dos componentes e selecione o botão

“Finalizar cadastro”, o sistema envia uma mensagem “Escreva as informações de todos os componentes para que o cadastro seja finalizado” e em seguida o sistema executa novamente o passo 2 do [FP].

Page 30: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso " “Cadastrar Computador”

Passo 1: Encontrar classes de análise

• Classes de Fronteirao TelaCadastrarPC

• Classes de Entidadeo Computadoro Peça

• Classes de Controleo ControleCadastrarPC

<<entity>>Computador

________________________

<<boundary>>TelaCadastrarPC________________________

<<control>>Controle

CadastrarPC________________________

<<entity>>Peça

________________________

Page 31: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso “Cadastrar Computador”

Passo 2: Identificar persistência

• Classes de Fronteirao TelaCadastrarPC

• Classes de Entidadeo Computadoro Peça

• Classes de Controleo ControleCadastrarPC

<<entity>>Computador

________________________

<<entity>>Peça

________________________

Page 32: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso “Cadastrar Computador”

Passo 2: Identificar persistência

• Classes de Fronteirao TelaCadastrarPC

• Classes de Entidadeo Computadoro Peça

• Classes de Controleo ControleCadastrarPC

<<entity>>Computador

________________________

<<entity collection>>CadastroPCs

________________________________

<<entity>>Peça

________________________

<<entity collection>>CadastroPeças

________________________________

Page 33: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso “Cadastrar Computador"

Passo 3: Distribuir comportamento entre as classes

• Diagrama de sequência

Page 34: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso “Cadastrar Computador"

Passo 4: Descrever responsabilidades

• Classes com responsabilidades

<<entity>>CadastroPCs

________________________CadastrarPC()

<<boundary>>TelaCadastrarPC________________________CadastrarPC()

SelecionarPeças()

<<control>>Controle

CadastrarPC________________________CadastrarPC()

SelecionarPeças()

<<entity>>CadastroPeças________________________BuscarPeça()MarcarPeças()

Page 35: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso “Cadastrar Computador"

Passo 5: Descrever atributos e associações

Page 36: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Finalizar Computador"

Este caso de uso é responsável por modificar o status de um computador em fase de montagem/testes para o status "Finalizado".

Pré-condição: Usuário encontra-se logado no sistema.Pós-condição: Status do computador trocado para "Finalizado", suas peças passam a

ter status "Indisponível" e Servidor Central recebe uma mensagem com os dados do novo computador finalizado.

Fluxo de eventos principal:Usuário acessa o registro de um computador, através da busca pelo código de identificação. Após encontrar o computador, caso esteja em fase de montagem/testes, exibirá a opção "Finalizar Computador". Ao selecionar esta opção, o computador passa a ter o status "Finalizado" e suas peças trocam de status para "Indisponível" (não podem mais ser trocadas por peças do estoque). Além disso, é enviada uma mensagem ao Servidor Central (remoto), contendo os dados do novo computador finalizado.

Fluxos secundários:Não se aplica.

Page 37: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Finalizar Computador"

Passo 1: Encontrar classes de análise

• Classes de Fronteirao TelaMostrarPCo ComunicaçãoServidorCentral

• Classes de Entidadeo Usuário (apenas interage)o Computadoro Peça

• Classes de Controleo ControleFinalizaçãoPC

<<entity>>Computador

________________________

<<boundary>>TelaMostrarPC________________________

<<boundary>>Comunicação

ServidorCentral________________________

<<control>>Controle

FinalizaçãoPC________________________

<<entity>>Peça

________________________

Page 38: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Finalizar Computador"

Passo 2: Identificar persistência

• Classes de Fronteirao TelaMostrarPCo ComunicaçãoServidorCentral

• Classes de Entidadeo Computadoro Peça

• Classes de Controleo ControleFinalizaçãoPC

<<entity>>Computador

________________________

<<entity>>Peça

________________________

Page 39: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Finalizar Computador"

Passo 2: Identificar persistência

• Classes de Fronteirao TelaMostrarPCo ComunicaçãoServidorCentral

• Classes de Entidadeo Computadoro Peça

• Classes de Controleo ControleFinalizaçãoPC

<<entity>>Computador

________________________

<<entity collection>>Cadastro

Computadores________________________________

<<entity>>Peça

________________________

<<entity collection>>Cadastro

Peças________________________________

Page 40: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Finalizar Computador"

Passo 3: Distribuir comportamento entre as classes

• Diagrama de sequência

Page 41: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Finalizar Computador"

Passo 4: Descrever responsabilidades

• Classes com responsabilidades

<<boundary>>TelaMostrarPC

____________________________

finalizarPC (idPC)

<<boundary>>Comunicação

ServidorCentral____________________________________

enviarPCFinalizado (pc)

<<control>>Controle

FinalizaçãoPC________________________

finalizarPC (idPC)

<<entity collection>>Cadastro

Computadores____________________________________

finalizar(idPC)getPC (idPC)

<<entity collection>>Cadastro

Peças____________________________________finalizar (idPeça)

<<entity>>Computador

____________________________________finalizar ()

Page 42: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Finalizar Computador"

Passo 5: Descrever atributos e associações

Page 43: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Gerar relatório"

Este caso de uso é responsável por gerar relatórios para enviá-los para o órgão central.

Pré-condição: Usuário encontra-se logado no sistema.Pós-condição: Relatório deve estar gerado e pronto para ser enviado ou impresso.

Fluxo de eventos principal:1. O usuário informa as opções relativas ao relatório:

- tipo de relatório (doações recebidas, computadores recondicionados, estoque de peças, ou completo, com todas as informações citadas anteriormente).- intervalo de tempo (dia, mês, ano), caso o tipo do relatório não seja peças em estoque.

2. O sistema busca as informações requisitadas pelo usuário.3. O sistema envia o relatório gerado ao Servidor Central (remoto), podendo o

mesmo também ser impresso.

Fluxos secundários:Não se aplica.

Page 44: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Gerar relatório"

Passo 1: Encontrar classes de análise

• Classes de Fronteirao TelaGerarRelatorioo ComunicacaoServidorCentral

• Classes de Entidadeo Peçao Computadoro Doações

• Classes de Controleo ControleRelatorio

<<entity>>Peça

________________________

<<boundary>>TelaGerarRelatorio______________________________

<<boundary>>Comunicacao

ServidorCentral________________________

<<control>>ControleRelatorio__________________________

<<entity>>Computador

________________________

<<entity>>Doações

________________________

Page 45: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Gerar relatório"

Passo 2: Identificar persistência

• Classes de Fronteirao TelaGerarRelatorioo ComunicacaoServidorCentral

• Classes de Entidadeo Peçao Computadoro Doações

• Classes de Controleo ControleRelatorio

<<entity>>Peça

________________________

<<entity>>Computador

________________________

<<entity>>Doações

________________________

Page 46: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Gerar relatório"

Passo 2: Identificar persistência

• Classes de Fronteirao TelaGerarRelatorioo ComunicacaoServidorCentral

• Classes de Entidadeo Peçao Computadoro Doações

• Classes de Controleo ControleRelatorio <<entity collection>>

CadastroComputadores

________________________________

<<entity>>Peça

________________________

<<entity>>Computador

________________________

<<entity>>Doações

________________________

<<entity collection>>Cadastro

Peças________________________________

<<entity collection>>CadastroDoações

________________________________

Page 47: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Gerar relatório"

Passo 3: Distribuir comportamento entre as classes

• Diagrama de sequência

Page 48: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Gerar relatório"

Passo 4: Descrever responsabilidades

• Classes com responsabilidades

<<entity collection>>CadastroPeças

<<boundary>>TelaGerarRelatorio

<<boundary>>Comunicacao

ServidorCentralgerarRelatorio(tipo, dataInicio, dataFim)

enviarRelatorio()

buscarPecas(status)

<<entity collection>>CadastroComputadores

buscarComputadores(dataInicio, dataFim, status)

<<entity collection>>CadastroDoações

buscarDoacoes(dataInicio, dataFim)

<<control>>controleRelatorio

gerarRelatorio(tipo, dataInicio, dataFim)

Page 49: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Análise de Caso de Uso "Gerar relatório"

Passo 5: Descrever atributos e associações

Page 50: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Mapeamento das classes de análise em elementos de projeto

Classes de Análise Elementos de projeto

FabricaRepositorio, FabricaRepositorioBDR,

CadastroPeças CadastroPeças, IRepositorioPeças, RepositorioPeçasBDR

CadastroDoações CadastroDoações, IRepositorioDoações, RepositorioDoaçõesBDR

CadastroComputador CadastroComputador, IRepositorioComputador, RepositorioComputadorBDR

CadastroSolicitações CadastroSolicitações, IRepositorioSolicitações, RepositorioSolicitaçõesBDR

ComunicaçãoServidorCentral ISubsistemaCentralGoverno, FachadaCentralGoverno

Page 51: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Diagrama de classes da arquitetura

Page 52: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Organização em pacotes

Page 53: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Diagrama de classes com padrões de projeto

SingletonBridge

Abstract Factory

Page 54: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Diagrama de classes com padrões de projeto

GUI

NEGÓCIO

COMUNICAÇÃO

Page 55: Datachk Projeto I Recife, 19 de Fevereiro de 2012IF718 - Análise e Projeto de Sistemas 2012.2 - CIn/UFPE Aline D'Oleron Angelo Brito Rebeca Alves Rodolfo.

Dúvidas

?