Documento de Análise e Projetoif682/projetos/projetos2008-2/equipe7/analise_e... · Documento de...

Preview:

Citation preview

Universidade Federal de Pernambuco - UFPE

Centro de Informática - CIn

Documento de Análise e Projeto

Disciplina: Engenharia de Software e Sistemas

Professor: Alexandre Vasconcelos

Alunos: Adelmo José Cabral de Almeida

Diogo de Lima Lages

João Paulo Fernandes Barbosa

Severino José de Barros Júnior

Thiago Augusto Ventura Lima

Recife - 2008

2

Histórico de Alterações

Data Versão Descrição Autor

19/10/2008 0.1 Criação do Documento João Paulo Fernandes - jpfb Severino Júnior - sjbj

21/10/2008 0.2

Criação dos Diagramas de Análise Adelmo Cabral - ajca Diogo Lages - dll

João Paulo Fernandes - jpfb Thiago Ventura - tavl

22/10/2008 0.3 Criação dos Diagramas de Projeto Severino Júnior - sjbj

23/10/2008 0.4 Inserção e Formatação do Texto Adelmo Cabral - ajca Diogo Lages - dll

João Paulo Fernandes - jpfb Severino Júnior - sjbj Thiago Ventura - tavl

23/10/2008 1.0 Criação do Documento João Paulo Fernandes - jpfb Severino Júnior - sjbj

3

Índice

1 - Modelo de Análise.............................................................................................................................4

1.1 - Introdução.........................................................................................................................4

1.2 - Análise dos Casos de Uso............................................................................................4

1.2.1 - Cadastrar Pessoa Física............................................................................4

1.2.2 - Atualizar Pessoa Física.............................................................................5

1.2.3 - Consultar Pessoa Física............................................................................6

1.2.4 - Remover Pessoa Física.............................................................................7

1.2.5 - Cadastrar Usuário......................................................................................9

1.2.6 - Cadastrar Venda.......................................................................................10

1.2.7 - Gerar Relatório de Destinos por Período.......................................11

2 - Modelo de Projeto...........................................................................................................................13 2.1 Introdução.........................................................................................................................13 2.2 Arquitetura........................................................................................................................13

2.2.1 Visão Geral do Sistema.....................................................................13

2.2.2 Pacotes..................................................................................................15

4

1 - Modelo de Análise

1.1 - Introdução

Neste documento á apresentada uma visão abstrata do sistema WinTour. Tal visão,

baseada nos casos de uso, irá orientar a equipe de desenvolvedores durante o processo de

desenvolvimento e implementação do projeto. Também será apresentado um diagrama

geral da arquitetura do sistema. Esse esboçará a arquitetura inicial do sistema.

Para evitar o trabalho repetitivo apenas os principais casos de uso foram

analisados, porém tais análises são suficientes para o entendimento dos demais casos de

uso, uma vez que, aqueles que não são aqui analisados são semelhantes aos que aqui estão

descritos.

1.2 - Análise dos Casos de Uso

1.2.1 - Cadastrar Pessoa Física

1.2.1.1 - Descrição Sumária

O sistema permite a inserção de um cliente(Pessoa Física) no banco de dados. Caso

o cliente já esteja no sistema, uma mensagem de erro é apresentada ao usuário. Os dados

relativos ao cliente serão cruciais para uma correta inserção do cliente.

1.2.1.2 - Ator

Usuário

1.2.1.3 - Classes de Análise

Classe de Entidade: PessoaFisica.

Classe de Fronteira: FronteiraCadastrarPessoaFisica.

Classe de Controle: ControleCadastrarPessoaFisica.

Classe de Coleção de Entidades: ColecaoPessoaFisica.

1.2.1.4 - Diagrama de Sequência

5

1.2.1.5 - Diagrama de Classes

1.2.2 - Atualizar Pessoa Física

1.2.2.1 - Descrição Sumária

Os dados de um cliente já cadastrado no sistema poderão ser modificados a

qualquer momento pelo usuário. Uma mensagem de erro deverá ser apresentada caso o

cliente não esteja cadastrado no sistema.

1.2.2.2 - Ator

Usuário

1.2.2.3 - Classes de Análise

Classe de Entidade: PessoaFisica.

Classe de Fronteira: FronteiraAtualizarPessoaFisica.

Classe de Controle: ControleAtualizarPessoaFisica.

Classe de Coleção de Entidades: ColecaoPessoaFisica.

6

1.2.2.4 - Diagrama de Sequência

1.2.2.5 - Diagrama de Classes

1.2.3 - Consultar Pessoa Física

1.2.3.1 - Descrição Sumária

WinTour permite a visualização dos dados de um cliente cadastrado no sistema.

Para tanto o usuário deverá informar o CPF ou o nome do cliente. Nos diagramas abaixo é

demonstrada a ocasião em que a pesquisa pelo cliente se dá através do uso de seu CPF. A

busca através do nome se dá da mesma forma e não se faz necessária sua apresentação.

Caso o usuário procurado não esteja cadastrado no sistema, uma mensagem de erro

deverá ser apresentada.

1.2.3.2 - Ator

Usuário

7

1.2.3.3 - Classes de Análise

Classe de Entidade: PessoaFisica.

Classe de Fronteira: FronteiraConsultarPessoaFisica.

Classe de Controle: ControleConsultarPessoaFisica

Classe de Coleção de Entidades: ColecaoPessoaFisica.

1.2.3.4 - Diagrama de Sequência

1.2.3.5 - Diagrama de Sequência

1.2.4 - Remover Pessoa Física

1.2.4.1 - Descrição Sumária

O sistema permitirá a remoção de qualquer cliente cadastrado no sistema. Caso

ocorra uma tentativa de remover um cliente não cadastrado uma mensagem de erro será

apresentada ao usuário.

8

1.2.4.2 - Ator

Usuário

1.2.4.3 - Classes de Análise

Classe de Entidade: PessoaFisica.

Classe de Fronteira: FronteiraRemoverPessoaFisica.

Classe de Controle: ControleRemoverPessoaFisica.

Classe de Coleção de Entidades: ColecaoPessoaFisica.

1.2.4.4 - Diagrama de Sequência

1.2.4.5 - Diagrama de Classes

9

1.2.5 - Cadastrar Usuário

1.2.5.1 - Descrição Sumária

Será permitida a inserção de um novo usuário no sistema desde que o seu nome de

usuário (login) não coincida com o de algum usuário já cadastrado no sistema. Caso isso

ocorra, uma mensagem de erro deverá ser apresentada na tela. Quando um novo usuário

for cadastrado no sistema um registro de tal operação deverá ser inserido no banco de

dados. Esse registro irá apontar qual usuário efetuou o cadastro do novo usuário do

sistema.

1.2.5.2 - Ator

Usuário

1.2.5.3 - Classes de Análise

Classe de Entidade: Usuario.

Classe de Fronteira: FronteiraCadastrarUsuario.

Classe de Controle: ControleCadastrarUsuario.

Classe de Coleção de Entidades: ColecaoUsuario.

1.2.5.4 - Diagrama de Sequência

10

1.2.5.5 - Diagrama de Classes

1.2.6 - Cadastrar Venda

1.2.6.1 - Descrição Sumária

Uma nova venda poderá ser cadastrada no sistema. Para tanto basta inserir o nome

ou CPF do cliente e os dados relativos à venda. Caso o cliente não esteja cadastrado no

sistema, deverá ser dada a possibilidade de efetuar o cadastramento de tal cliente. Após a

sua criação, a venda deverá obrigatoriamente vinculada a um cliente.

1.2.6.2 - Ator

Usuário

1.2.6.3 - Classes de Análise

Classe de Entidade: Venda.

Classe de Fronteira: FronteiraVenda.

Classe de Controle: ControleVenda.

Classe de Coleção de Entidades: ColecaoVenda e ColecaoPessoaFisica.

11

1.2.6.4 - Diagrama de Sequência

1.2.6.5 - Diagrama de Classes

1.2.7 - Gerar Relatório de Destinos por Período

1.2.7.1 - Descrição Sumária

O sistema deve gerar, a partir de sua base de dados, um relatório detalhado, para

fins estatísticos, da quantidade de viagens realizadas, agrupadas por destino e limitadas a

um período de tempo. Se as datas limite informadas ao sistema forem inválidas, uma

mensagem de erro será apresentada.

Observação: Os casos de uso de Gerar Relatórios se comportam de maneira

semelhante ao do caso descrito. A principal diferença se dá no conteúdo dos relatórios

gerados.

1.2.7.2 - Ator

Usuário

12

1.2.7.3 - Classes de Análise

Classe de Entidade: Usuario.

Classe de Fronteira: FachadaRelatorioDestinosPeriodo.

Classe de Controle: NegocioRelatorioDestinosPeriodo.

Classe de Coleção de Entidades: RepositorioVendas.

1.2.7.4 - Diagrama de Sequência

1.2.7.5 - Diagrama de Classes

13

2 - Modelo de Projeto 2.1 Introdução

Este documento tem como objetivo apresentar a estrutura do sistema Wintour para, a

partir dela, definir o rumo da implementação para os desenvolvedores. Será apresentada uma

visão geral do sistema, definindo as classes essenciais ao funcionamento do mesmo, e uma

arquitetura em camadas, que agrupará essas classes.

2.2 Arquitetura

2.2.1 Pacotes

Pacote Classes

GUI TelaUsuario

TelaVenda

TelaCliente

TelaRelatorio

fachada Fachada

negocio NegocioUsuario

NegocioVenda

NegocioCliente

NegocioRelatorio

repositorio RepositorioUsuario

14

RepositorioVenda

RepositorioCliente

RepositorioRelatorio

classesBasicas Usuario

Venda

Cliente

Relatorio

15

2.2.2 - Visão Geral do Sistema

Recommended