Escolar Documentos
Profissional Documentos
Cultura Documentos
Niterói
2016
ALYSSON SERRA VASCONCELLOS
Orientador:
Jean de Oliveira Zahn
NITERÓI
2016
Ficha Catalográfica elaborada pela Biblioteca da Escola de Engenharia e Instituto de Computação da UFF
CDD 658.84
ALYSSON SERRA VASCONCELLOS
Banca Examinadora:
_________________________________________
_________________________________________
de Software.
ABSTRACT
RESUMO..................................................................................................................... 8
ABSTRACT ................................................................................................................. 9
LISTA DE ILUSTRAÇÕES ........................................................................................ 10
LISTA DE ABREVIATURAS E SIGLAS..................................................................... 11
1. INTRODUÇÃO ..................................................................................................... 14
2. O PROJETO LOJA VIRTUAL ............................................................................... 16
2.1. UM BREVE HISTÓRICO DO E-COMMERCE ................................................ 16
2.2. TRABALHOS RELACIONADOS ..................................................................... 18
2.3. MOTIVAÇÕES DO PROJETO ........................................................................ 20
3. MODELODE DADOS DO SISTEMA ..................................................................... 22
3.1. MODELO ENTIDADE RELACIONAMENTO (ER) .......................................... 22
3.2. TABELAS DO BANCO DE DADOS (BD) DO SISTEMA ................................. 24
3.2.1. Tabela Usuario ......................................................................................... 24
3.2.2. Tabela Sessao ......................................................................................... 24
3.2.3. Tabela Bicicleta ........................................................................................ 25
3.2.4. Tabela Produto ......................................................................................... 26
3.2.5. Tabela Oferta ........................................................................................... 26
3.2.6. Tabela Compra......................................................................................... 27
3.2.7. Tabela SolicitacaoDescricao .................................................................... 27
3.2.8. Tabela Carrinho........................................................................................ 28
3.2.9. Tabela Distribuicao................................................................................... 28
3.2.10. Tabela LoteDistribuicao .......................................................................... 29
3.2.11. Tabela Distribuidor ................................................................................. 29
3.3. DESCRIÇÃO JUSTIFICATIVA DOS CAMPOS DAS TABELAS DO BD ......... 30
3.3.1. Descrição Tabela Usuario ........................................................................ 30
3.3.2. Descrição da Tabela Sessao.................................................................... 31
3.3.3. Descrição da Tabela Bicicleta .................................................................. 31
3.3.4. Descrição da Tabela Produto ................................................................... 32
3.3.5. Descrição da Tabela Oferta...................................................................... 33
3.3.6. Descrição da Tabela Compra ................................................................... 33
3.3.7. Descrição da Tabela SolicitacaoDescricao .............................................. 34
3.3.8. Descrição da Tabela Carrinho .................................................................. 34
3.2.9. Descrição da Tabela Distribuicao ............................................................. 35
3.3.10. Descrição da Tabela LoteDistribuicao .................................................... 35
3.3.11. Descrição da Tabela Distribuidor ........................................................... 36
4. SOLUÇÃO PROPOSTA ........................................................................................ 37
4.1. CASO DE USO CADASTRAR CLIENTE ........................................................ 38
4.1.1. Diagrama do caso de uso Cadastrar Cliente ............................................ 38
4.1.2. Descrição do caso de uso Cadastrar Cliente ........................................... 39
4.2. CASO DE USO AUTENTICAR CLIENTE ....................................................... 42
4.2.1. Diagrama do caso de uso Autenticar Cliente ........................................... 42
4.2.2. Descrição do caso de uso Autenticar Cliente ........................................... 43
4.3. CASO DE USO REALIZAR COMPRA ............................................................ 45
4.3.1. Diagrama do caso de uso Realizar Compra ............................................. 45
4.3.2. Descrição do caso de uso Realizar Compra ............................................ 46
4.4. CASO DE USO CALCULAR FRETE .............................................................. 48
4.4.1 Diagrama do caso de uso Calcular Frete .................................................. 48
4.4.2 Descrição do caso de uso Calcular Frete .................................................. 49
4.5. CASO DE USO GERENCIAR CARRINHO ..................................................... 50
4.5.1. Diagrama do caso de uso Gerenciar Carrinho ......................................... 50
4.5.2. Descrição do caso de uso Gerenciar Carrinho ......................................... 51
4.6. CASO DE USO CONFIRMAR PAGAMENTO ................................................ 54
4.6.1. Diagrama do caso de uso Confirmar Pagamento..................................... 54
4.6.2. Descrição do caso de uso Confirmar Pagamento .................................... 55
4.7. CASO DE USO REALIZAR DESCRIÇÃO DETALHADA ................................ 57
4.7.1. Diagrama do caso de uso Realizar Descrição detalhada ......................... 57
4.7.2. Descrição do caso de uso Realizar Descrição detalhada ........................ 58
4.8. CASO DE USO CADASTRAR ADMINISTRADOR ......................................... 61
4.8.1.Diagrama do caso de uso Cadastrar Administrador .................................. 61
4.8.2.Descrição do caso de uso Cadastrar Administrador ................................. 62
4.9. CASO DE USO AUTENTICAR ADMINISTRADOR ........................................ 65
4.9.1. Diagrama do caso de uso Autenticar Administrador ................................ 65
4.9.2. Descrição do caso de uso Autenticar Administrador ................................ 66
4.10.CASO DE USO ADMINISTRAR SOLICITAÇÃO DE DESCRIÇÃO ............... 68
4.10.1. Diagrama do caso de uso Administrar Solicitação de Descrição ........... 68
4.10.2. Descrição do caso de uso Administrar Solicitação de Descrição ........... 69
4.11. CASO DE USO ADMINISTRAR PRODUTOS .............................................. 72
4.11.1. Descrição do caso de uso Administrar Produtos .................................... 72
4.11.2. Descrição do caso de uso Administrar Produtos .................................... 73
4.12. CASO DE USO ADMINISTRAR OFERTAS ................................................. 76
4.12.1. Diagrama do caso de uso Administrar Ofertas ....................................... 76
4.12.2. Descrição do caso de uso Administrar Ofertas ...................................... 77
4.13. CASO DE USO ADMINISTRAR VENDAS .................................................... 80
4.13.1. Diagrama do caso de uso Administrar Vendas ...................................... 80
4.13.2. Descrição do caso de uso Administrar Vendas ...................................... 81
4.14. CASO DE USO ADMINISTRAR DISTRIBUIÇÃO ......................................... 84
4.14.1. Descrição do caso de uso Administrar Distribuição ............................... 84
4.14.2. Descrição do caso de uso Administrar Distribuição ............................... 85
4.15. MAPA DOS CASOS DE USOS DO SISTEMA ............................................. 90
5. REGRAS, CLASSES E FUNCIONALIDADES ...................................................... 91
5.1. FUNCIONALIDADES DO SISTEMA ............................................................... 91
5.2. REGRAS DE NEGÓCIO DO SISTEMA .......................................................... 93
5.3. REQUISITOS FUNCIONAIS DO SISTEMA .................................................... 95
5.4. DIAGRAMA DE CLASSES DO SISTEMA ...................................................... 97
5.4.1. Descrição das Classes ............................................................................. 97
CONCLUSÃO .......................................................................................................... 100
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................ 101
14
1. INTRODUÇÃO
Ao optar por uma loja virtual pronta, o empreendedor deixa de ter muitas
formas de controlar o seu negócio, tome-se nota:
Tecnologia a ser utilizada (a linguagem de programação e de banco
de dados a ser utilizada, assim certos modelos de Banco de Dados,
como o noSQL e padrões de arquitetura, como o MVC).
A arte a ser utilizada, pois não há como decidir todos os aspectos
gráficos do Sistema.
A configuração da camada de transporte das Redes, por exemplo: O
Sistema poderia trabalhar a relação distribuidor X Loja utilizando o
protocolo UDP (deveria implementar serviço dentro da aplicação para
garantir entrega segura de entrega de dados) para tornar mais rápido
as comunicações, em oposição ao protocolo comum, o TCP.
Regras de negócio, pois o empreendedor não poderá tomar certas
decisões do software, como por exemplo: a quantidade definida para
o formato para inclusão de descrição de cada produto da loja.
21
Tipo de Permitir
Campo dado Nulo Chave Breve descrição
Chave Código identificador da
idBicicleta int Não primária bicicleta
Chave Código Identificador do
codProduto int Não estrangeira Produto
Identificação do código
Chave referente ao tipo de
codTipoProduto int Não estrangeira produto
modelo text Não - Código série da bicicleta
marca text Não - Fabricante da bicicleta
Em qual estilo a bicicleta
estilo text Sim - se enquadra
O tipo e o tamanho do
quadro
quadro text Sim -
O tipo e o tamanho do
aro
aro text Sim -
Tipo de revestimento,
tamanho e estilo do selim
selim text Sim - (banco)
guidao text Sim - O tipo e o tamanho
O tipo de revestimento
pneu text Sim - e espessura
Se há ou não e
marcha text Sim - descrições
sistema text Sim - O tipo de sistema
Se há ou não e
suspensao text Sim - descrições
Se há ou não e
luz text Sim - descrições
Se há ou não e
retrovisor text Sim - descrições
26
Se há ou não e
paralama text Sim - descrições
carona text Sim - Se há ou não e
A carga máxima que
carga int Sim - suporta a bicicleta
Peso líquido da
peso float Sim - bicicleta
Sim (false
valor Indica se a oferta está
ativo boolean default) - válida
Tipo de Permitir
Nome do Campo dado Nulo Chave Breve descrição
Chave Código Identificador
idCompra int Não primária da compra
Chave Código Identificador
codOferta int Não estrangeira da oferta
Código identificador
Chave do cliente
codCliente int Não estrangeira comprador
Data da compra
dataCompra dateTime Não - realizada
Valor (preço) da
valorOferta float Não - oferta
valorFinal float Não - Valor final pago
Valor do frete da
valorFrete float Sim - compra
Sim (false Indica se o
valor pagamento foi
confirmacao boolean default) - confirmado
Descrição da
envioSolicitacao text Não - solicitação
Sim (false
valor Indica se a solicitação
statusSolicitacao boolean default) - foi respondida
Resposta da
retornoSolicitacao text Sim - solicitação
Nome do
Campo Descrição justificativa
Código identificador do usuário. Distingue cada usuário registrado
idUsuario no Sistema.
Login do usuário. Texto a ser inserido pelo usuário no campo Login
login durante a autenticação.
Senha do usuário. Texto criptografado a ser inserido pelo usuário no
senha campo Senha durante a autenticação.
tipoUsuario Tipo de usuário. Os usuários podem ser Administradores ou Clientes.
Nome Completo do usuário. Em caso de necessidade de recuperar a
nome pessoa associada ao usuário pelo nome.
CPF do usuário. Em caso de necessidade de recuperar a pessoa
cpf associada ao usuário pelo CPF do usuário
Email do usuário. Em caso de necessidade de entrar em contato pelo
email usuário por email.
dataNasc Data de nascimento do usuário.
Número da rua residencial do usuário. Número da rua do endereço como
numEndereco padrão utilizado pelas entregas das compras feitas pelo usuário.
CEP do endereço do usuário. CEP como padrão utilizado pela entrega
CEP das compras feitas pelo usuário.
31
Nome do
Campo Descrição
Código identificador da sessão. Distingue cada sessão registrada
idSession no Sistema.
Código identificador do usuário. Distingue cada usuário registrado
codUsuario no Sistema.
Dia e a hora da sessão do usuário. Conta-se a partir do Login do
diaHora usuário.
Duração da sessão do usuário. Começa a contar em segundos a
duracao partir do Login do usuário.
Nome do
Campo Descrição
Código identificador da bicicleta. Distingue cada bicicleta
idBicicleta registrada no Sistema.
Código Identificador do Produto. Distingue cada produto
codProduto registrado no Sistema.
Identificação do código referente ao tipo de produto. Distingue
cada tipo de produto registrado no Sistema. Neste caso, o tipo de
codTipoProduto produto é uma bicicleta.
Código de série da bicicleta. Localiza o código do modelo da
modelo bicicleta de acordo com o fabricante.
marca Fabricante da bicicleta.
Em qual estilo a bicicleta se enquadra. Por exemplo: urbana,
estilo praiana, mountain bike.
O tipo e o tamanho do quadro. O tamanho do quadro é medido
em polegadas. O tipo do quadro normalmente é feito de alumínio,
aço ou fibra de carbono.
quadro
O tipo e o tamanho do aro. O material do aro e o tamanho em
polegadas.
aro
32
Nome do
Campo Descrição justificativa
Código Identificador do Produto. Distingue cada produto
idProduto registrado no Sistema.
Código Identificador referente ao tipo de produto. Distingue cada
codTipoProduto tipo de produto registrado no Sistema.
descTipoProduto Descrição referente ao tipo de produto.
Nome do
Campo Descrição justificativa
Código identificador da oferta. Distingue cada oferta registrada no
idOferta Sistema.
Data da criação da oferta. Quando o administrador cria uma
diaHora oferta, o Sistema guarda o dia e a hora.
valor Valor (preço) da oferta.
Código Identificador referente ao tipo de produto. Distingue cada
codTipoProduto tipo de produto registrado no Sistema.
Código Identificador do Produto. Distingue cada produto
codProduto registrado no Sistema.
Indica se a oferta está válida. A oferta pode estar anunciada ou
ativo não na loja virtual.
Nome do
Campo Descrição justificativa
Código Identificador da compra. Distingue cada compra registrada
idCompra no Sistema.
Código identificador da oferta. Distingue cada oferta registrada no
codOferta Sistema.
Código identificador do usuário. Distingue cada usuário, neste
codCliente caso cliente, registrado no Sistema.
dataCompra Data da compra realizada.
valorOferta Valor (preço) da oferta.
valorFinal Valor final pago. Este valor é a soma entre o valor da oferta e o
34
valor do frete.
Valor do frete da compra. Este valor é obtido a partir do CEP de
valorFrete entrega do pedido do produto comprado.
Indica se o pagamento foi confirmado. Um produto comprado
confirmacao pode ter ou não o pagamento confirmado.
Nome do
Campo Descrição justificativa
Código Identificador da solicitação. Distingue cada solicitação
idSolicitacao registrada no Sistema.
Código Identificador referente ao tipo de produto. Distingue
codProduto cada produto registrado no Sistema.
Descrição da solicitação. Texto enviado pelo cliente para
envioSolicitacao solicitar mais detalhes de um produto
Indica se a solicitação foi respondida. Uma solicitação pode ter
statusSolicitacao sido ou não respondida pelo usuário Administrador.
Resposta da solicitação. Texto retornado pelo Administrador
para fornecendo mais detalhes mais detalhes de um produto ou
retornoSolicitacao somente explicando que os detalhes já foram fornecidos.
Nome do
Campo Descrição justificativa
Código Identificador docarrinho de compras. Distingue cada
idCarrinho carrinho registrado no Sistema.
Código identificador da oferta. Distingue cada oferta registrada no
codOferta Sistema.
35
Nome do
Campo Descrição justificativa
Código Identificador da distribuição. Distingue cada distribuição
idDistribuicao registrada no Sistema.
Código Identificador do lote. Distingue cada lote de distribuição
codLote registrado no Sistema.
Código Identificador dodistribuidor. Distingue cada distribuidor
codDistribuidor registrado no Sistema.
dataTransporte Data de transporte da distribuição.
Nome do
Campo Descrição justificativa
Código Identificador do lote. Distingue cada lote de distribuição
idLote registrado no Sistema.
Código Identificador do Produto. Distingue cada produto
codProduto registrado no Sistema.
Valor do lote. Valor monetário total do lote de distribuição a ser
Valor distribuído para empresa.
Quantidade de produtos. Quantidade de produtos dentro do lote
quantidade distribuído para a empresa.
Nome do
Campo Descrição justificativa
Código Identificador dodistribuidor. Distingue cada distribuidor
idDistribuidor registrado no Sistema.
nome Nome da empresa distribuidora.
Nome do representante da distribuidora. Pessoa física que
responde legalmente pela empresa que faz a distribuição de
representante produtos.
telefone Telefone do distribuidor.
celular Celular do distribuidor.
endereco Endereço do distribuidor.
email Email do distribuidor.
4. SOLUÇÃO PROPOSTA
ID: UC01
Atores: Cliente
3. O Sistema disponibiliza a
visualização dos dados pessoais do
40
cliente.
Editar Cadastro
Excluir Cadastro
4. O Cliente confirma.
2) Dados inválidos.
3) Campo obrigatório.
4) CPF inválido.
5) CPF já cadastrado.
ID: UC02
Atores: Cliente
2) CPF inválido.
3) Senha inválida.
ID: UC03
Atores: Cliente
Confirmar Compra
Se as informações de endereço
estiverem errada(s) O Sistema exibe
mensagem [M2].
ID: UC04
Atores: Cliente.
[M1].
ID: UC05
Atores: Cliente
1. O Cliente executa„Selecionar
Produto‟[UC03].
1. O Cliente executa„Selecionar
Produto‟[UC03].
ao perfil do Cliente.
Editar Carrinho
1. O Cliente executa„Selecionar
Produto‟[UC03].
4. O Cliente confirma.
ID: UC06
Atores: Cliente
[UC03]-Confirmar Compra.
Inserir Pagamento
2) Confirma o pagamento?
ID: UC07
Atores: Cliente
[UC03]–Selecionar Produto.
1. O Cliente executa„Selecionar
Produto‟[UC03].
Verificar Descrição
solicitação escrita.
ID: UC08
Atores: Administrador
3. O Sistema disponibiliza a
visualização dos dados pessoais do
Administrador.
Editar Cadastro
1. O Administrador seleciona e o
Sistema executa „Visualizar Cadastro‟
[UC10].
2) Dados inválidos.
64
3) Campo obrigatório.
4) CPF inválido.
5) CPF já cadastrado.
ID: UC09
Atores: Administrador
2) CPF inválido.
3) Senha inválida.
*Este caso de uso tem uma relação de dependência com UC06 - Realizar Descrição detalhada.
69
ID: UC10
Atores: Administrador
Responder Solicitação
Solicitação‟ [UC09]
4. O Administrador preenche o
formulário e clica em enviar.
3) Solicitação já respondida.
ID: UC11
Atores: Administrador
o novo produto.
Editar Produto
Excluir Produto
75
Se o Administrador cancelar a
confirmação de exclusão, Sistema
redireciona para página inicial de LogIn
de Administrador.
ID: UC12
Atores: Administrador
1. O Sistema disponibiliza
„VisualizarOfertas‟ [UC12].
Editar Oferta
Excluir Oferta
79
Se o Administrador cancelar a
confirmação de exclusão, Sistema
redireciona para página inicial de LogIn
de Administrador.
ID: UC13
Atores: Administrador
4. O Administrador altera as
informações que desejar.
7. O Administrador confirma.
Excluir Venda
Se o Administrador cancelar a
83
ID: UC14
Atores: Administrador
confirmação de envio.
AssociarLote
confirmação do Administrador.
6. O Administrador confirma.
9. O Administrador confirma.
DesassociarLote
2. O Administrador clica em
„Desassociar Lote‟ [UC14].
4. O Administrador confirma.
7. O Administrador confirma.
Excluir Distribuição
confirmação do Administrador.
4. O Administrador confirma.
7. O Administrador confirma.
Se o Administrador cancelar a
confirmação de exclusão, Sistema
redireciona para página inicial de LogIn
de Administrador.
3) Confirma a inclusão?
Identificador Descrição
FS13 Distribuição
Identificador Descrição
Identificador Descrição
CONCLUSÃO
REFERÊNCIAS BIBLIOGRÁFICAS