124
Libris – Sistema de Gerenciamento de Livraria Documento de Análise e Projeto Versão 1.0

Documento de Análise e Projeto 1.0if682/projetos/projetos2009-2/... · Web view– Sistema de Gerenciamento de Livraria Documento de Análise e Projeto Versão 1. 0 Histórico de

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Documento de Análise e Projeto 1.0

Libris

Versão : 1.0

Documento de Análise e Projeto

Data da Versão: 19/10/2009

DocumentoAnaliseProjetoLibrisv1.0.docx

Libris – Sistema de Gerenciamento de Livraria

Documento de Análise e Projeto

Versão 1.0

Histórico de Revisões

Data

Versão

Descrição

Autor

19/10/2009

1.0

Elaboração da versão inicial do documento de análise e projeto

Walter Lima

Wellington Oliveira

Winícius Marques

Sumário

1.Introdução5

1.1Objetivo do documento5

1.2Visão geral do documento5

2.Análise dos casos de uso5

2.1Efetuar login (RF-01)5

2.2Alterar senha (RF-02)7

2.3Cadastrar funcionário (RF-03)9

2.4Remover funcionário (RF-04)11

2.5Modificar funcionário (RF-05)13

2.6Consultar funcionário (RF-06)15

2.7Cadastrar administrador (RF-07)17

2.8Remover administrador (RF-08)19

2.9Modificar administrador (RF-09)21

2.10Consultar administrador (RF-10)23

2.11Cadastrar exemplar (RF-11)25

2.12Remover exemplar (RF-12)27

2.13Modificar exemplar (RF-13)29

2.14Consultar exemplar (RF-14)31

2.15Encomendar exemplar (RF-15)33

2.16Remover encomenda (RF-16)35

2.17Modificar encomenda (RF-17)38

2.18Listar encomendas (RF-18)40

2.19Listar exemplares por título (RF-19)42

2.20Listar exemplares por autor (RF-20)44

2.21Listar exemplares por busca avançada (RF-21)46

2.22Ordenar exemplares por preço (RF-22)48

2.23Ordenar exemplares por gênero (RF-23)50

2.24Ordenar exemplares por rating (RF-24)52

2.25Ordenar exemplares por editora (RF-25)54

2.26Vender exemplar (RF-26)56

2.27Consultar balanço geral (RF-27)58

2.28Consultar balanço por data (RF-28)60

2.29Listar saída de exemplares (RF-29)62

2.30Gerar etiqueta de estante (RF-30)64

2.31Atribuir classificação a exemplar (RF-31)66

2.32Redigir sugestão (RF-32)68

2.33Visualizar sugestão (RF-33)70

2.34Deletar sugestão (RF-34)72

2.35Confirmar ação crítica (RF-35)74

3.Projeto da arquitetura76

3.1Mapeamento de classes76

3.2Diagramação de classes78

3.3Modelagem de banco de dados79

3.4Estrutura de pacotes80

3.4.1Diagrama de pacotes80

3.4.2Distribuição de classes81

4.Referências82

Documento de Análise e Projeto

Introdução

Objetivo do documento

Este documento tem como objetivo descrever a análise dos casos de uso e expor o projeto da arquitetura do Libris. Apresentamos o documento com a finalidade de aproximar a definição inicial do sistema a partir de requisitos e casos de usos de uma definição mais aprofundada que represente como as funcionalidades do sistema podem ser realizadas, de maneira abstrata em linguagem dos desenvolvedores, para auxiliar no desenvolvimento final do sistema.

Visão geral do documento

As informações neste documento estão dispostas da seguinte forma:

· Na seção 1, apresenta-se o objetivo geral do documento;

· Na seção 2, são apresentadas as análises dos casos de uso do sistema através de classes de análise e diagramas;

· Na seção 3, expõe-se o projeto de arquitetura do sistema através do mapeamento de classes, diagramação de classes e modelagem do banco de dados;

· Na seção 4, se expõe as referências principais que basearam a produção deste documento.

Análise dos casos de uso

A análise dos casos de uso do sistema será estruturada visando proporcionar um método que venha a permitir a criação de um modelo de classes do sistema a partir dos casos uso. Essa análise será feita na linguagem dos desenvolvedores, com objetivo de oferecer uma visão interna do sistema.

Efetuar login (RF-01)

1.1.1 Descrição

O Administrador, ou o funcionário, deve logar no sistema para dispor das funcionalidades restritas. Para efetuar o login é necessário informar o login e a senha. Caso os dados sejam inválidos uma mensagem de erro é exibida.

1.1.2 Ator

· Administrador

· Funcionário

1.1.3 Classes de análise

1.1.3.1 Classes de Entidade

Não apresenta.

1.1.3.2 Classes de Coleção de Entidades

· RepositorioUsuario

1.1.3.3 Classes de Controle

· EfetuarLogin

1.1.3.4 Classes de Fronteira

· TelaEfetuarLogin

1.1.4 Diagramas

1.1.4.1 Diagrama de Seqüência

1.1.4.2 Diagrama de Classes

Alterar senha (RF-02)

1.1.5 Descrição

O Administrador, ou o funcionário, poderá alterar sua senha. Para realizar essa ação é necessário informar a nova senha a alterar. Caso a senha não esteja dentro do padrão, uma mensagem de erro é exibida.

1.1.6 Ator

· Administrador

· Funcionário

1.1.7 Classes de análise

1.1.7.1 Classes de Entidade

· Administrador/Funcionario

1.1.7.2 Classes de Coleção de Entidades

· RepositorioUsuario

1.1.7.3 Classes de Controle

· AlterarSenha

1.1.7.4 Classes de Fronteira

· TelaAlterarSenha

1.1.8 Diagramas

1.1.8.1 Diagrama de Seqüência

1.1.8.2 Diagrama de Classes

Cadastrar funcionário (RF-03)

1.1.9 Descrição

O Administrador pode cadastrar um funcionário quando estiver logado, para tal funcionalidade operar é necessário passar os dados para o cadastro do novo funcionário. Caso os dados estejam dentro do padrão e o funcionário não existir, o mesmo é cadastrado.

1.1.10 Ator

· Administrador

1.1.11 Classes de análise

1.1.11.1 Classes de Entidade

Não apresenta.

1.1.11.2 Classes de Coleção de Entidades

· RepositorioAdmin

· RepositorioFunc

1.1.11.3 Classes de Controle

· CadastrarFunc

· ConfirmacaoCritica

1.1.11.4 Classes de Fronteira

· TelaControleFunc

1.1.12 Diagramas

1.1.12.1 Diagrama de Seqüência

1.1.12.2 Diagrama de Classes

Remover funcionário (RF-04)

1.1.13 Descrição

O Administrador pode remover um funcionário quando estiver logado, para tal funcionalidade operar é necessário passar os dados para identificar o funcionário a ser removido. Caso o funcionário exista, o mesmo é removido.

1.1.14 Ator

· Administrador

1.1.15 Classes de análise

1.1.15.1 Classes de Entidade

Não apresenta.

1.1.15.2 Classes de Coleção de Entidades

· RepositorioFunc

· RepositorioAdmin

1.1.15.3 Classes de Controle

· ConfirmacaoCritica

· RemoverFunc

1.1.15.4 Classes de Fronteira

· TelaControleFunc

1.1.16 Diagramas

1.1.16.1 Diagrama de Seqüência

1.1.16.2 Diagrama de Classes

Modificar funcionário (RF-05)

1.1.17 Descrição

O Administrador pode modificar os dados de um funcionário quando estiver logado, para tal funcionalidade operar é necessário passar os parâmetros para identificar o funcionário e os novos dados. Caso os novos dados estejam dentro do padrão e o funcionário exista, o mesmo é modificado.

1.1.18 Ator

· Administrador

1.1.19 Classes de análise

1.1.19.1 Classes de Entidade

· Func

1.1.19.2 Classes de Coleção de Entidades

· RepositorioFunc

· RepositorioAdmin

1.1.19.3 Classes de Controle

· ModificaFunc

· ConfirmacaoCritica

1.1.19.4 Classes de Fronteira

· TelaControleFunc

1.1.20 Diagramas

1.1.20.1 Diagrama de Seqüência

1.1.20.2 Diagrama de Classes

Consultar funcionário (RF-06)

1.1.21 Descrição

O Administrador pode consultar um funcionário quando estiver logado, para tal funcionalidade operar é necessário passar os dados para identificar o funcionário a ser consultado. Caso o funcionário exista, uma tela com suas informações é exibida.

1.1.22 Ator

· Administrador

1.1.23 Classes de análise

1.1.23.1 Classes de Entidade

· Func

1.1.23.2 Classes de Coleção de Entidades

· RepositorioFunc

1.1.23.3 Classes de Controle

· ConsultarFunc

1.1.23.4 Classes de Fronteira

· TelaControleFunc

1.1.24 Diagramas

1.1.24.1 Diagrama de Seqüência

1.1.24.2 Diagrama de Classes

Cadastrar administrador (RF-07)

1.1.25 Descrição

O Administrador pode cadastrar um administrador quando estiver logado, para tal funcionalidade operar é necessário passar os dados para o cadastro do novo administrador. Caso os dados estejam dentro do padrão e o administrador não existir, o mesmo é cadastrado.

1.1.26 Ator

· Administrador

1.1.27 Classes de análise

1.1.27.1 Classes de Entidade

Não apresenta.

1.1.27.2 Classes de Coleção de Entidades

· RepositorioAdmin

1.1.27.3 Classes de Controle

· CadastrarAdmin

· ConfirmacaoCritica

1.1.27.4 Classes de Fronteira

· TelaControleAdmin

1.1.28 Diagramas

1.1.28.1 Diagrama de Seqüência

1.1.28.2 Diagrama de Classes

Remover administrador (RF-08)

1.1.29 Descrição

O Administrador pode remover um administrador quando estiver logado, para tal funcionalidade operar é necessário passar os dados para identificar o administrador a ser removido. Caso o administrador exista, o mesmo é removido.

1.1.30 Ator

· Administrador

1.1.31 Classes de análise

1.1.31.1 Classes de Entidade

Não apresenta.

1.1.31.2 Classes de Coleção de Entidades

· RepositorioAdmin

1.1.31.3 Classes de Controle

· RemoverAdmin

· ConfirmacaoCritica

1.1.31.4 Classes de Fronteira

· TelaControleAdmin

1.1.32 Diagramas

1.1.32.1 Diagrama de Seqüência

1.1.32.2 Diagrama de Classes

Modificar administrador (RF-09)

1.1.33 Descrição

O Administrador pode modificar os dados de um administrador quando estiver logado, para tal funcionalidade operar é necessário passar os parâmetros para identificar o administrador e os novos dados. Caso os novos dados estejam dentro do padrão e o administrador exista, o mesmo é modificado.

1.1.34 Ator

· Administrador

1.1.35 Classes de análise

1.1.35.1 Classes de Entidade

· Admin

1.1.35.2 Classes de Coleção de Entidades

· RepositorioAdmin

1.1.35.3 Classes de Controle

· ModificarAdmin

· ConfirmacaoCritica

1.1.35.4 Classes de Fronteira

· TelaControleAdmin

1.1.36 Diagramas

1.1.36.1 Diagrama de Seqüência

1.1.36.2 Diagrama de Classes

Consultar administrador (RF-10)

1.1.37 Descrição

O Administrador pode consultar um administrador quando estiver logado, para tal funcionalidade operar é necessário passar os dados para identificar o administrador a ser consultado. Caso o administrador exista, uma tela com suas informações é exibida.

1.1.38 Ator

· Administrador

1.1.39 Classes de análise

1.1.39.1 Classes de Entidade

· Admin

1.1.39.2 Classes de Coleção de Entidades

· RepositorioAdmin

1.1.39.3 Classes de Controle

· ConsultarAdmin

· ConfirmacaoCritica

1.1.39.4 Classes de Fronteira

· TelaControleAdmin

1.1.40 Diagramas

1.1.40.1 Diagrama de Seqüência

1.1.40.2 Diagrama de Classes

Cadastrar exemplar (RF-11)

1.1.41 Descrição

O Administrador pode cadastrar um exemplar quando estiver logado, para tal funcionalidade operar é necessário passar os dados para o cadastro do novo exemplar. Caso os dados estejam dentro do padrão e o exemplar não existir, o mesmo é cadastrado.

1.1.42 Ator

· Administrador

1.1.43 Classes de análise

1.1.43.1 Classes de Entidade

Não apresenta.

1.1.43.2 Classes de Coleção de Entidades

· RepositorioLivros

· RepositorioAdmin

1.1.43.3 Classes de Controle

· CadastrarLivros

· ConfirmacaoCritica

1.1.43.4 Classes de Fronteira

· TelaControleLivros

1.1.44 Diagramas

1.1.44.1 Diagrama de Seqüência

1.1.44.2 Diagrama de Classes

Remover exemplar (RF-12)

1.1.45 Descrição

O Administrador pode remover um exemplar quando estiver logado, para tal funcionalidade operar é necessário passar os dados para identificar o exemplar a ser removido. Caso o exemplar exista, o mesmo é removido.

1.1.46 Ator

· Administrador

1.1.47 Classes de análise

1.1.47.1 Classes de Entidade

Não apresenta.

1.1.47.2 Classes de Coleção de Entidades

· RepositorioLivros

· RepositorioAdmin

1.1.47.3 Classes de Controle

· ConfirmacaoCritica

· RemoverLivros

1.1.47.4 Classes de Fronteira

· TelaControleLivros

1.1.48 Diagramas

1.1.48.1 Diagrama de Seqüência

1.1.48.2 Diagrama de Classes

Modificar exemplar (RF-13)

1.1.49 Descrição

O Administrador pode modificar os dados de um exemplar quando estiver logado, para tal funcionalidade operar é necessário passar os parâmetros para identificar o exemplar e os novos dados. Caso os novos dados estejam dentro do padrão e o exemplar exista, o mesmo é modificado.

1.1.50 Ator

· Administrador

· Funcionário

1.1.51 Classes de análise

1.1.51.1 Classes de Entidade

· Livros

1.1.51.2 Classes de Coleção de Entidades

· RepositorioLivros

· RepositorioAdmin

1.1.51.3 Classes de Controle

· ModificarLivros

· ConfirmacaoCritica

1.1.51.4 Classes de Fronteira

· TelaControleLivros

1.1.52 Diagramas

1.1.52.1 Diagrama de Seqüência

1.1.52.2 Diagrama de Classes

Consultar exemplar (RF-14)

1.1.53 Descrição

O Usuário pode consultar um exemplar, para tal funcionalidade operar é necessário passar os dados para identificar o exemplar a ser consultado. Caso o exemplar exista, uma tela com suas informações é exibida.

1.1.54 Ator

· Administrador

· Funcionário

· Cliente

1.1.55 Classes de análise

1.1.55.1 Classes de Entidade

Não apresenta.

1.1.55.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.55.3 Classes de Controle

· ConsultarLivros

1.1.55.4 Classes de Fronteira

· TelaControleLivros

1.1.56 Diagramas

1.1.56.1 Diagrama de Seqüência

1.1.56.2 Diagrama de Classes

Encomendar exemplar (RF-15)

1.1.57 Descrição

O Funcionário pode encomendar um exemplar quando estiver logado, para tal funcionalidade operar é necessário passar os dados do exemplar a ser encomendado e os dados do cliente a encomendar. Caso o exemplar exista, uma tela de confirmação é exibida.

1.1.58 Ator

· Administrador

· Funcionário

1.1.59 Classes de análise

1.1.59.1 Classes de Entidade

· Livros

1.1.59.2 Classes de Coleção de Entidades

· RepositorioLivros

· RepositorioEncomendas

· RepositorioAdmin

1.1.59.3 Classes de Controle

· InserirEncom

· ConfirmacaoCritica

1.1.59.4 Classes de Fronteira

· TelaControleEncomenda

1.1.60 Diagramas

1.1.60.1 Diagrama de Seqüência

1.1.60.2 Diagrama de Classes

Remover encomenda (RF-16)

1.1.61 Descrição

O Funcionário pode remover uma encomenda de um exemplar quando estiver logado, para tal funcionalidade operar é necessário passar os dados da encomenda a ser removida. Caso a encomenda exista, a mesma é removida.

1.1.62 Ator

· Administrador

· Funcionário

1.1.63 Classes de análise

1.1.63.1 Classes de Entidade

· Livros

1.1.63.2 Classes de Coleção de Entidades

· RepositorioLivros

· RepositorioEncomendas

· RepositorioAdmin

1.1.63.3 Classes de Controle

· RemoverEncom

· ConfirmacaoCritica

1.1.63.4 Classes de Fronteira

· TelaControleEncomenda

1.1.64 Diagramas

1.1.64.1 Diagrama de Seqüência

1.1.64.2 Diagrama de Classes

Modificar encomenda (RF-17)

1.1.65 Descrição

O Funcionário pode modificar uma encomenda de um exemplar quando estiver logado, para tal funcionalidade operar é necessário passar os dados da encomenda a ser modificada e os novos dados. Caso a encomenda exista, a mesma é modificada.

1.1.66 Ator

· Administrador

· Funcionário

1.1.67 Classes de análise

1.1.67.1 Classes de Entidade

· Livos

1.1.67.2 Classes de Coleção de Entidades

· RepositorioLivros

· RepositorioAdmin

1.1.67.3 Classes de Controle

· ModificarLivros

· ConfirmacaoCritica

1.1.67.4 Classes de Fronteira

· TelaControleLivros

1.1.68 Diagramas

1.1.68.1 Diagrama de Seqüência

1.1.68.2 Diagrama de Classes

Listar encomendas (RF-18)

1.1.69 Descrição

O Funcionário pode listar as encomendas existentes no sistema quando estiver logado. Uma tela com todas as encomendas existentes é exibida.

1.1.70 Ator

· Administrador

· Funcionário

1.1.71 Classes de análise

1.1.71.1 Classes de Entidade

· Livros

1.1.71.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.71.3 Classes de Controle

· ListarEncom

1.1.71.4 Classes de Fronteira

· TelaControleEncomenda

1.1.72 Diagramas

1.1.72.1 Diagrama de Seqüência

1.1.72.2 Diagrama de Classes

Listar exemplares por título (RF-19)

1.1.73 Descrição

O Usuário pode buscar por exemplares, para tal funcionalidade operar é necessário passar um título a ser procurado. Uma tela com os resultados é exibida.

1.1.74 Ator

· Administrador

· Funcionário

· Cliente

1.1.75 Classes de análise

1.1.75.1 Classes de Entidade

Não apresenta.

1.1.75.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.75.3 Classes de Controle

· ListarLivrosTitulo

1.1.75.4 Classes de Fronteira

· TelaListarLivros

1.1.76 Diagramas

1.1.76.1 Diagrama de Seqüência

1.1.76.2 Diagrama de Classes

Listar exemplares por autor (RF-20)

1.1.77 Descrição

O Usuário pode buscar por exemplares, para tal funcionalidade operar é necessário passar um autor a ser procurado. Uma tela com os resultados é exibida.

1.1.78 Ator

· Administrador

· Funcionário

· Cliente

1.1.79 Classes de análise

1.1.79.1 Classes de Entidade

Não apresenta.

1.1.79.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.79.3 Classes de Controle

· ListarLivrosAutor

1.1.79.4 Classes de Fronteira

· TelaListarLivros

1.1.80 Diagramas

1.1.80.1 Diagrama de Seqüência

1.1.80.2 Diagrama de Classes

Listar exemplares por busca avançada (RF-21)

1.1.81 Descrição

O Usuário pode buscar por exemplares, para tal funcionalidade operar é necessário passar as informações específicas do exemplar a ser procurado. Uma tela com os resultados é exibida.

1.1.82 Ator

· Administrador

· Funcionário

· Cliente

1.1.83 Classes de análise

1.1.83.1 Classes de Entidade

Não apresenta.

1.1.83.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.83.3 Classes de Controle

· ListarLivrosAvan

1.1.83.4 Classes de Fronteira

· TelaListarLivros

1.1.84 Diagramas

1.1.84.1 Diagrama de Seqüência

1.1.84.2 Diagrama de Classes

Ordenar exemplares por preço (RF-22)

1.1.85 Descrição

Um Usuário pode solicitar a ordenação de exemplares já pesquisados, para tal funcionalidade operar é necessário que seja especificada a maneira de ordenação como por preço. Uma tela com os exemplares ordenados é exibida.

1.1.86 Ator

· Administrador

· Funcionário

· Cliente

1.1.87 Classes de análise

1.1.87.1 Classes de Entidade

Não apresenta.

1.1.87.2 Classes de Coleção de Entidades

· Repositorio Livros

1.1.87.3 Classes de Controle

· OrdenarLivrosPreco

1.1.87.4 Classes de Fronteira

· TelaListaLivro

1.1.88 Diagramas

1.1.88.1 Diagrama de Seqüência

1.1.88.2 Diagrama de Classes

Ordenar exemplares por gênero (RF-23)

1.1.89 Descrição

Um Usuário pode solicitar a ordenação de exemplares já pesquisados, para tal funcionalidade operar é necessário que seja especificada a maneira de ordenação como por gênero. Uma tela com os exemplares ordenados é exibida.

1.1.90 Ator

· Administrador

· Funcionário

· Cliente

1.1.91 Classes de análise

1.1.91.1 Classes de Entidade

Não apresenta.

1.1.91.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.91.3 Classes de Controle

· OrdenarLivrosGenero

1.1.91.4 Classes de Fronteira

· TelaListarLivros

1.1.92 Diagramas

1.1.92.1 Diagrama de Seqüência

1.1.92.2 Diagrama de Classes

Ordenar exemplares por rating (RF-24)

1.1.93 Descrição

Um Usuário pode solicitar a ordenação de exemplares já pesquisados, para tal funcionalidade operar é necessário que seja especificada a maneira de ordenação como por rating. Uma tela com os exemplares ordenados é exibida.

1.1.94 Ator

· Administrador

· Funcionário

· Cliente

1.1.95 Classes de análise

1.1.95.1 Classes de Entidade

Não apresenta.

1.1.95.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.95.3 Classes de Controle

· OrdenarLivrosRate

1.1.95.4 Classes de Fronteira

· TelaListarLivros

1.1.96 Diagramas

1.1.96.1 Diagrama de Seqüência

1.1.96.2 Diagrama de Classes

Ordenar exemplares por editora (RF-25)

1.1.97 Descrição

Um Usuário pode solicitar a ordenação de exemplares já pesquisados, para tal funcionalidade operar é necessário que seja especificada a maneira de ordenação como por editora. Uma tela com os exemplares ordenados é exibida.

1.1.98 Ator

· Administrador

· Funcionário

· Cliente

1.1.99 Classes de análise

1.1.99.1 Classes de Entidade

Não apresenta.

1.1.99.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.99.3 Classes de Controle

· OrdenarLivrosEditora

1.1.99.4 Classes de Fronteira

· TelaListarLivros

1.1.100 Diagramas

1.1.100.1 Diagrama de Seqüência

1.1.100.2 Diagrama de Classes

Vender exemplar (RF-26)

1.1.101 Descrição

O Funcionário pode efetuar a venda de exemplares quando estiver logado, para tal funcionalidade operar é necessário identificar os exemplares que estão sendo vendidos. Caso os exemplares existam e estejam disponíveis no estoque, uma tela de confirmação é exibida.

1.1.102 Ator

· Funcionário

1.1.103 Classes de análise

1.1.103.1 Classes de Entidade

· Livros

1.1.103.2 Classes de Coleção de Entidades

· RepositorioFunc

· RepositorioLivros

1.1.103.3 Classes de Controle

· VenderExemplar

· ConfirmacaoCritica

1.1.103.4 Classes de Fronteira

· TelaVenda

1.1.104 Diagramas

1.1.104.1 Diagrama de Seqüência

1.1.104.2 Diagrama de Classes

Consultar balanço geral (RF-27)

1.1.105 Descrição

O Administrador pode consultar o balanço geral quando estiver logado. Uma tela com as informações do balanço geral é exibida.

1.1.106 Ator

· Administrador

1.1.107 Classes de análise

1.1.107.1 Classes de Entidade

Não apresenta.

1.1.107.2 Classes de Coleção de Entidades

· RepositorioVenda

1.1.107.3 Classes de Controle

· ConsultarBalanco

1.1.107.4 Classes de Fronteira

· TelaBalanco

1.1.108 Diagramas

1.1.108.1 Diagrama de Seqüência

1.1.108.2 Diagrama de Classes

Consultar balanço por data (RF-28)

1.1.109 Descrição

O Administrador pode consultar o balanço por data quando estiver logado, para tal funcionalidade operar é necessário passar o período desejado. Caso o período esteja de acordo com o padrão, uma tela com o balanço é exibida.

1.1.110 Ator

· Administrador

1.1.111 Classes de análise

1.1.111.1 Classes de Entidade

Não apresenta.

1.1.111.2 Classes de Coleção de Entidades

· RepositorioVenda

1.1.111.3 Classes de Controle

· ConsultarBalancoData

1.1.111.4 Classes de Fronteira

· TelaBalanco

1.1.112 Diagramas

1.1.112.1 Diagrama de Seqüência

1.1.112.2 Diagrama de Classes

Listar saída de exemplares (RF-29)

1.1.113 Descrição

O Administrador pode listar a saída de exemplares do dia vigente quando estiver logado. Uma tela com os exemplares vendidos no dia é exibida.

1.1.114 Ator

· Administrador

1.1.115 Classes de análise

1.1.115.1 Classes de Entidade

Não apresenta.

1.1.115.2 Classes de Coleção de Entidades

· RepositorioVenda

1.1.115.3 Classes de Controle

· ListarSaidas

1.1.115.4 Classes de Fronteira

· TelaBalanco

1.1.116 Diagramas

1.1.116.1 Diagrama de Seqüência

1.1.116.2 Diagrama de Classes

Gerar etiqueta de estante (RF-30)

1.1.117 Descrição

O Funcionário pode gerar etiqueta de estante para determinado exemplar quando estiver logado, para tal funcionalidade operar é necessário identificar o exemplar. Caso o exemplar exista, uma tela com a nova etiqueta é exibida.

1.1.118 Ator

· Funcionário

1.1.119 Classes de análise

1.1.119.1 Classes de Entidade

· Livros

1.1.119.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.119.3 Classes de Controle

· GerarEtiquetas

1.1.119.4 Classes de Fronteira

· TelaEtiqueta

1.1.120 Diagramas

1.1.120.1 Diagrama de Seqüência

1.1.120.2 Diagrama de Classes

Atribuir classificação a exemplar (RF-31)

1.1.121 Descrição

O Cliente pode atribuir uma classificação quando estiver consultando um exemplar. Uma tela de confirmação é exibida.

1.1.122 Ator

· Cliente

1.1.123 Classes de análise

1.1.123.1 Classes de Entidade

· Livros

1.1.123.2 Classes de Coleção de Entidades

· RepositorioLivros

1.1.123.3 Classes de Controle

· AtribuirClassificacao

1.1.123.4 Classes de Fronteira

· TelaRate

1.1.124 Diagramas

1.1.124.1 Diagrama de Seqüência

1.1.124.2 Diagrama de Classes

Redigir sugestão (RF-32)

1.1.125 Descrição

O Cliente pode redigir uma sugestão para a livraria quando estiver acessando o sistema. Uma tela de confirmação é exibida.

1.1.126 Ator

· Cliente

1.1.127 Classes de análise

1.1.127.1 Classes de Entidade

Não apresenta.

1.1.127.2 Classes de Coleção de Entidades

· RepositorioSugestao

1.1.127.3 Classes de Controle

· InserirSugestao

1.1.127.4 Classes de Fronteira

· TelaSugestaoCliente

1.1.128 Diagramas

1.1.128.1 Diagrama de Seqüência

1.1.128.2 Diagrama de Classes

Visualizar sugestão (RF-33)

1.1.129 Descrição

O Administrador pode visualizar sugestões dos clientes quando estiver logado no sistema. Uma tela com as sugestões redigidas é exibida.

1.1.130 Ator

· Administrador

1.1.131 Classes de análise

1.1.131.1 Classes de Entidade

· Sugestao

1.1.131.2 Classes de Coleção de Entidades

· RepositorioSugestao

1.1.131.3 Classes de Controle

· ConsultarSugestao

1.1.131.4 Classes de Fronteira

· TelaSugestaoAdmin

1.1.132 Diagramas

1.1.132.1 Diagrama de Seqüência

1.1.132.2 Diagrama de Classes

Deletar sugestão (RF-34)

1.1.133 Descrição

O Administrador pode deletar sugestões redigidas pelos clientes quando estiver logado, para tal funcionalidade operar é necessário selecionar uma sugestão a ser deletada. Uma tela de confirmação é exibida.

1.1.134 Ator

· Administrador

1.1.135 Classes de análise

1.1.135.1 Classes de Entidade

Não apresenta.

1.1.135.2 Classes de Coleção de Entidades

· RepositorioAdmin

· RepositorioSugestao

1.1.135.3 Classes de Controle

· RemoverSugestao

· ConfirmacaoCritica

1.1.135.4 Classes de Fronteira

· TelaSugestaoAdmin

1.1.136 Diagramas

1.1.136.1 Diagrama de Seqüência

1.1.136.2 Diagrama de Classes

Confirmar ação crítica (RF-35)

1.1.137 Descrição

O Usuário pode confirmar alguma ação crítica quando for solicitado, para tal funcionalidade operar é necessário informar sua senha. Caso a senha seja válida, a ação é confirmada.

1.1.138 Ator

· Administrador

· Funcionário

1.1.139 Classes de análise

1.1.139.1 Classes de Entidade

Não apresenta.

1.1.139.2 Classes de Coleção de Entidades

· RepositorioUsuario

1.1.139.3 Classes de Controle

· ConfirmacaoCritica

1.1.139.4 Classes de Fronteira

· TelaCritica

1.1.140 Diagramas

1.1.140.1 Diagrama de Seqüência

1.1.140.2 Diagrama de Classes

Projeto da arquitetura

O projeto de arquitetura visa detalhar e explicitar a arquitetura do software, como também explicitar detalhes de sua implementação e padronização. Essas informações servirão de guia para os desenvolvedores durante o processo de implementação sendo assim de grande importância para a devida produção do sistema.

Mapeamento de classes

Para a elaboração da arquitetura, fez-se o mapeamento das classes identificadas na fase de análise de casos de uso em elementos de projeto, sendo este indicado abaixo.

Classes de Análise

Elementos de Projeto

ConsultarBalanco

ConsultarBalancoData

ListarSaidas

VenderExemplar

ControleBalanco

ConsultarEncom

ListarEncom

InserirEncom

ModificarEncom

RemoverEncom

CadastroEncomenda

ConsultarFunc

ModificaFunc

RemoverFunc

CadastrarFunc

CadastroFuncionario

CadastrarLivros

ConsultarLivros

ModificarLivos

RemoverLivros

ListarLivrosAutor

ListarLivrosAvan

ListarLivrosTitulo

OrdenarLivrosEditora

OrdenarLivrosGenero

OrdenarLivrosPreco

OrdenarLivrosRate

AtribuirClassificacao

GerarEtiqueta

CadastroLivro

InserirSugestao

ConsultarSugestao

RemoverSugestao

ControleSugestao

CadastrarAdmin

ModificarAdmin

RemoverAdmin

ConsultarAdmin

CadastroAdministrador

AlterarSenha

EfetuarLogin

ConfirmacaoCritica

CadastroUsuario

RepositorioAdmin

RepositorioUsuario

RepositorioAdminstrador

RepositorioAdminBD

RepositorioFunc

RepositorioUsuario

RepositorioFuncionario

RepositorioFuncBD

RepositorioEncomendas

RepositorioEncomendas

RepositorioEncomBD

RepositorioVenda

RepositorioVenda

RepositorioVendaBD

RepositorioLivros

RepositorioLivros

RepositorioLivrosBD

RepositorioSugestao

RepositorioSugestao

RepositorioSugestBD

TelaAlterarSenha

TelaAlterarSenha

TelaControleAdmin

TelaControleAdministrador

TelaControleEncomenda

TelaControleEncomenda

TelaControleFunc

TelaControleFuncionario

TelaControleLivros

TelaRate

TelaControleLivros

TelaEtiqueta

TelaEtiqueta

TelaEfetuarLogin

TelaInicial

TelaSugestaoAdmin

TelaSugestaoAdmistrador

TelaSugestaoCliente

TelaSugestaoCliente

TelaBalanco

TelaBalanco

Periodo

Periodo

TelaVenda

TelaVenda

Admin

Administrador

Encom

Encomenda

Livros

Livro

Venda

Venda

Sugestao

Sugestao

Func

Funcionario

Data

Data

TelaCritica

Diagramação de classes

Modelagem de banco de dados

Estrutura de pacotes

1.1.141 Diagrama de pacotes

1.1.142 Distribuição de classes

Abaixo se encontra a distribuição de classes entre os pacotes. Classes relacionadas a exceções não foram especificadas, pois foram consideradas como triviais.

Pacote

Classes

gui

TelaAlterarSenha

TelaControleAdministrador

TelaControleEncomenda

TelaControleFuncionario

TelaControleLivros

TelaEtiqueta

TelaInicial

TelaSugestaoAdmistrador

TelaSugestaoCliente

TelaBalanco

TelaVenda

fachada

Fachada

negocio.usuario

CadastroAdministrador

CadastroUsuario

CadastroFuncionario

negocio.administrativos

ControleBalanco

ControleSugestao

negocio.exemplares

CadastroEncomenda

CadastroLivro

colecaoDeDados.repositorios

RepositorioAdminstrador

RepositorioFuncionario

RepositorioEncomendas

RepositorioVenda

RepositorioLivros

RepositorioSugestao

colecaoDeDados.bancoDeDados

RepositorioAdminBD

RepositorioFuncBD

RepositorioEncomBD

RepositorioVendaBD

RepositorioLivrosBD

RepositorioSugestBD

dados.usuario

Administrador

Funcionario

dados.administrativos

Venda

Sugestao

dados.exemplares

Encomenda

Livro

dados.util

Data

Periodo

Referências

· www.cin.ufpe.br/~if682 - Página da disciplina Engenharia de Software e Sistemas.

· www.cin.ufpe.br/~wflf/ess - Página do projeto.

· Sommerville, Ian. Engenharia de Software, 8ª ed., Addison-Wesley, 2007.

Libris®Página | 2