Projeto de sistema e-commerce : uma loja virtual para comercialização de bicicletas

102  Download (0)

Full text

(1)

PROJETO DE SISTEMA E-COMMERCE: UMA LOJA VIRTUAL PARA

COMERCIALIZAÇÃO DE BICLICLETAS

Niterói

2016

(2)

PROJETO DE SISTEMA E-COMMERCE: UMA LOJA VIRTUAL PARA

COMERCIALIZAÇÃO DE BICLICLETAS

Trabalho de Conclusão de Curso submetido ao Curso de Tecnologia em

Sistemas de Computação da

Universidade Federal Fluminense como requisito parcial para obtenção do título

de Tecnólogo em Sistemas de

Computação.

Orientador:

Jean de Oliveira Zahn

NITERÓI

2016

(3)

V331 Vasconcellos, Alysson Serra

Projeto de sistema e-commerce : uma loja virtual para comercialização de bicicletas / Alysson Serra Vasconcellos. – Niterói, RJ : [s.n.], 2016.

101 f.

Projeto Final (Tecnólogo em Sistemas de Computação) – Universidade Federal Fluminense, 2016.

Orientador: Jean de Oliveira Zahn.

1. Comércio eletrônico. 2. Desenvolvimento de software. 3. Empresa virtual. 4. Bicicleta. I. Título.

(4)

ALYSSON SERRA VASCONCELLOS

PROJETO DE SISTEMA E-COMMERCE: UMA LOJA VIRTUAL PARA

COMERCIALIZAÇÃO DE BICLICLETAS

Trabalho de Conclusão de Curso submetido ao Curso de Tecnologia em

Sistemas de Computação da

Universidade Federal Fluminense como requisito parcial para obtenção do título

de Tecnólogo em Sistemas de

Computação.

Niterói, 22 de dezembro de 2016.

Banca Examinadora:

_________________________________________ Prof. Jean de Oliveira Zahn, MSc. – Orientador

UFF – Universidade Federal Fluminense

_________________________________________ Profa. Danubia de Araújo Machado, Msc. – Avaliadora

(5)

Dedico este trabalho a meus irmãos, a meus sobrinhos e a meus pais.

(6)

AGRADECIMENTOS

Agradeço a todas as pessoas que estiveram e estão na minha vida, todas elas que estiveram ao meu lado e contribuíram, direta e indiretamente, para a realização deste trabalho.

(7)

“A sabedoria é algo que quando nos bate à porta já não nos serve para nada”.

(8)

RESUMO

O comércio eletrônico tem sido um importante meio de mediar negociações entre comprador e vendedor. Além da praticidade e conforto na hora da compra, fatores como a entrega do produto à domicilio e a facilidade de pagamento impulsionam esse setor. Diante do crescente cenário e demanda por sistemas de comércio eletrônico, o presente trabalho propõe um projeto de software para lojas virtuais, com o foco na Análise e projeto de um sistema de loja virtual para a comercialização de bicicletas. O projeto foi elaborado para funcionar na plataforma Web, com completa descrição de banco de dados e sua modelagem, soluções propostas e os casos de uso, bem como as Classes e Métodos, as regras de negócio e os requisitos funcionais.

Palavras-chaves: Comércio Eletrônico, e-commerce, Análise de Sistemas, Projeto

(9)

ABSTRACT

In nowadays the eCommerce have been anexcellent tool to handle business transactions between consumers and Sellers. Beyond the utility and easy way to shopping, issues as the well-made delivery and the easy payment became the eCommercesuccess. After the increase and necessity of eCommerce‟s software, this work proposes a web store software, minding the system analysis of a bike web store. The project was write to work in a web platform. The Project launches the model data base, the solution, minding the project uses cases and as well the Class and Methods, the business rules and functional requirements.

(10)

LISTA DE ILUSTRAÇÕES

Figura 1 - Modelo Entidade-Relacionamento (ER) ... 23 Figura 2 - Mapa dos Casos de Uso do Sistema ... 90 Figura 3 - Diagrama de Classes ... 99

(11)

LISTA DE ABREVIATURAS E SIGLAS

B2B – Business To Business (Negócio para Negócio) C2B – Consumer To Business (Consumidor para Negócio)

SQL – Structured Query Language (Linguagem estruturada para consulta) MVC – Model View Controler (Modelo, visão e controle)

UDP – User Datagram Protocol (protocolo de data-grama para o usuário) TCP – Transfer Control Protocol (Protocolo de controle de tráfego)

EDI – electronic data interchange (troca de dados eletrônicos) UML – Unified Modeling Language (linguagem modelada unificada) ER –Entidade-Relacionamento

BD – Banco de Dados

UC – User Case (Casos de Uso) FN – Funcionalidade do Sistema

REQ – Requisição Funcional do Sistema RNG – Regras de Negócio do Sistema OO – Orientação a Objetos.

(12)

SUMÁRIO

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

(13)

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

(14)

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

(15)

1. INTRODUÇÃO

O presente trabalho propõe um Sistema de comércio eletrônico, a partir de concepções relacionadas a e-commerce e a análise de uma loja virtual de bicicletas. Para este fim serão apresentados dados cruciais da análise de Sistemas deste projeto.

O modelo (na primeira forma normal), tanto quanto, as suas descrições e características das tabelas do Bando de Dados. A solução proposta, mostrando os casos de uso do Sistema, assim como os detalhes caso a caso. As regras de negócio, as funcionalidades e requisitos funcionais do Sistema.

Os elementos fundamentais da análise desse projeto darão um panorama do que um empreendedor perderia como forma de controle (ao falar-se em controle em Tecnologia da Informação, entende-se controle de dados, isto é, informação) ao optar por uma solução pronta, sem necessidade de análise.

O seguinte projeto de análise (utilizando o software free StarUML na geração dos diagramas do projeto) pretende fornecer um prospecto do que um empreendedor, que pretende possuir uma loja virtual, vai poder agregar como recurso de Informação.

Para este fim, será apresentado um trabalho dividido em mais 4 Capítulos. Esta divisão decorre da necessidade de segmentação do projeto, pois um projeto de software pode ser apreendido separadamente, sem que uma parte necessariamente implique na outra. Seguem abaixo as descrições dos Capítulos do projeto:

O Capítulo 2, que é uma definição do que é e-commerce e como esse conceito é praticado no mercado. Esta conceituação servirá de base para entender a principal motivação deste projeto. Este Capítulo desenvolverá a ideia de importância do e-commerce e defenderá pontos a favor da empresa, que pretende abrir sua própria loja virtual, fazer sua própria análise de sistema e levantar o projeto do zero.

(16)

Já o Capítulo 3, entrando no projeto, se propõe a exemplificar a modelagem de dados de um Sistema fictício: Loja Virtual de bicicletas. Será abordado o diagrama das entidades (referências às tabelas do Sistema) e como se relacionam, mostrando também suas relações de cardinalidade. Serão descritas também todas as tabelas do Sistema. Essas noções sobre o Banco de Dados demonstram o tamanho do Sistema acerca do montante de dados que o Sistema possuirá.

Dando sequência, o Capítulo 4 abordará o funcionamento específico de cada ação de cada ator do Sistema. Mostrando alguns fluxos de dados do Sistema, as possíveis exceções e bugs (erros), assim como as específicas funcionalidades. Assim, poder-se-á compreender como será o funcionamento do Sistema na prática, assim também, o nível de trabalho, da mesma forma, o nível de conforto que o Cliente poderá ter ao navegar na loja virtual. A partir desta visão do Cliente, será possível fazer a relação trabalho x satisfação que é muito importante para qualquer negócio empreendedor.

Por fim, o Capítulo 5, majoritariamente, funcionará como referencia, durante a fase de implementação, à equipe de programação do projeto. Neste Capítulo as classes trazem os métodos que deverão ser implementados, assim como os requisitos e regras de negócio deverão também ser levados em conta na fase de programação.

(17)

2. O PROJETO LOJA VIRTUAL

O presente Capítulo vai tentar, a partir dos conceitos e exemplos de e-Commerce, também argumentando pontos a favor de um projeto de análise de sistemas para lojas virtual, mostrar o porquê do projeto Loja Virtual de bicicletas.

2.1. UM BREVE HISTÓRICO DO E-COMMERCE

E-commerce ou comércio eletrônico, que também pode ser conhecido como negócio eletrônico (e-business), é compreendido como a “referência das transações de benefícios e serviços através da comunicação eletrônica" (Zheng, 2009, cap. I). Oe-commerce abrange toda forma de relação comercial entre qualquer forma de serviço e produtos se utilizando da comunicação eletrônica (internet). As diferentes formas de serviço podem ser: aulas online, consultorias médicas, legais, empresarias, etc. As diferentes formas de produtos podem ser de qualquer tipo: músicas, filmes, eletrodomésticos, móveis, livros, etc. Entre outros diferentes canais que o e-commerce utiliza são: páginas web própria (com link privado), páginas públicas de divulgação (como o Facebook), e-mail, etc.

O e-commerce surgiu na década de 1990, considerando a relação Cliente X Empresa. Pois por volta do ano de 1991, surgem, na forma de “B2C” (Business to consumer (Becker, 2007, cap. VIII) – Empresa X Consumidor Comum), as vendas de serviços e artigos online para o consumidor.

Porém, as empresas já praticavam comércio eletrônico entre si na forma de “B2B” (Business to Business(Becker, 2007, cap. II) – Empresa X Empresa) desde a década de 1960. Em outras palavras, as empresas já usavam a rede para acordos comerciais dentro do conceito e-commerce „Empresa para Empresa‟ (B2B). Um dos fatores que estimulou esta relação foi porque já era tendência na época o

(18)

paperless(a diminuição do uso de papel) provocando assim a rotina de escritório entre empresas de troca de dados comercias entre um computador e outro, ao invés de trocarem correspondências postais. A prática que começou na década de 1960 é conhecida como EDI – electronic data interchange (troca de dados eletrônicos), o que passou a ser chamado na década de 1990 como e-commerce.

O e-commerce expandiu-se rapidamente pelo mundo, na década de 1990, não houve uma maior difusão localizada por muito tempo em um local específico do mundo. No Brasil, como nos EUA, já era possível acessar uma loja virtual já na década de 1990. O que aconteceu aqui no Brasil, e possivelmente o mesmo fenômeno em outros países, foi o aumento considerável de acessos às lojas virtuais em um período posterior ao ano de 1991 (pode-se somente fazer uma estimativa, pois esses dados são provenientes de empresas, de acordo com o site:

https://www.internetparaempreendedores.com.br/ – vide bibliografia). No Brasil, nota-se

o aumento nos anos de 2002, principalmente com os sites de leilão. Já nos EUA houve um aumento significativo nos anos 1995.

As empresas quando realizavam entre si transações comerciais, utilizavam correspondências ou as vezes, sistema de comunicação, como o fax, ou simplesmente o telefone. O que já era uma forma de comércio não presencial, ou comércio virtual. O que já demonstra uma tendência à virtualização do comércio mesmo antes do e-commerce.

Nos anos de 1980 houve uma evolução constante dos modelos de fazer Negócios pela Internet, exatamente com o surgimento do www (WorldWide Web) o e-commerce passou a ser Negócio para pessoas comuns.

É também um fato que nos últimos anos desde o surgimento do e-commerce essa modalidade vem ganhando força por diferencias como a rapidez, a falta de necessidade de espaço físico e capacidade de se adaptar as necessidades comerciais sempre vigentes desde antes dos anos de 1990. Essas vantagens fazem do e-commerce uma modalidade que não teve outro caminho, senão ganhar cada vez mais espaço ao longo dos anos.

Acima de tudo, o comércio virtual teve outro grande crescimento nos anos 2000 com o aumento da segurança, “permitindo transações monetárias entre computadores residências” (Becker, 2007, Cap. 113), por intermédio de um Banco online - Internet banking.

(19)

Ressalta-se também o comércio por telefone (o telemarketing), um formato não presencial de negociar mercadorias, o que poderia suprir a demanda da velocidade e ausência de espaço físico para o comércio mais moderno. O mesmo acontece para o modelo de vendas pela TV. De qualquer forma o comercial digital (melhor definição para e-commerce no Brasil) ganhou espaço, pois é mais dinâmico que a TV e mais visual do que o telemarketing. Poder construir uma vitrine sem necessitar de espaço físico não poderia ter a rejeição de negociantes e empresários desde que TI vem ganhando força e espaço no mundo dos negócios.

Portanto, mesmo consolidados os modelos de televendas (venda pela televisão) e telemarketing (venda pelo telefone), o e-commerce consegue superar ambos em termos de uso, geração de capital e feedback positivo de clientes. O modelo televiso foi considerado obsoleto e eficaz com um universo muito restrito de produtos. O modelo comercial pelo telefone é considerado abusivo e confuso. Por esses motivos o e-commerce acaba sendo primeira opção empresarial para o comércio impessoal.

2.2. TRABALHOS RELACIONADOS

Podse citar uma gama grande de exemplos de atuações do e-commerce, modelos de aplicação, nomes de empresas e suas formas de atuação (veja-se abaixo, de acordo com o artigo „The Business Models of E-Marketplace‟ em Zheng (2006) – vide bibliografia).

A empresa pode atuar sobre a forma de e-mail, enviando promoções e vantagens sobre seus produtos e serviços. Ela usa um gerenciador de email (um software próprio ou pago) para discriminar específicos clientes que vão receber anúncios de acordo com seus perfis.

A forma mais convencional de atuação de uma empresa é através do e-shop, a própria loja virtual. É a virtualização de uma loja física, com pelo menos um dos itens comuns: carrinhos de compras, vitrine para escolha dos produtos, local de pagamento, local de informações e dúvidas.

Existem outros meios de commerce bem diretos também. Como o e-auctions, que consiste de páginas nas quais clientes dão lances em produtos

(20)

desejados. E o e-mall, uma plataforma onde anunciantes de e-commerce disponibilizam seus catálogos, ou seja, os anunciantes utilizam o serviço de um website para mostrar seus produtos de suas lojas online.

Existem também o Information Broker (Informação de corretores ou informação de intermediários) e o Third Party Marketplaces (mercado de terceiros).O Information Broker é um assistente digital, atuando mais de forma indireta, que oferece informações pessoais e/ ou transações de potenciais clientes às empresas (B2B - business to business). O Third Party Marketplaces é um modelo na forma de plataforma web que suporta empresas que não têm e-commerce, podendo facilitar a logística de entrega, pagamento, ordem de pedido e mostruário de catálogos.

Ao se exemplificar empresas se verifica as diferentes formas de atuação, do e-commerce, no mercado. Criando essa possibilidade é fácil identificar a multiplicidade da sua atuação, demonstrando como o e-commerce é importante para o mercado global atual.

Pode-se citar um gigante, o Ebay. A empresa cria mercado para trazer compradores e vendedores em um só ambiente, no qual podem vender, comprar, revender, consumir com total liberdade do usuário do Ebay. A empresa Online cobra taxas por cada transação realizada. Na America latina, o MercadoLivre tem uma atuação parecida.

E pode-se citar também o Google, que além de suas variadas formas de atuação, atua como e-mall (assim como o Buscape e o Zoom) e, através do Google Apps, vem atuando como provedor de serviços. Usando a internet, os Apps do Googlevendem serviços para serem usados digitalmente (assim como o DropBox), usam a tática: free-for-many, fee-for-few. Em outras palavras, disponibilizam serviços sem custo ao usuário comum, o consumidor, e cobram taxas de poucos, os usuários representando empresas, os negociantes. Essa tática usada pela Google e por algumas outras empresas mostra como no cenário do e-commerce o tipo B2B ainda é muito importante nos dias atuais.

Os exemplos de companhias nacionais e internacionais, tanto os modelos de aplicações supracitados mostram a gama de atuação e importância do e-commerce no cenário global atual.

(21)

2.3. MOTIVAÇÕES DO PROJETO

Cada vez mais surgem lojas virtuais no mercado, a maioria utiliza os mesmos conceitos de navegabilidade, funcionalidade, modernidade. Grandes nomes do mercado varejista no Brasil, (como o extra.com, americanas.com, entre outros) alcançam resultados satisfatórios.

Os grandes varejistas, como os supracitados, não revelam as bases de seus projetos de loja virtual, assim não se sabe se eles utilizaram projetos próprios ou modelos prontos para o uso. Porém existe empresas, como a OpenCart, que por definição “é uma solução pronta e gratuita”.

O OpenCart é um sistema para comércio eletrônico com código aberto, desenvolvido em PHP e licenciado nos termos da GNU General Public License, em outras palavras, é uma solução pronta e gratuita para gestão de loja virtual [www.opencartbrasil.com.br].

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.

(22)

 Não poderá evoluir o sistema para criar novas funcionalidades como, por exemplo: Gerador de Relatório de Controle para vendas e pagamento.

A partir da Análise de Sistemas é possível compreender o tamanho de um software e também dimensionar o problema a se solucionar, neste caso: Criar o projeto da solução que atenderia aos clientes de uma loja virtual de bicicletas. Para esse fim este trabalho mostra o que está por de trás de uma loja virtual, somente aquilo que já deixa claro o tamanho e a complexidade de um projeto de software Loja virtual. Com o exemplo deste trabalho, pretende-se mostrar o que o empreendedor não vê, ou simplesmente não conhece, ao obter o serviço de uma empresa que traz “uma solução pronta”.

(23)

3. MODELODE DADOS DO SISTEMA

Neste Capítulo serão abordadosos aspectos fundamentais relacionados ao projeto e desenvolvimento do banco de dados do sistema, i.e., como o sistema vai se comportar a nível de modelagem de dados.

3.1. MODELO ENTIDADE RELACIONAMENTO (ER)

O modelo Entidade Relacionamento (ER) tem como objetivo descrever os dados ou aspectos de informação de um domínio de negócio ou seus requisitos de processo. A Erro! Fonte de referência não encontrada. (segue abaixo) apresenta o modelo R desenvolvido para a atual abordagem.

(24)
(25)

3.2. TABELAS DO BANCO DE DADOS (BD) DO SISTEMA 3.2.1. Tabela Usuario

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idUsuario int Não

Chave primária

Código identificador do usuário

login text Não - Login do usuário

senha text Não - Senha do usuário

tipoUsuario char Não - Tipo de usuário.

nome text Não - Nome do usuário

cpf text Não - CPF do usuário

email text Sim - Email do usuário

dataNasc datetime Não -

Data de nascimento do usuário

numEndereco text Não -

Número da rua

residencial do usuário

CEP text Não -

CEP do endereço do usuário Tabela 3.2.1 - Usuario 3.2.2. Tabela Sessao

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idSession int Não

Chave primária

Código identificador da sessão

codUsuario int Não

Chave estrangeira

Código identificador do usuário

(26)

diaHora dateTime Não -

Dia e a hora da sessão do usuário

duracao int Não -

Duração da sessão do usuário Tabela 3.2.2 - Sessao 3.2.3. Tabela Bicicleta

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idBicicleta int Não

Chave primária

Código identificador da bicicleta

codProduto int Não

Chave estrangeira

Código Identificador do Produto

codTipoProduto int Não

Chave estrangeira

Identificação do código referente ao tipo de produto

modelo text Não - Código série da bicicleta

marca text Não - Fabricante da bicicleta

estilo text Sim -

Em qual estilo a bicicleta se enquadra

quadro text Sim -

O tipo e o tamanho do quadro

aro text Sim -

O tipo e o tamanho do aro

selim text Sim -

Tipo de revestimento, tamanho e estilo do selim (banco)

guidao text Sim - O tipo e o tamanho

pneu text Sim -

O tipo de revestimento e espessura

marcha text Sim -

Se há ou não e descrições

sistema text Sim - O tipo de sistema

suspensao text Sim -

Se há ou não e descrições

luz text Sim -

Se há ou não e descrições

retrovisor text Sim -

Se há ou não e descrições

(27)

paralama text Sim -

Se há ou não e descrições

carona text Sim - Se há ou não e

carga int Sim -

A carga máxima que suporta a bicicleta

peso float Sim -

Peso líquido da bicicleta Tabela 3.2.1 - Bicicleta 3.2.4. Tabela Produto

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idProduto int Não

Chave primária

Código Identificador do Produto

codTipoProduto int Não -

Código Identificador referente ao tipo de produto

descTipoProduto text Não -

Descrição referente ao tipo de produto Tabela 3.2.4 - Produto 3.2.5. Tabela Oferta

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idOferta int Não

Chave primária

Código identificador da oferta

diaHora dateTime Sim -

Data da criação da oferta

valor float Sim - Valor (preço) da oferta

codTipoProduto int Não

Chave estrangeira

Código Identificador referente ao tipo de produto

codProduto int Não

Chave estrangeira

Código Identificador do Produto

(28)

ativo boolean

Sim (false valor

default) -

Indica se a oferta está válida Tabela 3.2.5 - Oferta 3.2.6. Tabela Compra

Nome do Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idCompra int Não

Chave primária

Código Identificador da compra

codOferta int Não

Chave estrangeira

Código Identificador da oferta

codCliente int Não

Chave estrangeira

Código identificador do cliente

comprador

dataCompra dateTime Não -

Data da compra realizada

valorOferta float Não -

Valor (preço) da oferta

valorFinal float Não - Valor final pago

valorFrete float Sim -

Valor do frete da compra confirmacao boolean Sim (false valor default) - Indica se o pagamento foi confirmado Tabela 3.2.6 - Compra 3.2.7. Tabela SolicitacaoDescricao

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idSolicitacao int Não

Chave primária

Código Identificador da solicitação

codProduto int Não

Chave estrangeira

Código Identificador referente ao tipo de produto

(29)

envioSolicitacao text Não - Descrição da solicitação statusSolicitacao boolean Sim (false valor default) - Indica se a solicitação foi respondida

retornoSolicitacao text Sim -

Resposta da solicitação Tabela 3.2.7 - SolicitacaoDescricao 3.2.8. Tabela Carrinho

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idCarrinho int Não

Chave primária

Código Identificador da compra

codOferta int Não

Chave estrangeira

Código Identificador da oferta

diaHora dateTime Não -

Dia e hora da oferta adicionada ao carrinho fechado boolean Sim (false valor default) - Se o carrinho está aberto ou fechado Tabela 3.2.1 - Carrinho 3.2.9. Tabela Distribuicao

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idDistribuicao int Não

Chave Primária

Código Identificador da distribuição

codLote int Não

Chave Primária

Código Identificador do lote

codDistribuidor int Não

Chave Estrangeira

Código Identificador dodistribuidor

dataTransporte dateTime Não -

Data de transporte do lote

(30)

3.2.10. Tabela LoteDistribuicao

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idLote int Não

Chave Primária

Código Identificador do lote

codProduto int Não

Chave estrangeira

Código Identificador referente ao tipo de produto

valor float Não - Valor do lote

quantidade int Não -

Quantidade de produtos Tabela 3.2.10 - LoteDistribuicao 3.2.11. Tabela Distribuidor

Nome do

Campo

Tipo de

dado

Permitir

Nulo

Chave

Breve descrição

idDistribuidor int Não

Chave Primária

Código Identificador dodistribuidor.

nome text Sim -

Nome da empresa distribuidora.

representante text Não -

Nome do representante da distribuidora

telefone text Não - Telefone do distribuidor

celular text Sim - Celular do distribuidor

endereco text Não - Endereço do distribuidor

email text Sim - Email do distribuidor

(31)

3.3. DESCRIÇÃO JUSTIFICATIVA DOS CAMPOS DAS TABELAS DO BD

A sessão anterior (3.2) mostra todas as tabelas do Sistema do ponto de vista funcional, deixando claro como estas tabelas serão implementadas na plataforma (software que contêm os dados lógicos do Sistema) de Banco de Dados. Deste modo, é possível saber o que cada campo de cada tabelaaceitará como dado durante a entrada de dados do usuário.

Já esta sessão (3.3) justifica a existência de cada campo de cada tabela do Banco de dados. É possível também se compreender, nesta sessão, quem são cada um destes campos e assim conseguir obter uma visão de cada tabela.

3.3.1. Descrição Tabela Usuario

Nome do

Campo

Descrição justificativa

idUsuario

Código identificador do usuário. Distingue cada usuário registrado no Sistema.

login

Login do usuário. Texto a ser inserido pelo usuário no campo Login durante a autenticação.

senha

Senha do usuário. Texto criptografado a ser inserido pelo usuário no campo Senha durante a autenticação.

tipoUsuario Tipo de usuário. Os usuários podem ser Administradores ou Clientes.

nome

Nome Completo do usuário. Em caso de necessidade de recuperar a pessoa associada ao usuário pelo nome.

cpf

CPF do usuário. Em caso de necessidade de recuperar a pessoa associada ao usuário pelo CPF do usuário

email

Email do usuário. Em caso de necessidade de entrar em contato pelo usuário por email.

dataNasc Data de nascimento do usuário.

numEndereco

Número da rua residencial do usuário. Número da rua do endereço como padrão utilizado pelas entregas das compras feitas pelo usuário.

CEP

CEP do endereço do usuário. CEP como padrão utilizado pela entrega das compras feitas pelo usuário.

(32)

Tabela 3.3.1 - Descrição Usuario

3.3.2. Descrição da Tabela Sessao

Nome do

Campo

Descrição

idSession

Código identificador da sessão. Distingue cada sessão registrada no Sistema.

codUsuario

Código identificador do usuário. Distingue cada usuário registrado no Sistema.

diaHora

Dia e a hora da sessão do usuário. Conta-se a partir do Login do usuário.

duracao

Duração da sessão do usuário. Começa a contar em segundos a partir do Login do usuário.

Tabela 3.3.2 – Descrição Sessao

3.3.3. Descrição da Tabela Bicicleta

Nome do

Campo

Descrição

idBicicleta

Código identificador da bicicleta. Distingue cada bicicleta registrada no Sistema.

codProduto

Código Identificador do Produto. Distingue cada produto registrado no Sistema.

codTipoProduto

Identificação do código referente ao tipo de produto. Distingue cada tipo de produto registrado no Sistema. Neste caso, o tipo de produto é uma bicicleta.

modelo

Código de série da bicicleta. Localiza o código do modelo da bicicleta de acordo com o fabricante.

marca Fabricante da bicicleta.

estilo

Em qual estilo a bicicleta se enquadra. Por exemplo: urbana, praiana, mountain bike.

quadro

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.

aro

O tipo e o tamanho do aro. O material do aro e o tamanho em polegadas.

(33)

selim Tipo de revestimento, tamanho e estilo do selim (banco).

guidao O tipo e o tamanho.

pneu O tipo de revestimento e espessura.

marcha

Se há ou nãomarcha e descrições. Se houver marcha normalmente a bicicleta varia de 21 a 29 marchas. sistema

O tipo de sistema. Se ela é feita de freio a disco, se o sistema de marcha é interno ou externo, etc...

suspensao

Se há ou nãosuspensao e descrições. A bicicleta pode ter suspensão traseira e/ ou dianteira ou nenhuma suspensão.

luz Se há ou nãoluz e descrições.

retrovisor Se há ou nãoretrovisor e descrições. paralama Se há ou nãoparalama e descrições. carona

Se há ou nãocarona e descrições. Se há carga traseira na bicicleta.

carga

A carga máximaque suporta a bicicleta. Peso máximo que a bicicleta suporta Em kg.

peso Peso líquido da bicicleta; Peso total da bicicleta em kg.

Tabela 3.3.3 – Descrição Bicicleta

3.3.4. Descrição da Tabela Produto

Nome do

Campo

Descrição justificativa

idProduto

Código Identificador do Produto. Distingue cada produto registrado no Sistema.

codTipoProduto

Código Identificador referente ao tipo de produto. Distingue cada tipo de produto registrado no Sistema.

descTipoProduto Descrição referente ao tipo de produto.

(34)

3.3.5. Descrição da Tabela Oferta

Nome do

Campo

Descrição justificativa

idOferta

Código identificador da oferta. Distingue cada oferta registrada no Sistema.

diaHora

Data da criação da oferta. Quando o administrador cria uma oferta, o Sistema guarda o dia e a hora.

valor Valor (preço) da oferta.

codTipoProduto

Código Identificador referente ao tipo de produto. Distingue cada tipo de produto registrado no Sistema.

codProduto

Código Identificador do Produto. Distingue cada produto registrado no Sistema.

ativo

Indica se a oferta está válida. A oferta pode estar anunciada ou não na loja virtual.

Tabela 3.3.5 – Descrição Oferta

3.3.6. Descrição da Tabela Compra

Nome do

Campo

Descrição justificativa

idCompra

Código Identificador da compra. Distingue cada compra registrada no Sistema.

codOferta

Código identificador da oferta. Distingue cada oferta registrada no Sistema.

codCliente

Código identificador do usuário. Distingue cada usuário, neste caso cliente, registrado no Sistema.

dataCompra Data da compra realizada. valorOferta Valor (preço) da oferta.

(35)

valor do frete.

valorFrete

Valor do frete da compra. Este valor é obtido a partir do CEP de entrega do pedido do produto comprado.

confirmacao

Indica se o pagamento foi confirmado. Um produto comprado pode ter ou não o pagamento confirmado.

Tabela 3.3.6 – Descrição Compra

3.3.7. Descrição da Tabela SolicitacaoDescricao

Nome do

Campo

Descrição justificativa

idSolicitacao

Código Identificador da solicitação. Distingue cada solicitação registrada no Sistema.

codProduto

Código Identificador referente ao tipo de produto. Distingue cada produto registrado no Sistema.

envioSolicitacao

Descrição da solicitação. Texto enviado pelo cliente para solicitar mais detalhes de um produto

statusSolicitacao

Indica se a solicitação foi respondida. Uma solicitação pode ter sido ou não respondida pelo usuário Administrador.

retornoSolicitacao

Resposta da solicitação. Texto retornado pelo Administrador para fornecendo mais detalhes mais detalhes de um produto ou somente explicando que os detalhes já foram fornecidos.

Tabela 3.3.7 – Descrição SolicitacaoDescricao

3.3.8. Descrição da Tabela Carrinho

Nome do

Campo

Descrição justificativa

idCarrinho

Código Identificador docarrinho de compras. Distingue cada carrinho registrado no Sistema.

codOferta

Código identificador da oferta. Distingue cada oferta registrada no Sistema.

(36)

diaHora

Dia e hora da oferta adicionada ao carrinho. Quando o Cliente adiciona um produto ao carrinho de compras, o Sistema guarda o dia e a hora.

fechado

Se o carrinho está aberto ou fechado. O carrinho está fechado quando um cliente já realizou o pagamento dos produtos contidos no carrinho de compras.

Tabela 3.3.8 – Descrição Carrinho

3.2.9. Descrição da Tabela Distribuicao

Nome do

Campo

Descrição justificativa

idDistribuicao

Código Identificador da distribuição. Distingue cada distribuição registrada no Sistema.

codLote

Código Identificador do lote. Distingue cada lote de distribuição registrado no Sistema.

codDistribuidor

Código Identificador dodistribuidor. Distingue cada distribuidor registrado no Sistema.

dataTransporte Data de transporte da distribuição.

Tabela 3.3.9 – Descrição Distribuicao

3.3.10. Descrição da Tabela LoteDistribuicao

Nome do

Campo

Descrição justificativa

idLote

Código Identificador do lote. Distingue cada lote de distribuição registrado no Sistema.

codProduto

Código Identificador do Produto. Distingue cada produto registrado no Sistema.

Valor

Valor do lote. Valor monetário total do lote de distribuição a ser distribuído para empresa.

quantidade

Quantidade de produtos. Quantidade de produtos dentro do lote distribuído para a empresa.

(37)

3.3.11. Descrição da Tabela Distribuidor

Nome do

Campo

Descrição justificativa

idDistribuidor

Código Identificador dodistribuidor. Distingue cada distribuidor registrado no Sistema.

nome Nome da empresa distribuidora.

representante

Nome do representante da distribuidora. Pessoa física que responde legalmente pela empresa que faz a distribuição de produtos.

telefone Telefone do distribuidor. celular Celular do distribuidor. endereco Endereço do distribuidor.

email Email do distribuidor.

(38)

4. SOLUÇÃO PROPOSTA

A partir da proposta, criar um projeto de análise de uma loja virtual online, surge o problema (como realizar este projeto) a ser resolvido. E para este fim, é importante identificar o comportamento prático do Sistema através da análise de Casos de Uso do Sistema.

Este Capítulo apresenta a proposta de solução para o problema abordado. Diante do exposto, diversas funcionalidades devem ser consideradas no processo de desenvolvimento do software. Desse modo, este Capítulo detém as informações fundamentais que envolvem aspectos de documentação do sistema a ser desenvolvido, bem como diagramas e análises.

Os diagramas de Casos de Uso foram desenvolvidos de acordo com a demanda significativa do Sistema, pois se tratando de um sistema focado no usuário (cliente e administrador) os Casos de Uso servem para dimensionar as ações dos usuários. Estas ações vão suprir necessidades tanto dos usuários, principalmente do cliente, tanto quanto as necessidades básicas do Sistema.

O Sistema pode ser definido (considerando a atuação dos atores) como dependente de dois atores: o Usuário e o Administrador. O primeiro ator, o usuário, é quem visualiza as ofertas, faz os pedidos e realiza as compras na loja virtual. O Segundo ator, o Administrador, é quem inclui os produtos, as ofertas, faz a distribuição das mercadorias administra as vendas da loja.

Para cada caso de uso será elaborado o diagrama e a descrição caso a caso. O diagrama dimensiona as ações do usuário. A descrição traz características importantes para saber como as funcionalidades de cada ator será executada a nível de software.

(39)

4.1. CASO DE USO CADASTRAR CLIENTE

4.1.1. Diagrama do caso de uso Cadastrar Cliente

(40)

4.1.2. Descrição do caso de uso Cadastrar Cliente

ID: UC01

Objetivo: Permitir ao cliente gerenciar e criar cadastro no sistema.

Requisitos: [REQ01] O Sistema deverá permitir

qualquer CPF de fazer cadastro.

Atores: Cliente

Pré-condições: Nenhuma a nível de sistema.

Pós-condições: Não se aplica.

Fluxo Principal: Incluir Cadastro

1. O Cliente clica em Cadastrar.

2. O Sistema solicita dados pessoais do cliente.

3. O Cliente fornece esses dados e uma senha de sua escolha e confirma.

4. O Sistema valida todos esses dados do cliente.

5. O Sistema retorna informando confirmação de cadastro.

Fluxo Alternativo: (Cliente com login realizado)

Visualizar Cadastro

1. O Cliente clica em „Visualizar Cadastro‟ [UC01].

2. O Sistema Carrega todos os dados pessoais do cliente

3. O Sistema disponibiliza a visualização dos dados pessoais do

(41)

cliente.

Editar Cadastro

1. O Cliente seleciona e o Sistema executa „Visualizar Cadastro‟ [UC01]. 2. O Cliente clica em „Editar Cadastro‟

[UC01].

3. O Sistema disponibiliza a edição dos campos de cadastro do cliente.

4. O Cliente faz as possíveis alterações de seus dados e confirma.

5. O Sistema retorna informando confirmação de edição.

Excluir Cadastro

1. O Cliente seleciona e o Sistema executa „Visualizar Cadastro‟ [UC01]. 2. O Cliente clica em „Excluir Cadastro‟

[UC01].

3. O Sistema retorna perguntando se o cliente tem certeza.

4. O Cliente confirma.

5. O Sistema retorna informando confirmação de exclusão.

Exceções/ Erros: Se algum dado de cadastro, excetuando CPF, informado pelo cliente estiver errado exibe mensagem [M2].

Se faltar algum campo durante a realização de cadastro do cliente, o Sistema exibe mensagem [M3]

Se o CPF o informado pelo cliente durante o cadastro estiver errado, o Sistema exibe mensagem [M4].

Se o CPF o informado pelo cliente durante o cadastro já estiver cadastro, o

(42)

Sistema exibe mensagem [M5].

Se algum dado de cadastro informado pelo cliente durante a edição de dados estiver errado, o Sistema exibe mensagem [M2].

Mensagens: 1) Operação realizada com sucesso. 2) Dados inválidos.

3) Campo obrigatório. 4) CPF inválido. 5) CPF já cadastrado. 6) Deseja excluir o registro?

Regras de negócio: [RNG01] O Sistema não vai aceitar que

um CPF faça mais de um cadastro.

(43)

4.2. CASO DE USO AUTENTICAR CLIENTE

4.2.1. Diagrama do caso de uso Autenticar Cliente

(44)

4.2.2. Descrição do caso de uso Autenticar Cliente

ID: UC02

Objetivo: Permitir ao cliente se identificar e acessar a loja virtual.

Requisitos: [REQ02]O Sistema manterá o usuário

autenticado no sistema até que haja LogOff.

Atores: Cliente

Pré-condições: Cadastro de cliente no Sistema.

Pós-condições: Não se aplica.

Fluxo Principal: Fazer LogIn

1. O Cliente clica Login.

2. O Sistema disponibiliza a tela de Login.

3. O Cliente fornece CPF e senha. 4. O Sistema valida esses dados do cliente.

5. O Sistema retorna informando confirmação de LogIn.

6. Sistema disponibiliza tela de ofertas da loja virtual.

7. Sistema disponibiliza no canto superior direito da tela opção de Visualizar Cadastro [UC01].

Fluxo Alternativo: Fazer LogOff

(45)

2. O Sistema retorna confirmando o LogOff.

3. Sistema disponibiliza tela de ofertas do sistema.

Exceções/ Erros: Se oCPF é inválido o Sistema exibe mensagem [M2].

Se a senha é inválida o Sistema exibe mensagem [M3].

Se o cliente não tiver cadastro, o Sistema exibe mensagem [M4] e [M5].

Mensagens: 1) Login realizado com sucesso. 2) CPF inválido.

3) Senha inválida.

4) Não há cadastro para este cliente. 5) Por favor, realize o cadastro.

Regras de negócio: [RNG02] O Sistema só permite três

tentativas consecutivas de login, após isso o usuário só poderá logar depois de 15 minutos.

[RNG03] Após 30 minutos de inatividade o Sistema forçará LogOff do usuário.

(46)

4.3. CASO DE USO REALIZAR COMPRA

4.3.1. Diagrama do caso de uso Realizar Compra

(47)

4.3.2. Descrição do caso de uso Realizar Compra

ID: UC03

Objetivo: Permitir ao cliente realizar um pedido de um produto desejado.

Requisitos: Não há.

Atores: Cliente

Pré-condições: [UC02] - Realizar LogIn.

Pós-condições: Não se aplica.

Fluxo Principal: Selecionar Produto

1. O Cliente clica em um produto desejado.

2. O Sistema disponibiliza a tela de detalhes do produto selecionado.

3. O Sistema disponibiliza „Calcular Frete‟ [UC04].

4. O Sistema disponibiliza o endereço de entrega do produto

5. O Sistema disponibiliza a opção Confirmar Endereço de Entrega [UC03].

Confirmar Endereço de Entrega

6. O Cliente confirma a opção Confirmar Endereço de Entrega.

7. O Sistema disponibiliza a opção Confirmar Compra [UC03].

Confirmar Compra

(48)

9. O Sistema verifica as informações de endereço.

10. O Sistema retorna informando que o pedido foi registrado, exibe mensagem [M3] e [M4].

11. O Sistema disponibiliza a sessão de pagamentos [UC05].

Fluxo Alternativo: Editar Endereço de entrega

1. O Cliente clica emEditar Endereço de Entrega.

2. O Sistema disponibiliza requisição de endereço de entrega para o produto. 3. O Cliente insere os dados do endereço.

4. O Sistema valida e retorna confirmação de alteração.

5. O Sistema retorna para a tela de confirmação de compra.

Exceções/ Erros: O cliente cancela o pedido antes de confirmar a compra e Sistema exibe mensagem [M1].

Se as informações de endereço estiverem errada(s) O Sistema exibe mensagem [M2].

Mensagens: 1) Pedido cancelado com sucesso. 2) Informações de endereço inválidas. 3) Pedido realizado com sucesso.

4) Por favor, agora, confirme o pagamento.

Regras de negócio: [RNG04] O Sistema não permitirá

compra de dois produtos aleatórios.

(49)

4.4. CASO DE USO CALCULAR FRETE

4.4.1 Diagrama do caso de uso Calcular Frete

(50)

4.4.2 Descrição do caso de uso Calcular Frete

ID: UC04

Objetivo: Permitir ao cliente consultar o valor referente ao transporte de sua compra. Requisitos: [REQ03] O Sistema permitirá calculo de

frete de qualquer região no Brasil.

Atores: Cliente.

Pré-condições: Cadastro de cliente no Sistema.

„Selecionar Produto‟ [UC03].

Pós-condições: Não se aplica.

Fluxo Principal: Calcular Frete

1. O Cliente clica em Calcular Frete. 2. O Sistema solicita o CEP de entrega do Produto.

3. O Cliente fornece o CEP.

4. O Sistema valida o CEP, calcula o valor do frete, soma no valor final do produto e retorna o valor do frete para o produto.

5. O Sistema disponibiliza a página de confirmação de pedido.

Fluxo Alternativo: 1. O Cliente cancela a opção de Calcular o Frete.

2. Sistema volta para a página inicial de vendas.

Exceções/ Erros: Se o CEP disponibilizado pelo cliente é inválido o Sistema exibe mensagem

(51)

[M1].

Mensagens: 1) O CEP inserido não é válido.

Regras de negócio: Não há.

Descrição 4.4.2 - Calcular Frete

4.5. CASO DE USO GERENCIAR CARRINHO

4.5.1. Diagrama do caso de uso Gerenciar Carrinho

(52)

4.5.2. Descrição do caso de uso Gerenciar Carrinho

ID: UC05

Objetivo: Permitir ao cliente gerar, manejar e excluir carrinhos de compra.

Requisitos: Não há.

Atores: Cliente

Pré-condições: [UC01] - Incluir Cadastro. [UC02] - Realizar LogIn.

Pós-condições: Não se aplica.

Fluxo Principal: Adicionar Produto ao Carrinho

1. O Cliente executa„Selecionar Produto‟[UC03].

2. O Sistema disponibiliza a opção „Adicionar Produto ao Carrinho‟[UC05]. 3. O Cliente clica em „Adicionar Produto ao Carrinho‟ [UC05].

4. O Sistema adiciona o produto selecionado ao carrinho do cliente.

Fluxo Alternativo: Criar Novo Carrinho

1. O Cliente executa„Selecionar Produto‟[UC03].

2. O Sistema disponibiliza a opção „Criar Novo Carrinho‟[UC05].

3. O Cliente clica em „Criar Novo Carrinho‟[UC05].

(53)

ao perfil do Cliente.

Editar Carrinho

1. O Cliente executa„Selecionar Produto‟[UC03].

2. O Sistema disponibiliza a opção „Editar Carrinho‟[UC05].

3. O Cliente clica em „Editar Carrinho‟[UC05].

4. O Sistema disponibiliza todos os carrinhos criados pelo cliente.

5. O Cliente seleciona um carrinho. 6. O Sistema disponibiliza a opção „Excluir Item do Carrinho‟ [UC05].

Excluir Item do Carrinho

1. O Sistema disponibiliza todos os produtos que estão no carrinho selecionado em „Editar Carrinho‟

[UC05].

2. O Cliente seleciona o item (produto) que deseja excluir.

3. O Sistema retorna mensagem [M2]. 4. O Cliente confirma.

5. O Sistema deleta o item do carrinho selecionado pelo cliente.

Exceções/ Erros: Se o Cliente não possuir nenhum Carrinho, o Sistema retorna a mensagem [M1] e direciona o Cliente para „Criar Novo Carrinho‟.

Cliente cancela a tela de edição de carrinhos que possui.

Cliente cancela a confirmação de exclusão em „Excluir Item(s) do Carrinho‟.

(54)

Mensagens: 1) Você não possui carrinhos, deseja criar?

2) Confirmação foi cancelada com sucesso.

3) Carrinho gerado com sucesso.

4) Item adicionado ao carrinho com sucesso.

Regras de negócio: [RNG05] O produto selecionado sempre

vai para o último carrinho criado.

[RNG06] O Carrinho é criado sempre

quando não há carrinho e ocorre uma adição de produto.

(55)

4.6. CASO DE USO CONFIRMAR PAGAMENTO

4.6.1. Diagrama do caso de uso Confirmar Pagamento

(56)

4.6.2. Descrição do caso de uso Confirmar Pagamento

ID: UC06

Objetivo: Permitir ao cliente finalizar o pagamento de uma compra desejada.

Requisitos: [REQ04] O Sistema deverá guardar

confirmação de pagamento.

Atores: Cliente

Pré-condições: [UC02] - Realizar LogIn. [UC03]-Confirmar Compra. Pós-condições: Não se aplica.

Fluxo Principal: Selecionar Forma Pagamento

1. O Sistema disponibiliza as opções de pagamento.

3. O Cliente clica em uma das opções. 4. O Sistema envia mensagem [M1] pedindo confirmação do Cliente.

5. O Cliente confirma a forma de pagamento.

6. O Sistema direciona para „Inserir Pagamento‟ [UC06].

Inserir Pagamento

1. O Sistema disponibiliza formulário de pagamento para o Cliente preencher informações do pagamento.

2. O Cliente preenche o formulário e clica em confirmar.

3. Sistema retorna mensagem [M2] pedindo confirmação Cliente.

(57)

5. Sistema computa as informações do pagamento e realiza a sua validação. 6. Sistema retorna mensagem [M3] informando sucesso do pagamento.

Fluxo Alternativo: Gerar Boleto

1. O Sistema disponibiliza as opções de pagamento.

3. O Cliente clica em boleto bancário. 4. O Sistema envia mensagem [M1] pedindo confirmação do Cliente.

5. O Cliente confirma a forma de pagamento.

6. O Sistema retorna o Boleto bancário do Cliente.

Exceções/ Erros: Se o Cliente cancela a forma de pagamento, o Sistema redireciona para

‘Confirmar Compra‟ [UC03].

Se o Cliente cancela o pagamento, O Sistema redirecionado para „Selecionar Forma Pagamento‟ [UC06].

Se o Sistema não consegue validar as informações de pagamento, retorna mensagem [M3] e reenvia o formulário de pagamento.

Mensagens: 1) Confirma a forma de pagamento? 2) Confirma o pagamento?

3) Pagamento realizado com sucesso.

Regras de negócio: [RNG07] O Administrador deverá notificar ao cliente caso o pagamento não seja recebido.

(58)

4.7. CASO DE USO REALIZAR DESCRIÇÃO DETALHADA

4.7.1. Diagrama do caso de uso Realizar Descrição detalhada

(59)

4.7.2. Descrição do caso de uso Realizar Descrição detalhada

ID: UC07

Objetivo: Permitir ao cliente solicitar

especificamente uma descrição mais detalhada sobre um produto e acompanhá-la.

Requisitos: Não há.

Atores: Cliente

Pré-condições: [UC02] - Realizar LogIn. [UC03]–Selecionar Produto. Pós-condições: Não se aplica.

Fluxo Principal: Enviar Solicitação de Descrição

1. O Cliente executa„Selecionar Produto‟[UC03].

2. O Sistema disponibiliza a opção „Enviar solicitação de Descrição‟ [UC07] 3. O Cliente clica em „Enviar solicitação de Descrição ‟ [UC07].

4. O Sistema disponibiliza caixa de texto para digitar mensagem.

5. O Cliente digita o pedido. 6. O Cliente clica em enviar.

7. O Sistema retorna mensagem [M1] para que o Cliente confirme a solicitação escrita.

(60)

9. O Sistema registra o pedido do Cliente.

Verificar Descrição

1. O Cliente executa „Fazer LogIn‟

[UC02].

2. O Sistema disponibiliza a opção „Verificar Descrição‟ [UC07].

3. O Cliente clica em „Verificar Descrição‟ [UC07].

4. O Sistema retorna a lista de descrições detalhadas respondidas. 5. O Cliente opta por uma.

6. Sistema disponibiliza a descrição detalhada requerida pelo Cliente.

Fluxo Alternativo: Caso o Cliente cancele o envio

1. O Cliente clica em „Enviar solicitação de Descrição ‟ [UC07].

2. O Sistema disponibiliza caixa de texto para digitar mensagem.

3. O Cliente clica em cancelar envio. Caso o Cliente cancele a confirmação 1. O Cliente clica em „Enviar solicitação de Descrição ‟ [UC07].

2. O Sistema disponibiliza caixa de texto para digitar mensagem.

3. O Sistema disponibiliza caixa de texto para digitar mensagem.

5. O Cliente digita o pedido. 6. O Cliente clica em enviar.

7. O Sistema retorna mensagem [M1] para que o Cliente confirme a

(61)

solicitação escrita.

8. Cliente cancela a confirmação.

Caso o Cliente não possua nenhuma solicitação de descrição

1. O Cliente executa „Fazer LogIn‟

[UC02].

2. O Sistema disponibiliza a opção „Verificar Descrição‟ [UC07].

3. O Cliente clica em „Verificar Descrição‟ [UC07].

4. Sistema retorna com a mensagem [M4].

5. Sistema redireciona para „Enviar Solicitação de Descrição‟ [UC07].

Exceções/ Erros: Se não houver resposta das Mensagens do cliente, o Sistema retorna mensagem [M3]. Se o cliente não possuir nenhum envio de solicitação de descrição, sistema retorna mensagem [M4].

Mensagens: 1) Confirma o envio da solicitação? 2) Operação realizada com sucesso. 3) O Cliente não possui retorno de descrição.

4) Cliente não possui nenhuma solicitação de descrição.

Regras de negócio: [RNG08] O Texto a ser enviado pelo

Cliente deve ter no mínimo 5 caracteres.

[RNG09] O Sistema disponibiliza todas

as descrições detalhadas que já foram respondidas pelo Administrador.

[RNG10] O Sistema exclui todas as

descrições detalhadas com mais de 6 meses e que já tenham sido

(62)

visualizadas pelo Cliente.

Descrição 4.7.2 - Realizar Descrição detalhada

4.8. CASO DE USO CADASTRAR ADMINISTRADOR

4.8.1.Diagrama do caso de uso Cadastrar Administrador

(63)

4.8.2.Descrição do caso de uso Cadastrar Administrador

ID: UC08

Objetivo: Permitir ao Administrador gerenciar e criar cadastro no sistema.

Requisitos: Não há.

Atores: Administrador

Pré-condições: Nenhuma a nível de sistema.

Pós-condições: Não se aplica.

Fluxo Principal: Incluir Cadastro

1. O Administrador clica em Cadastrar. 2. O Sistema solicita dados pessoais do Administrador.

3. O Sistema solicita chave de acesso de Administrador.

3. O Administrador fornece todos os dados e uma senha de sua escolha e confirma.

5. O Sistema valida todos esses dados do Administrador.

5. O Sistema retorna informando confirmação de cadastro.

Fluxo Alternativo: (Administradorcom login realizado)

Visualizar Cadastro

1. O Administrador clica em Visualizar Cadastro.

2. O Sistema Carrega todos os dados pessoais do Administrador.

(64)

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. O Administrador clica em „Editar Cadastro‟[UC10].

3. O Sistema disponibiliza a edição dos campos de cadastro do Administrador. 4. O Administrador faz as possíveis alterações de seus dados e confirma. 5. O Sistema retorna informando confirmação de edição.

Exceções/ Erros: Se algum dado de cadastro, excetuando CPF, informado pelo Administrador estiver errado exibe mensagem [M2]. Se faltar algum campo durante a realização de cadastro do cliente, o Sistema exibe mensagem [M3]

Se o CPF o informado pelo

Administrador durante o cadastro estiver errado, o Sistema exibe mensagem [M4].

Se o CPF o informado pelo

Administrador durante o cadastro já estiver cadastro, o Sistema exibe mensagem [M5].

Se algum dado de cadastro informado pelo Administrador durante a edição de dados estiver errado, o Sistema exibe mensagem [M2].

Mensagens: 1) Operação realizada com sucesso. 2) Dados inválidos.

(65)

3) Campo obrigatório. 4) CPF inválido. 5) CPF já cadastrado. 6) Deseja excluir o registro?

Regras de negócio: [RNG11] A chave de acesso de

Administrador será fornecida

previamente ao Administrador.

[RNG12] O Sistema não vai aceitar que

um CPF faça mais de um cadastro.

(66)

4.9. CASO DE USO AUTENTICAR ADMINISTRADOR

4.9.1. Diagrama do caso de uso Autenticar Administrador

(67)

4.9.2. Descrição do caso de uso Autenticar Administrador

ID: UC09

Objetivo: Permitir ao Administrador se identificar e acessar a loja virtual.

Requisitos: [REQ05] O Sistema manterá o usuário

autenticado no sistema até que haja LogOff.

Atores: Administrador

Pré-condições: [UC08] - Incluir Cadastro Pós-condições: Não se aplica.

Fluxo Principal: Fazer LogIn

1. O Administrador clica Login.

2. O Sistema disponibiliza a tela de Login.

3. O Administrador fornece CPF e senha.

4. O Sistema valida esses dados do cliente.

5. O Sistema retorna informando confirmação de LogIn.

Fluxo Alternativo: Fazer Logoff

1. O Administrador clica emfazer LogOff.

2. O Sistema retorna confirmando o LogOff.

(68)

Exceções/ Erros: Se oCPF é inválido o Sistema exibe mensagem [M2].

Se a senha é inválida o Sistema exibe mensagem [M3].

Mensagens: 1) Login realizado com sucesso. 2) CPF inválido.

3) Senha inválida.

Regras de negócio: [RNG13] Após 10 minutos de inatividade o Sistema forçará LogOff do usuário. (a segurança para o Administrador deve ser maior).

(69)

4.10.CASO DE USO ADMINISTRAR SOLICITAÇÃO DE DESCRIÇÃO

4.10.1. Diagrama do caso de uso Administrar Solicitação de Descrição

Diagrama 4.10.1 – Administrar Solicitação de Descrição

(70)

4.10.2. Descrição do caso de uso Administrar Solicitação de Descrição

ID: UC10

Objetivo: Permitir ao Administrador receber e

retornar solicitações de descrição realizadas pelos Clientes.

Requisitos: Não há.

Atores: Administrador

Pré-condições: [UC08] - Realizar LogIn. Pós-condições: Não se aplica.

Fluxo Principal: Visualizar Solicitações de Descrição

1. O Sistema disponibiliza „Visualizar Solicitações de Descrição‟ [UC09]. 2. O Administrador clica em„Visualizar Solicitações de Descrição‟ [UC09]. 3. O Sistema lista todas as solicitações enviadas pelos Clientes do Sistema. 4. O Administrador opta por uma solicitação.

5. O Sistema retorna o texto da solicitação e a opção „Responder Solicitação‟ [UC09].

Responder Solicitação

1. O Administrador executa „Visualizar Solicitações de Descrição’ [UC08]. 2. O Sistema disponibiliza a opção „Responder Solicitação‟ [UC09].

Figure

Updating...

References