Você está na página 1de 78

UNIVERSIDADE REGIONAL DE BLUMENAU

CENTRO DE CINCIAS EXATAS E NATURAIS


CURSO DE SISTEMAS DE INFORMAO BACHARELADO

PROTTIPO DE APLICATIVO DE FORA DE VENDAS


PARA DISPOSITIVOS MVEIS BASEADOS NA
PLATAFORMA ANDROID

FBIO DE OLIVEIRA

BLUMENAU
2014
2014/1-04

FBIO DE OLIVEIRA

PROTTIPO DE APLICATIVO DE FORA DE VENDAS


PARA DISPOSITIVOS MVEIS BASEADOS NA
PLATAFORMA ANDROID

Trabalho de Concluso de Curso submetido


Universidade Regional de Blumenau para a
obteno dos crditos na disciplina Trabalho
de Concluso de Curso II do curso de Sistemas
de Informao Bacharelado.
Prof. Francisco Adell Pricas, Mestre - Orientador

BLUMENAU
2014
2014/1-04

PROTTIPO DE FORA DE VENDAS PARA DISPOSITIVOS


MVEIS BASEADOS NA PLATAFORMA ANDROID

Por

FBIO DE OLIVEIRA

Trabalho aprovado para obteno dos crditos


na disciplina de Trabalho de Concluso de
Curso II, pela banca examinadora formada
por:

Presidente:

______________________________________________________
Prof. Francisco Adell Pricas, Mestre Orientador, FURB

Membro:

______________________________________________________
Prof. Everaldo Artur Grahl, Mestre FURB

Membro:

______________________________________________________
Prof. Marcel Hugo, Mestre FURB

Blumenau, 07 de julho de 2014.

Dedico este trabalho aos familiares, amigos,


professores e a todos que torceram,
acreditaram e contriburam para a realizao
deste.

AGRADECIMENTOS

Aos meus pais, pelo incentivo, compreenso e apoio mesmo depois de tantos anos.
Ao Leonardo Ribeiro, Felipe Oliveira e a Danieli de Paula pelo incentivo, sugestes e
dedicao.
Ao meu orientador, professor Francisco Adell Pricas pela motivao, ensinamentos,
conselhos, tranquilidade e por ter acreditado na concluso deste trabalho.
Ao professor Wilson Pedro Carli, Coordenador do curso de Sistemas de Informao
pela confiana, ensinamentos e por acreditar na minha capacidade mesmo depois de tantas
tentativas.

Impossvel uma palavra que s os fracos


conhecem.
Autor Desconhecido

RESUMO

No mundo dos negcios fundamental que as organizaes criem diferenciais para se


destacarem no mercado. Uma das maneiras de se destacar utilizar o conceito de fora de
vendas. A empresa Sold Out tem a necessidade de criar um diferencial e mudar o seu processo
atual de vendas. Hoje a empresa utiliza vendas por consignao, um processo considerado
vulnervel e sem muito controle sobre os produtos vendidos. Para melhorar o dia-a-dia da
empresa, pensou-se no desenvolvimento de um aplicativo para fora de vendas. Esse
aplicativo foi desenvolvido para o sistema operacional Android. Foi realizada integrao via
web services entre aplicativo e servidor, centralizando assim o banco de dados em apenas um
local. Os resultados se mostraram satisfatrios, pois os representantes tero facilidades em
seus dias no que se refere ao processo de vendas e a empresa ter mais controle sobre o que
vendido e sobre seu estoque.
Palavras-chave: Fora de Vendas. Android. Web Services.

ABSTRACT

In the business world it is critical that organizations create differences to detach in the market.
One of the ways to stand out is by using the concept of the sales force. The company Sold Out
has need to create a differential and change your current sales process. Today the company
uses sales per consignment, a process considered to be vulnerable and without much control
over the goods sold. To improve the day-to-day business, it was thought in the development
of an application for sales force. This application was developed for the Android operating
system. It was carried out via web services between application and server, thus centralizing
the database in one place. The results were satisfactory, because representatives have facilities
in their days with regard to the sales process and the company will have more control over
what is sold on its stock.
Key-words: Sales Force. Android. Web Services.

LISTA DE FIGURAS

Figura 1 - Newton lanado em 1992 ........................................................................................ 16


Figura 2 - Funcionamento de um Web Service ......................................................................... 19
Figura 3 - Documento entregue ao representante ..................................................................... 20
Figura 4 - Processo de consignao .......................................................................................... 21
Figura 5 - Cadastro de clientes para Palm Os ........................................................................... 22
Figura 6 - Tela de vendas do AppVenda$ ................................................................................ 23
Figura 7 Funcionamento da soluo ...................................................................................... 25
Figura 8 - Venda de produtos ................................................................................................... 25
Figura 9 - Recebimento de produto .......................................................................................... 26
Figura 10 - Atualizao do estoque na venda de produtos ....................................................... 27
Figura 11 - Diagrama de casos de uso ...................................................................................... 30
Figura 12 - Diagrama de classes ............................................................................................... 32
Figura 13 - Classes do servidor ................................................................................................ 33
Figura 14 - Classes de clientes e vendas .................................................................................. 35
Figura 15 - Classes do estoque e produtos ............................................................................... 37
Figura 16 - Cdigo utilizando JPA ........................................................................................... 40
Figura 17 - Validaes com Beans Validation ......................................................................... 41
Figura 18 - Verbos HTTP ......................................................................................................... 42
Figura 19 - Classe que mtodos HTTP ..................................................................................... 42
Figura 20 - Implementao do servio de vendas .................................................................... 43
Figura 21 - Pacote "Core" - classes genricas .......................................................................... 44
Figura 22 - Projeto Aplicativo .................................................................................................. 44
Figura 23 - Pacote produto ....................................................................................................... 45
Figura 24 - Classe de produto ................................................................................................... 46
Figura 25 - Classe ProdutoActivity .......................................................................................... 47
Figura 26 - Mtodo salvar ........................................................................................................ 48
Figura 27 - Mtodo "post" da classe Rest.java ......................................................................... 49
Figura 28 - Interface de controle de estados do produto .......................................................... 50
Figura 29 - Layout da tela de produtos ..................................................................................... 51
Figura 30 - XML da tela de produto ......................................................................................... 51
Figura 31 - Tela de login .......................................................................................................... 52

Figura 32 - Menu do aplicativo ................................................................................................ 53


Figura 33 - Lista de produtos.................................................................................................... 53
Figura 34 - Tela de produto ...................................................................................................... 54
Figura 35 - Tela para selecionar imagem ................................................................................. 55
Figura 36 - Seleo de produto no estoque............................................................................... 55
Figura 37 - Seleo da quantidade de produto ......................................................................... 56
Figura 38 - Tela de estoque ...................................................................................................... 56
Figura 39 - Cadastro de cliente ................................................................................................. 57
Figura 40 - Tela de vendas ....................................................................................................... 58
Figura 41 - Seleo de item de venda ....................................................................................... 59
Figura 42 - Seleo da quantidade de item vendido ................................................................. 59
Figura 43 - Tela de realizao de venda ................................................................................... 60

LISTA DE QUADROS

Quadro 1 - Requisitos funcionais ............................................................................................ 28


Quadro 2 Requisitos no funcionais ..................................................................................... 29
Quadro 3 - Comparao com aplicativo de Machado (2007) .................................................. 61
Quadro 4 - Comparao com aplicativo AppVenda$ .............................................................. 62
Quadro 5 Descrio dos casos de uso................................................................................... 67
Quadro 6 - Tabela de usurios ................................................................................................. 73
Quadro 7 - Tabela de clientes .................................................................................................. 74
Quadro 8 - Tabela de produtos ................................................................................................ 74
Quadro 9 - Tabela de estoques ................................................................................................ 75
Quadro 10 - Tabela de vendas ................................................................................................. 75
Quadro 11 - Tabela de itens de venda ..................................................................................... 75

LISTA DE SIGLAS

ADT - Android Development Tools


APK - Android Package File
EA - Enterprise Architect
FURB - Universidade Regional de Blumenau
HTTP - Hyper Text Transfer Protocol
JPA - Java Persistence API
JPQL - Java Persistence Query Language
MMA - Mixed Martial Arts
OP - Ordem de Produo
POJO - Plain Old Java Object
REST - Representational State Transfer
SDK - Android Software Development Kit
SOAP - Simple Object Access Protocol
TCC - Trabalho de Concluso de Curso
XML - Extensible Markup Language
W3C - World Wide Web Consortium

SUMRIO

1 INTRODUO .................................................................................................................. 12
1.1 OBJETIVOS DO TRABALHO ......................................................................................... 13
1.2 ESTRUTURA DO TRABALHO ....................................................................................... 13
2 FUNDAMENTAO TERICA .................................................................................... 14
2.1 FORA DE VENDAS ...................................................................................................... 14
2.2 DISPOSITIVOS MVEIS ................................................................................................ 15
2.3 ANDROID ......................................................................................................................... 16
2.4 ECLIPSE E ADT ............................................................................................................... 18
2.5 WEB SERVICES .............................................................................................................. 18
2.6 SISTEMA ATUAL ........................................................................................................... 19
2.7 TRABALHOS CORRELATOS ........................................................................................ 21
3 DESENVOLVIMENTO .................................................................................................... 24
3.1 LEVANTAMENTO DE INFORMAES ....................................................................... 24
3.2 ESPECIFICAO ............................................................................................................. 27
3.2.1 REQUISITOS DO SISTEMA ......................................................................................... 28
3.2.2 DIAGRAMA DE CASO DE USO .................................................................................. 29
3.2.3 DIAGRAMA DE CLASSES ........................................................................................... 31
3.3 IMPLEMENTAO ......................................................................................................... 39
3.3.1 Tcnicas e ferramentas utilizadas .................................................................................... 39
3.3.1.1 Servidor ........................................................................................................................ 39
3.3.1.2 Aplicativo ..................................................................................................................... 44
3.3.2.1 Operacionalidade do aplicativo .................................................................................... 52
3.4 RESULTADOS E DISCUSSO ....................................................................................... 60
4 CONCLUSES .................................................................................................................. 63
4.1 EXTENSES .................................................................................................................... 64
REFERNCIAS ..................................................................................................................... 65
APNDICE A Descrio dos casos de uso ........................................................................ 67
APNDICE B Descrio do Dicionrio de Dados ............................................................ 73

12
1 INTRODUO

Em meio s diversas transformaes que impactam as empresas, a tecnologia est


criando alguns novos desafios. O livre fluxo de informaes na internet bem como o
estabelecimento de novas formas de se fazer negcio faz com que uma das mais tradicionais
atividades de mercado como a administrao de vendas assuma importncia cada vez maior
(GOLDBERG, 2005). A informao fundamental para o sucesso na rea de vendas, pois se
no est por dentro de tudo que acontece no mercado, corre-se o risco de perder vendas para a
concorrncia. A utilizao de celulares para se manter informado fundamental no mercado
de vendas.
O mercado de celulares est crescendo cada vez mais. Estudos mostram que hoje em
dia mais de 3 bilhes de pessoas possuem um aparelho celular, e isso corresponde a mais ou
menos metade da populao mundial. O mercado corporativo tambm est crescendo muito e
diversas empresas esto buscando incorporar aplicaes mveis no seu dia a dia para agilizar
seus negcios e integrar as aplicaes mveis com seus sistemas de back-end. O Android a
resposta da empresa Google para ocupar este espao. Consiste em uma nova plataforma de
desenvolvimento para aplicativos mveis, baseada em um sistema operacional Linux, com
diversas aplicaes j instaladas e, ainda, com um ambiente prprio de desenvolvimento
(LECHETA, 2009).
Hoje fundamental que os profissionais de vrias reas acompanhem a evoluo da
tecnologia, como tambm as transformaes do mercado. Para os representantes de vendas
isto no diferente, a utilizao de solues de fora de vendas contemplando dispositivos
mveis j no mais um diferencial, praticamente fundamental para manter o mesmo nvel
de competitividade entre vendedores.
Para um representante de venda da marca Sold Out, que fabrica e vende roupas
voltadas para praticantes de artes marciais, podem-se perceber algumas dificuldades que o
vendedor enfrenta no controle e venda dos produtos. Para auxiliar no controle das vendas e
estoque, como tambm na demonstrao dos produtos aos clientes, uma alternativa vivel o
desenvolvimento de um aplicativo mvel. Com isso o vendedor teria facilidade na
demonstrao dos produtos atravs de um showroom digital, e um controle fcil e rpido das
vendas e dos produtos em estoque.

13
1.1 OBJETIVOS DO TRABALHO

O objetivo geral do trabalho facilitar as operaes de vendas, controle de estoque e


demonstrao de produtos da marca Sold Out.
Os objetivos especficos do trabalho proposto so:
a) desenvolver um aplicativo na plataforma Android que possibilite a realizao de
cadastros, vendas e controle de estoque de produtos;
b) disponibilizar um web service para integrao de informaes entre o dispositivo
mvel e o servidor.

1.2 ESTRUTURA DO TRABALHO

No primeiro captulo contm a introduo ao tema principal deste trabalho com a


apresentao da justificativa e dos objetivos.
No segundo captulo apresenta-se a fundamentao terica pesquisada sobre Fora de
Vendas, Dispositivos Mveis, Android, Eclipse e ADT, Web Services, Sistema atual e
trabalhos correlatos.
O terceiro captulo apresenta o desenvolvimento do sistema, iniciando com o
levantamento de informaes, tendo na sequncia a especificao, implementao e por fim
resultados e discusses.
No quarto captulo tem-se as concluses deste trabalho bem como apresentam-se
sugestes para trabalhos futuros.

14
2 FUNDAMENTAO TERICA

Este captulo aborda assuntos para compreenso do trabalho, tais como conceito de
Fora de Vendas, Dispositivos Mveis, Android, Eclipse e Android Development Tools
(ADT), Web Services, Sistema Atual alm de Trabalhos Correlatos.

2.1

FORA DE VENDAS

No mundo dos negcios, fundamental que as organizaes criem diferenciais para se


destacarem no mercado. Algumas empresas adotam o conceito de fora de vendas para criar
este diferencial. Segundo Paulilo (2014), fora de vendas um time de pessoas capacitadas e
apaixonadas por fazer o que precisa ser feito para que a venda acontea. Os integrantes da
fora de vendas realizam venda pessoal, que se refere comunicao pessoal de informaes
para persuadir um prospect (cliente em potencial) a comprar algo, que pode ser um bem, um
servio ou uma ideia que atenda suas necessidades individuais (FUTRELL, 2003).
Para criar um diferencial ainda maior, as empresas esto investindo em tecnologia,
criando assim uma dupla de sucesso, fora de vendas aliada a tecnologia. Segundo Peppers e
Rogers (2004, p. 77), a utilizao da tecnologia de sistemas de informao para automatizao
de algumas etapas no processo de vendas pode forar a disciplina e a adeso aos processos
definidos pela empresa.
Embora a automao da fora de vendas no seja um conceito novo, o que tem
despertado interesse neste assunto so as poderosas ferramentas de informao e comunicao
cada vez mais acessveis, como notebooks mais leves e com maior capacidade de
armazenamento, modems de alta velocidade, redes de dados por tecnologia celular com
conexo sem fio e softwares que permitem o fcil compartilhamento de informaes
(FUTRELL, 2003).
A tecnologia permite que os profissionais tenham acesso a quase todo tipo de
informaes ou dado concebvel sobre o produto que esto vendendo, possibilitando a
melhoria do desempenho individual de vendas e de servio. Um dos objetivos da utilizao de
tecnologia em vendas ajudar o profissional de vendas a aumentar a velocidade com que
consegue encontrar e qualificar seus provveis clientes potenciais (FUTRELL, 2003). Com

15
uma equipe de vendas utilizando um sistema moderno e eficiente, a imagem da empresa tende
a melhorar perante os clientes. Segundo Goldberg (2005) a imagem da empresa
imediatamente associada ao desempenho e ao comportamento das equipes de vendas.
Um sistema de automao de fora de vendas deve contemplar algumas
funcionalidades bsicas, como o controle de pedidos, a configurao de produtos, a gerncia
de contatos, o planejamento de visitas e a produtividade pessoal (PEPPERS; ROGERS,
2004).
Com a utilizao de um sistema de automao de vendas possvel ter alguns ganhos
no processo da empresa, como a facilidade no acesso de informaes, melhoria do
desempenho individual de vendas e de servio, maior controle das informaes de vendas,
expanso do alcance de venda, entre outras.

2.2

DISPOSITIVOS MVEIS

Com o passar dos anos, a evoluo da computao fez com que os computadores
diminussem de tamanho e se tornassem fceis de utilizar em qualquer lugar. Hoje, possvel
acessar qualquer dado a partir de dispositivos que vivem conosco por todos os lugares, os
dispositivos mveis. A computao mvel permite que usurios tenham acesso a servios
independentemente de sua localizao. Isso requer suporte mobilidade e existncia de
infraestrutura de comunicaes sem fio (JOHNSON, 2007).
Um dispositivo mvel deve ter algumas caractersticas bsicas como possuir um grau
de mobilidade, um tamanho reduzido, realizar processamento, trocar informaes com alguma
rede, independncia de rede fixa (POSSER, 2006).
As caractersticas de um dispositivo mvel so basicamente:
a) tamanho reduzido;
b) baixo consumo de energia;
c) memria e processamento limitados;
d) conectividade limitada;
e) monitoramento do nvel de energia para preveno de perda de dados.
Com o avano da tecnologia o conceito e principalmente as caractersticas dos
dispositivos mveis sofreram algumas mudanas. Os primeiros dispositivos mveis foram os
palmtops, muito utilizados no mundo corporativo, abriu as portas para o desenvolvimento de

16
sistemas em dispositivos de tamanho reduzido. Foram amplamente utilizados por vendedores,
representantes, tcnicos externos entre outros profissionais que atuavam fora da empresa.
O primeiro dispositivo mvel de grande sucesso foi o Newton, lanado pela Apple em
1992. Na Figura 1, pode-se visualizar o aparelho.

Figura 1 - Newton lanado em 1992

Fonte: Frana (2011).

O celular outro tipo de dispositivo mvel muito utilizado. O primeiro celular foi
criado em 1973 pela Motorola. Uma dcada depois, foi criado tambm pela Motorola o
primeiro celular a ser comercializado (RENATO, 2014). Desde ento, o crescimento
acelerado do mercado de celulares, a concorrncia se tornou cada vez maior entre as
fabricantes e o investimento em tecnologia aumentou exponencialmente na ultima dcada. O
conceito de celular que inicialmente era um dispositivo de telefonia mvel foi sendo alterado
com o passar dos anos, hoje em dia os usurios esto procurando smartphones, celulares com
diversos recursos como cmeras, msicas, bluetooth, boa interface visual, jogos, GPS, acesso
a internet e TV digital (LECHETA, 2009).

2.3

ANDROID

A partir do crescimento da fabricao dos dispositivos mveis, a tendncia de que


surjam sistemas operacionais potentes para acompanhar o crescimento do mercado. A partir
desta evoluo foi desenvolvido pela Open Handset Aliance, a plataforma Android.

17
Considerada uma plataforma mvel completa, aberta e livre para desenvolvimento
(ANDROID DEVELOPERS, 2004).
Segundo Android Developers (2004), Android um pacote de softwares para
dispositivos mveis que inclui um sistema operacional, um middleware e aplicativos de
caractersticas essenciais, como um emulador e um depurador, e toda a biblioteca de
desenvolvimento. Atravs do Android Software Development Kit (SDK) possvel criar
novas aplicaes para a plataforma. A linguagem utilizada para programao das aplicaes
o Java (ANDROID DEVELOPERS, 2004).
O Android a aposta da Google para atender a grande necessidade dos usurios de
dispositivos mveis. Consiste em uma plataforma de desenvolvimento para aplicativos
mveis, bastante poderosa, ousada e flexvel que foi baseada em um sistema operacional
Linux (LECHETA, 2009).
A plataforma Android trouxe uma nova experincia ao usurio de celulares
smartphones, com uma interface rica em detalhes e uma flexibilidade jamais vista at ento.
Sua arquitetura muito flexvel, voc pode integrar aplicaes nativas com aplicaes
desenvolvidas por voc mesmo, e at mesmo substituir uma aplicao nativa por outra de
desenvolvimento prprio. No existe diferena na aplicao nativa e a aplicao de um
desenvolvedor independente (LECHETA, 2009).
A flexibilidade na integrao ou substituio de aplicativos se deve ao fato da
plataforma Android ser completamente livre e de cdigo aberto (open-source), fazendo com
que cada vez mais desenvolvedores criem contedo para o desenvolvimento e melhoria da
plataforma (LECHETA, 2009). O Android fornece ao usurio uma plataforma de classe
mundial para a criao de aplicativos, bem como um mercado aberto para distribuir
instantaneamente (ANDROID DEVELOPERS, 2004).
Todos os benefcios que o Android possui, fez com que se tornasse popular
rapidamente. Hoje, existem centenas de milhes de dispositivos mveis em mais de 190
pases ao redor do mundo utilizando a plataforma.
Segundo Android Developers (2004), mais de um milho de novos dispositivos com
Android so ativados por dia em todo o mundo. So realizados por ms mais de 1,5 bilhes de
downloads atravs do Google Play, loja de virtual da Google, onde voc pode fazer baixar
aplicativos, filmes, jogos e at livros digitalizados.

18
2.4

ECLIPSE E ADT

O Eclipse o ambiente de desenvolvimento preferido pela Google. Existe um plugin


chamado Android Development Tools (ADT) que visa facilitar o desenvolvimento, os testes e
a compilao de projetos de software para dispositivos mveis (LECHETA, 2009).
A linguagem utilizada o Java. Usada para criar desde programas simples a pginas
web, Java pode ser encontrada hoje em dia nos seguintes lugares: a) servidores Web; b) banco
de dados relacionais; c) computadores mainframe; d) telefones; e) telescpios orbitais; f)
assistentes digitais pessoais; entre outros (CADENHEAD; LEMAY, 2005).
Utilizando o plugin ADT possvel executar o emulador do Android diretamente do
Eclipse. Para distribuio do aplicativo Android, necessrio compilar o projeto Java em um
arquivo de extenso Android Package File (APK), que um arquivo binrio compactado com
as classes compiladas e os recursos do aplicativo (LECHETA, 2009).
O ADT plugin amplia os recursos do Eclipse facilitando a criao de novos projetos
para Android. Com ele possvel criar interface de usurio de aplicativos, adicionar pacotes
com base no quadro API Android, depurar aplicativos usando as ferramentas do SDK do
Android, como tambm distribuir a aplicao em formato .apk. O ADT tambm fornece
editores XML personalizados que permitem editar arquivos XML especficos do Android em
uma interface de usurio baseada em formulrio (ANDROID DEVELOPERS, 2004).

2.5

WEB SERVICES

Webs services foram criados para construir aplicaes que so servios na internet.
Porm no faz parte do conceito de web service a criao de interfaces grficas para os
usurios. comum encontrar textos afirmando que web services disponibilizam servios
somente para desenvolvedores, ou que web services nada mais so do que chamada de
mtodos usando XML (PAMPLONA, 2010).
A plataforma bsica de web service Extensible Markup Language (XML) mais
Hyper Text Transfer Protocol (HTTP). O XML fornece uma linguagem que pode ser usada
entre diferentes plataformas e linguagens de programao e ainda interpretar mensagens e
funes complexas. O protocolo HTTP o protocolo de internet mais utilizado
(W3SCHOOLS, 2013).

19
Com a utilizao do web service possvel integrar duas ou mais aplicaes entre si,
mesmo que no sejam desenvolvidas na mesma linguagem. Os dados so convertidos para
uma linguagem universal que ambas as aplicaes entendem, possibilitando a troca de
informaes. Na Figura 2 tem-se um esquema do funcionamento do web service.

Figura 2 - Funcionamento de um Web Service

Fonte: Toolsweb (2011).

Para realizar a comunicao com o web service necessrio uma implementao do


protocolo Simple Object Access Protocol (SOAP) definido no World Wide Web Consortium
(W3C). Este protocolo o responsvel pela independncia que o web service precisa.
Atualmente encontram-se vrias implementaes disponveis em vrias linguagens
(PAMPLONA, 2010).

2.6

SISTEMA ATUAL

A empresa Sold Out, localizada em Blumenau estado de Santa Catarina. Foi fundada
h cerca de 10 anos pelo empresrio Atirson de Oliveira que atua no segmento de fight wear
(roupas de lutas e artes marciais). A empresa oferece produtos de vesturios, tais como
regatas, bermudas, casacos de moletom, jaquetas e mochilas, cujo diferencial so as estampas
voltadas para diversos tipos de lutas como, por exemplo, Muay Thai, Jud, Jiu Jitsu e at o
esporte do momento Mixed Martial Arts (MMA).

20
A distribuio dos produtos realizada em academias, loja de suplementos, em outros
estabelecimentos do ramo e ainda existem representantes que vendem os produtos de porta em
porta.
Os representantes recebem uma determinada quantidade de produtos para vendas em
consignao. No ato da retirada dos produtos acordada uma data de devoluo e os valores
de cada linha de produto. Neste momento gerado um documento, chamado de pedido, com a
informao da quantidade o do preo de cada linha produto. Este pedido possui duas vias,
uma via de responsabilidade da empresa e a outra do representante. Na Figura 3, pode ser
visto um exemplo de pedido entregue para os representantes.

Figura 3 - Documento entregue ao representante

Fonte: Sol Out (2014).

Aps a retirada dos produtos podem ocorrer duas situaes distintas. O representante
vende os produtos, ficando com sua parte do valor da venda e paga para a empresa o valor
previamente acordado. Ou caso o produto no seja vendido, o representante devolve a
mercadoria para a empresa na data de entrega estipulada. Na Figura 4, pode ser visto o
funcionamento do processo de consignao realizado pela empresa.

21
Figura 4 - Processo de consignao

A empresa no interfere no valor final da venda, apenas no valor que o representante


deve retornar para a empresa. O percentual de lucro que o representante tem com a venda dos
produtos definido por ele mesmo, sem nenhum critrio definido pela empresa.

2.7

TRABALHOS CORRELATOS

Pode-se citar como trabalhos correlatos o Trabalho de Concluso de Curso (TCC) do


aluno Tiago Machado na Universidade Regional de Blumenau (FURB) e o aplicativo para
Android chamado AppVenda$.
O trabalho de Tiago Machado tem como objetivo o desenvolvimento de uma aplicao
para controle de fora de vendas para dispositivos mveis, baseado em PALM OS e um
gerador (parte da comunicao entre o Ponto de Venda e o sistema corporativo da empresa)
que ir rodar no desktop. O intuito que a aplicao seja genrica, possibilitando a utilizao
para uma vasta gama de empresas. A aplicao foi desenvolvida em Visual Basic no ambiente
de desenvolvimento Ns Basic (MACHADO, 2007).
As funcionalidades que tornam o trabalho de Machado (2007) e este trabalho
correlatos se referem automao da fora de vendas. Ambos voltados para dispositivos

22
mveis e realizando integrao com um servidor, permitindo ganho na velocidade do processo
de troca de informaes e maior eficincia na operao de vendas.
Existem alguns aspectos que diferenciam os trabalhos, como o fato do trabalho de
Machado ser voltando para PALM OS e este trabalho ser aplicado para Android. Outra
diferena que a aplicao voltada para PALM OS tem o intuito de ser utilizada por diversas
empresas, j este trabalho tem como objetivo atender especificamente a empresa Sold Out. Na
Figura 5, pode ser visto uma tela de cadastro de clientes no emulador de PALM OS.

Figura 5 - Cadastro de clientes para Palm Os

Fonte: Machado (2007).

O aplicativo AppVenda$, desenvolvido pela empresa Comunicar TI um aplicativo


simples e intuitivo com o objetivo de controlar vendas diretas. O aplicativo simplifica,
organiza e controla as vendas diretas, facilitando a centralizao das informaes. Possui
diversas funcionalidades, como: a) cadastro de clientes; b) cadastro de produtos; c) controle
de vendas; d) controle de pagamentos; e) relatrio de vendas; entre outros (GOOGLE PLAY,
2014).
As funcionalidades em comum entre o aplicativo e este trabalho se referem aos
cadastros de clientes, produtos, controle de vendas, bem como a plataforma que ambos
funcionam, o Android. O AppVenda$ possui mais funcionalidades que este trabalho, como
gerao de relatrios, backup e restaurao de dados. um aplicativo gratuito e pode ser
utilizado por qualquer pessoa e/ou empresa, diferentemente deste trabalho, que possui como

23
foco atender a empresa Sold Out. (GOOGLE PLAY, 2014). Na Figura 6, pode ser vista a tela
de realizao de vendas.

Figura 6 - Tela de vendas do AppVenda$

Fonte: Google Play (2014).

24
3 DESENVOLVIMENTO

Neste captulo esto descritos os aspectos tcnicos utilizados no desenvolvimento do


sistema, bem como o levantamento de informaes: requisitos funcionais, no funcionais e
regras de negcio. Alm dos diagramas utilizados no desenvolvimento: diagrama de casos de
uso, diagrama de atividades e modelo de entidade e relacionamento. Esto descritas tambm
as tcnicas e ferramentas utilizadas, a operacionalidade da implementao e os resultados
obtidos.

3.1 LEVANTAMENTO DE INFORMAES

A partir de entrevistas informais com representantes e o proprietrio da empresa e


conforme pode ser visto na seo do sistema atual, notou-se que os maiores problemas no
funcionamento da empresa so relacionados com o processo de consignao:
a) risco com representantes: ao realizar o processo de consignao a empresa acaba
confiando nos representantes, correndo o risco de no receber o valor das
mercadorias do representante, bem como o representante perder as mercadorias;
b) avarias nos produtos: os produtos entregues aos representantes podem sofrer
avarias, j que esto sujeitos a provas pelas pessoas interessadas;
c) venda incerta: no se sabe os produtos disponibilizados aos representantes sero
vendidos, e desta forma, a empresa corre o risco de perder vendas;
d) falta de controle de entrada e sada: no existe nenhum tipo de controle dos
produtos disponibilizados aos representantes, alm do pedido feito em papel no dia
da retirada dos produtos, gerando incerteza sobre quantidade de produtos com cada
representante;
e) falta de controle de estoque: devido incerteza de quantos produtos sero
vendidos, no h como controlar o estoque de forma eficaz;
f) preos indefinidos: como o preo final dos produtos definido pelo representante,
podem ocorrer preos abusivos, sujando a reputao da empresa.
Para atender as necessidades descritas, pensou-se em uma soluo que modifica
diversos processos da empresa. Uma das alteraes para que no seja mais necessria a

25
realizao de consignao de produtos. A soluo desenvolvida para a empresa contempla um
aplicativo para dispositivo mvel, onde o representante e o proprietrio podero interagir para
realizar cadastros, demonstrao de produtos bem como realizar vendas. Essa aplicao ter
integrao com o servidor onde os dados sero armazenados. Na Figura 7, pode ser visto o
funcionamento da soluo.
Figura 7 Funcionamento da soluo

Para no haver mais consignao de produtos, os representantes utilizaro o aplicativo


para realizar a demonstrao dos produtos e em seguida, caso o cliente possua interesse em
comprar o produto, a venda realizada no mesmo aplicativo. O processo simples e prtico,
conforme pode ser visto no fluxo de procedimento de vendas na Figura 8.

Figura 8 - Venda de produtos

26
Sem o processo de consignao, a entrega do produto ao cliente no ser no momento
da venda. Com o novo processo a entrega passa a ser realizada via correio, j que a empresa
tem no cadastro do cliente o seu endereo. Como as vendas so atualizadas diretamente com o
servidor, o funcionrio responsvel pela separao e postagem dos produtos tem a informao
bem atualizada, podendo agilizar a entrega, garantindo a satisfao do cliente.
Por no haver mais consignao de produtos, a empresa poder realizar tambm o
controle de seu estoque, fazendo com que haja mais controle sobre a produo. Isto porque a
partir da realizao do controle de estoques, ser possvel saber se h demanda para
determinado produto e se deve ser confeccionado ou no.

O controle de estoques foi

desenvolvido neste trabalho para facilitar ainda mais o dia-a-dia.


Sempre que forem recebidos produtos, o sistema ir acrescentar no estoque os produtos
recebidos, fazendo com que as informaes fiquem sempre atualizadas. Na Figura 9 pode ser
visto o fluxo do processo de recebimento de produtos.

Figura 9 - Recebimento de produto

Ao realizar a venda de produtos tambm ocorrer o mesmo processo, s que neste


caso, haver diminuio dos produtos vendidos do estoque. O fluxo do processo de
atualizao do estoque no processo de vendas pode ser visto na Figura 10.

27
Figura 10 - Atualizao do estoque na venda de produtos

Optou-se por realizar o desenvolvimento de forma que o banco de dados no fique no


prprio dispositivo mvel, isto porque poder haver vrias pessoas interagindo ao mesmo
tempo com o sistema. Desta forma, haver o aplicativo e o servidor. Sero utilizadas vrias
ferramentas para proporcionar o desenvolvimento da soluo, sendo elas:
a) Eclipse para implementao do cdigo fonte;
b) PostgreSql para armazenamento dos dados;
c) Sparx Systems Enterprise Architect para modelagem de diagramas.

3.2 ESPECIFICAO

A seguir apresentada a especificao do sistema, contemplando os requisitos


funcionais, requisitos no funcionais, alm dos diagramas de casos de uso e diagrama de
classes. Para criar o diagrama de caso de uso e o diagrama de classes foi utilizada a
ferramenta Enterprise Architect (EA).

28
3.2.1 REQUISITOS DO SISTEMA

Nesta subseo so apresentadas as principais caractersticas do sistema. Com base na


seo 2.4 e em entrevistas com os principais stakeholders do projeto, foram elaborados os
requisitos para atender as principais necessidades encontradas atualmente.
No Quadro 1 so apresentados os requisitos funcionais do sistema relacionados com
seus respectivos casos de uso.

Quadro 1 - Requisitos funcionais


Requisitos Funcionais

Caso de Uso

RF01: O sistema dever permitir ao proprietrio cadastrar produtos.

UC01

RF02: O sistema dever permitir ao usurio manter clientes.

UC02

RF03: O sistema dever permitir ao proprietrio controlar estoque.

UC03

RF04: O sistema dever possibilitar ao usurio efetuar a venda de


produtos.

UC04

RF05: O sistema dever permitir ao representante consultar o estoque.

UC05

No Quadro 2 so apresentados os requisitos no funcionais utilizados no


desenvolvimento do sistema.

29
Quadro 2 Requisitos no funcionais

Requisitos No Funcionais
RNF01: O sistema dever utilizar ambiente de desenvolvimento Eclipse com plugin ADT.
RFN02: O sistema dever ser compatvel com a plataforma Android.
RNF03: O sistema dever utilizar banco de dados PostgreSql.
RFN04: O sistema dever permitir a integrao de dados entre aplicativo e servidor via web
service.
RFN05: O sistema dever utilizar como servidor de aplicao Glassfish 4.
RFN06: O sistema necessita de conexo com internet para seu funcionamento.

3.2.2 DIAGRAMA DE CASO DE USO

Na Figura 11 apresentado o diagrama dos casos de uso prottipo de aplicativo. Os


casos de usos de UC01 e UC02 so acionados somente pelo proprietrio via aplicativo. Os
demais casos de uso podem ser acessados por qualquer usurio, inclusive pelo proprietrio.
Os detalhamentos dos principais casos de uso esto disponveis no Apndice A.

30
Figura 11 - Diagrama de casos de uso

31
3.2.3 DIAGRAMA DE CLASSES

A seguir so demonstradas as classes utilizadas no desenvolvimento do sistema. Nas


Figuras 12 e 13 so apresentados os diagramas de classes do servidor. Nas Figuras 14 e 15 so
apresentados os diagramas de classes do aplicativo. O dicionrio de dados est descrito no
Apndice B.

32
Figura 12 - Diagrama de classes

33

Figura 13 - Classes do servidor

A seguir apresentada uma breve descrio das classes criadas para o servidor:
a) Cliente: classe Plain Old Java Object (POJO) que representa um cliente no sistema;
b) ClienteRepositorio: responsvel por realizar pesquisas que dizem respeito a
Clientes;
c) ClienteServico: classe que contm a regra de negcio para persistncia de clientes;
d) ClienteWS: classe que representa o web service de clientes;
e) CoreRepositorio: superclasse que contm as funcionalidades bsicas para todas as
outras classes de repositrio;
f) CoreServico: superclasse que contm as funcionalidades bsicas para todas as outras
classes de servios;
g) CoreUtils: classe utilitria;
h) CoreWS: superclasse de todas as classes que representam um web service;
i) Estoque: classe POJO que representa um estoque no sistema;

34
j) EstoqueRepositorio: classe que representa o repositrio de estoques;
k) EstoqueServico: classe que contm a regra de negcio para persistncia de estoques;
l) EstoqueWS: representa o web service de estoques;
m) Produto: classe POJO que representa um produto no sistema;
n) ProdutoRepositorio: classe que representa o repositrio de produtos;
o) ProdutoServico: classe que contm a regra de negcio para persistncia de produtos;
p) ProdutoWS: representa o web service de produtos;
q) TamanhoProduto: enum que representa os tamanhos dos produtos;
r) Usuario: classe POJO que representa um usurio no sistema;
s) UsuarioRepositorio: classe que representa o repositrio de estoques;
t) UsuarioServico: classe que contm a regra de negcio para persistncia de usurios;
u) UsuarioWS: representa o web service de usurio;
v) Utils: classe utilitria com mtodos para converses;
w) VendaRepositorio: classe que representa o repositrio de vendas, responsvel por
realizar pesquisas que dizem respeito a Venda;
x) VendaServico: classe que contm a regra de negcio para persistncia de vendas;
y) VendaWS: representa o web service de vendas;
z) VendaItem: Classe POJO que representa um item da venda no sistema.

A seguir, so apresentados os diagramas das classes utilizadas pelo aplicativo. Na


Figura 14 apresentado o diagrama das classes de vendas e clientes do aplicativo. Na Figura
15 apresentado o diagrama das classes de estoque e produtos.

35
Figura 14 - Classes de clientes e vendas

36
A seguir apresentada uma breve descrio das classes de cliente e vendas do
aplicativo:
a) Cliente: classe que representa o cliente;
b) ClienteFormularioController: controlador do formulrio de clientes;
c) ClienteFormularioActivity: classe com os mtodos do formulrio de clientes;
d) ClienteListaActivity: classe que apresenta a listagem de clientes cadastrados;
e) ClienteListaAdapter: classe que carrega os clientes que sero apresentados no
formulrio de clientes;
f) ClienteRepositorio: classe utilitria responsvel por gerenciar a carga dos dados de
clientes;
g) Venda: classe que representa uma venda no aplicativo;
h) VendaFormularioActivity: classe com os mtodos do formulrio de vendas;
i) VendaItem: classe que representa o item de venda;
j) VendaListaAdapter: classe que carrega os itens que sero apresentados no formulrio
de vendas;
k) Usurio: classe que representa o usurio.

37

Figura 15 - Classes do estoque e produtos

38

A seguir apresentada uma breve descrio das classes de cliente e vendas do


aplicativo:
a) Atualizavel: interface para indicao de classes que podem receber atualizao
externa.
b) Estoque: classe que representa o estoque;
c) EstoqueFormularioActivity: classe que controla a manipulao do formulrio de
estoques;
d) EstoqueFormularioEstado: interface para representao do estado do formulrio de
estoque;
e) EstoqueFormularioEstadoEdicao: classe que configura e controla os controles do
formulrio de estoque durante a edio;
f) EstoqueFormularioEstadoNovo: classe que configura e controla os controles do
formulrio de estoque durante a criao de um novo estoque;
g) EstoqueFormularioEstadoVisualizacao: classe que configura e controla os controles
do formulrio de estoque durante a visualizao de estoque;
h) EstoqueListaActivity: classe que apresenta a tela de listagem de estoque;
i) EstoqueListaAdapter: controla os itens que sero apresentados na listagem de
estoque;
j) EstoqueRepositorio: classe responsvel por gerenciar a carga dos dados do estoque;
k) PreferenciasFormActivity: classe que representa a tela de preferencias;
l) Produto: classe que representa o produto;
m) ProdutoFormularioActivity: classe com mtodos do formulrio de produto;
n) ProdutoFormularioEstado: interface que representa o estado do formulrio de
produtos;
o) ProdutoFormularioEstadoEdicao: classe que controla os componentes do formulrio
de cadastro de produto durante a edio de um produto;
p) ProdutoFormularioEstadoNovo: classe que controla os componentes do formulrio
de cadastro de produto durante a criao de um novo produto;
q) ProdutoFormularioEstadoVisualizacao:

classe

que

controla

estado

dos

componentes de formulrio de produtos durante a visualizao de um produto;


r) ProdutoListaActivity: classe que realiza a apresentao da listagem de produtos;
s) ProdutoListaAdapter: classe que realiza o controle dos itens que sero apresentados
na lista de produtos;

39
t) ProdutoRepositorio: classe utilitria responsvel por gerenciar a carga dos dados dos
produtos;
u) TamanhoProduto: enum com os tamanhos de produtos.

3.3 IMPLEMENTAO

A seguir so apresentadas as tcnicas e ferramentas utilizadas e a operacionalidade da


implementao.

3.3.1 Tcnicas e ferramentas utilizadas

A implementao do sistema foi dividida em dois projetos: servidor e aplicativo. Em


cada projeto foram utilizados padres e tcnicas diferentes, porm ambos utilizando a
linguagem Java e o Eclipse. A seguir, detalhado o desenvolvimento de cada projeto bem
como as tcnicas utilizadas.

3.3.1.1 Servidor

No desenvolvimento do servidor, foi utilizado um framework para persistncia dos


dados, chamado de Java Persistence API (JPA). O JPA um framework baseado em Plain
Old Java Objects (POJOS) para persistir dados em Java que possui as seguintes
funcionalidades:
a) capacidade mapeamento objeto-relacional, realizado atravs de anotaes no
cdigo ou atravs de um XML definido externamente;
b) realizao de consultas atravs do Java Persistence Query Language (JPQL), uma
linguagem de consulta que derivada do EJB QL e transformada depois para SQL;
c) integrao e teste (MEDEIROS, 2014).
No desenvolvimento, o JPA foi utilizado para realizao de consultas e identificao
do modelo objeto-relacional, ou seja, para realizar o mapeamento dos atributos conforme o
que est configurado nas entidades do bando de dados. A implementao foi realizada sem o

40
arquivo XML externo, portanto as declaraes ficam dentro das prprias classes. Na Figura
16 pode ser vista a implementao da classe de Produto utilizando JPA.
Figura 16 - Cdigo utilizando JPA

No desenvolvimento pensou-se em otimizar a implementao do cdigo no que se


refere s validaes. Para isso, foi utilizado o Beans Validation que uma especificao Java
que permite conforme Bernard (2014):
a) expressar restries sobre modelos de objetos atravs de anotaes;
b) escrever restries personalizadas de forma extensvel;
c) fornecer as APIs para validar objetos e grficos de objetos;
d) fornecer as APIs para validar os parmetros e valores de retorno de mtodos e
construtores;
e) relatar o conjunto de violaes (localizado) executado em Java SE, integrado no
Java EE (6 e 7).
Na Figura 17, pode ser visto a classe de Cliente utilizando Beans Validation para
validaes do que ser informado ao realizar um cadastro de cliente.

41
Figura 17 - Validaes com Beans Validation

Para realizar a integrao entre o servidor e o aplicativo, optou-se pela implementao


de web services. Os web services utilizam o estilo arquitetural conhecido como
Representational State Transfer (REST). Os servios que seguem este estilo arquitetural so
conhecidos como servios RESTful e se baseiam no funcionamento da web e do protocolo
HTTP. Este funcionamento utiliza a estrutura de recursos (GODINHO, 2009).
O funcionamento dos web services baseado no mesmo princpio da web de pgina e
devem ser baseados em um protocolo universal, que para web pode-se considerar o HTTP,
um protocolo aberto e amplamente conhecido. Os servios devem tambm expor recursos que
possam ser associados atravs de URIs, caracterstica que faz parte das razes do
funcionamento da web. As chamadas s URIs so realizadas atravs de verbos HTTP
(GODINHO, 2009).
Na Figura 18 pode ser visto os verbos HTTP e suas utilizaes. Ambos utilizados no
desenvolvimento dos web services.

42
Figura 18 - Verbos HTTP

No projeto de servidor, foi criada uma classe genrica que implementa os mtodos
HTTP em comum para todos os web services, chamada de CoreWS. Na Figura 19 pode ser
vista a classe CoreWS.java.

Figura 19 - Classe que mtodos HTTP

A classe CoreWS herdada por classes filhas que implementam os web services e tem

43
seus mtodos sobrescritos quando necessrio. Um exemplo disto a classe que implementa o
servio de vendas, que pode ser vista na Figura 20.

Figura 20 - Implementao do servio de vendas

No desenvolvimento do projeto foi realizada a criao de classes abstratas genricas


que implementam mtodos em comum e que podem ser sobrescritos quando necessrio. O
pacote Core possui todas as classes genricas que so utilizadas nas demais classes da
implementao do lado servidor. Na Figura 21 pode ser visto o pacote Core com as classes
que compem o pacote.

44
Figura 21 - Pacote "Core" - classes genricas

3.3.1.2 Aplicativo

O desenvolvimento do aplicativo foi realizado em um projeto separado do


desenvolvimento do servidor. Este projeto utiliza o plugin ADT, que conforme mencionado
na seo 2.4, facilita o desenvolvimento de aplicativos para Android. O projeto do aplicativo
est subdividido conforme pode ser visto na Figura 22.

Figura 22 - Projeto Aplicativo

45
O item 1 da Figura 21 representa os pacotes com classes. A diviso dos pacotes foi
definida conforme funcionalidades, por exemplo, o pacote fdv.mobile.produto trata das
funcionalidades do cadastro de produto, conforme pode ser visto na Figura 23.

Figura 23 - Pacote produto

Todos os pacotes possuem basicamente a mesma estrutura: possuem uma classe que
representa o objeto. Possui classe Activity, classes de listas, classes de repositrio e neste
pacote em especfico possuem tambm classes para controle de estado. A seguir ser
detalhado cada tipo de classe existente nos pacotes.
As classes que representam os objetos contm em si atributos e mtodos de cada
objeto, que sero utilizados posteriormente ao obter ou preencher valores na tela. Na Figura
24 pode ser vista a classe que representa o objeto Produto.

46
Figura 24 - Classe de produto

A classe chamada de Activity, segundo Amorim (2013), responsvel por definir a


tela, controlar sua mquina de estados, passagem de parmetro de uma tela para outra, entre
outros. Esta classe contm basicamente os mtodos acionados a partir da tela, bem como seus
parmetros, conforme pode ser visto na Figura 25.

47
Figura 25 - Classe ProdutoActivity

As classes de lista, chamadas de Lista Adapter, realizam o controle dos itens que sero
apresentados na tela.
As classes de repositrio so responsveis por gerenciar a carga dos dados. Representa
a camada de abstrao entre a aplicao e o servidor. So responsveis por chamar realizar a
requisio dos web services, via REST. Na Figura 26, pode ser vista o mtodo salvar() da
classe ProdutoRepositorio.java.

48
Figura 26 - Mtodo salvar

As classes de repositrio utilizam mtodos da classe Rest.java que responsvel por


realizar a comunicao entre aplicao e servidor utilizando o padro REST, ou seja, todos os
mtodos de comunicao com o servidor esto implementados nesta classe.
No mtodo salvar demostrado na Figura 26, foram utilizados os mtodos post e
put da classe de Rest. Na Figura 27, pode ser visto a implementao do mtodo post, que
conforme definido na seo 3.3.1.1, responsvel por criar um novo recurso.

49
Figura 27 - Mtodo "post" da classe Rest.java

No pacote de produto existe ainda a interface de estado da tela, ou seja, representa se


os campos devem ficar ou no habilitados, durante a criao ou edio do cadastro de
produtos. Na Figura 28, pode ser vista a interface ProdutoFormularioEstado.java que
implementada

pelas

classes

ProdutoFormularioEstadoEdicao.java

ProdutoFormularioEstadoNovo.java para controle da tela de produtos.

50
Figura 28 - Interface de controle de estados do produto

A seguir ser apresentada uma breve descrio sobre o item 2 do projeto, mostrado na
Figura 22. A pasta res possui todos os recursos do aplicativo, ou seja, o local onde so
armazenadas as imagens utilizadas nas telas, o layout e XML de cada tela, o menu, bem como
a definio dos valores: cores, dimenses, entre outros.
Na Figura 29, pode ser vista a definio do layout da tela de produto, com os recursos
utilizados na criao da tela.

51
Figura 29 - Layout da tela de produtos

Na Figura 30, pode ser visto o XML com as definies da tela de produto, onde so
definidos os componentes utilizados, bem como o tamanho de cada item.

Figura 30 - XML da tela de produto

52
3.3.2.1 Operacionalidade do aplicativo

Para realizar o acesso ao aplicativo necessrio j possuir usurio e senha previamente


cadastrados. Este cadastro realizado pelo administrador do sistema. Para realizar o acesso ao
sistema, necessrio fazer login no sistema. Na Figura 31, pode-se visualizar a tela de login.

Figura 31 - Tela de login

Aps realizar o login, aberto o menu onde o usurio seleciona a operao que deseja
realizar, conforme pode ser visto na Figura 32.

53
Figura 32 - Menu do aplicativo

Para cadastrar um novo produto, o usurio seleciona o item Produto no menu, ento
o aplicativo mostra para o usurio uma lista de produtos j cadastrados e a opo de cadastrar
um novo produto, conforme pode ser visto na Figura 33.

Figura 33 - Lista de produtos

54

Ao selecionar um produto na lista ou clicar no boto novo, o aplicativo abre a tela de


cadastro de produtos. Esta tela utilizada toda vez que chegam novos produtos na empresa ou
quando necessrio alterar algum produto j existente. Na Figura 34 pode ser vista a tela de
cadastro e edio de produtos.

Figura 34 - Tela de produto

Nesta tela, ao selecionar o cone de imagem, possvel inserir ou alterar uma imagem
do produto cadastrado. O usurio pode selecionar uma imagem existente na galeria ou tirar
uma nova foto, conforme pode ser visto na Figura 35.

55
Figura 35 - Tela para selecionar imagem

Aps realizar o cadastro do produto, o usurio deve atualizar o controle de estoque


desse produto. Ao entrar na tela do controle de estoque, os produtos cadastrados so
automaticamente carregados para que o usurio possa selecionar o produto desejado. Na
Figura 36, pode ser visualizada a seleo do produto na tela de controle de estoques.
Figura 36 - Seleo de produto no estoque

56
Aps informar o produto, deve-se informar a quantidade de produtos e ento salvar as
alteraes. Na Figura 37 pode ser vista a seleo da quantidade de produtos e na Figura 38
pode ser vista a tela com as informaes do estoque.

Figura 37 - Seleo da quantidade de produto

Figura 38 - Tela de estoque

57
Outro cadastro que possvel realizar atravs do aplicativo o cadastro de clientes. Na
tela de cadastro de cliente so informados alguns dados bsicos utilizados a fim de ter a
informao de para quem se est vendendo. Na Figura 39 pode ser vista a tela de cadastro de
cliente.

Figura 39 - Cadastro de cliente

A funcionalidade considerada mais importante do aplicativo a realizao da venda,


utilizada quando o representante vender algum produto. Para realizar uma venda necessrio
que todos os cadastros descritos anteriormente j tenham sido realizados.
Ao abrir a tela de venda, a informao de quem est realizando a venda vem
preenchida automaticamente, com base no usurio logado, conforme pode ser visto na Figura
40.

58
Figura 40 - Tela de vendas

Ao realizar uma venda, o representante deve informar o cliente que est comprando,
bem como os itens vendidos. O aplicativo carrega para seleo do usurio todas as
informaes previamente cadastradas.
Ao informar um item da venda o representante deve informar tambm a quantidade
vendida para aquele item. Na Figura 41, pode ser vista a seleo do item vendido e na Figura
42 pode ser vista a seleo da quantidade por item.

59
Figura 41 - Seleo de item de venda

Figura 42 - Seleo da quantidade de item vendido

60

O processo de vendas atravs do aplicativo pode ser considerado intuitivo. A venda


pode ser realizada de qualquer lugar atravs do uso de um dispositivo mvel, tornando o diaa-dia do representante mais produtivo do que quando realizava a venda no papel.
Na Figura 43 pode ser vista a tela de realizao de venda.

Figura 43 - Tela de realizao de venda

3.4 RESULTADOS E DISCUSSO

Um dos principais objetivos deste trabalho era desenvolver um aplicativo para Android
que possibilitasse a realizao do processo de vendas de produtos, desde o cadastro de clientes
at a realizao da venda. Este objetivo foi atingido a partir da criao do prottipo de
aplicativo para fora de vendas que realiza a integrao via web service com o servidor onde
est alocado o banco de dados. Desta forma, o segundo objetivo do trabalho que era
disponibilizar um web service para integrao de informaes entre o dispositivo mvel e o
servidor tambm foi realizado. Com o desenvolvimento do aplicativo foi possvel realizar
comparaes entre o aplicativo desenvolvido e os correlatos apresentados na seo 2.5 deste

61
trabalho.
Comparando o aplicativo desenvolvido neste trabalho com o aplicativo desenvolvido
por Machado (2007), pode-se notar que embora os dois trabalhos sejam aplicativos para
dispositivos mveis, h grandes diferenas entre os aplicativos. O sistema operacional uma
das grandes diferenas, pois o aplicativo desenvolvido por Machado (2007) roda em PALM
OS, um sistema operacional desenvolvido em 1996 para Assistentes Digitais Pessoais (PDAS)
e posteriormente estendido para suportar smartphone (MOBILEINFOCENTER, 2014). J o
aplicativo deste trabalho, foi desenvolvido para Android, o sistema operacional que domina
cerca de 85% do mercado de celulares brasileiro (LANDIM, 2014). Outra diferena que se
pode destacar tambm o foco dos trabalhos, no trabalho de Machado o foco utilizao do
aplicativo para uma vasta gama de empresas, diferentemente deste trabalho que tem como
objetivo atender uma empresa especfica. No Quadro 3 pode ser vista a comparao das
caractersticas de cada um dos trabalhos.

Quadro 3 - Comparao com aplicativo de Machado (2007)

Caractersticas
Linguagem de
programao
Banco de dados
Ambiente
(web/desktop/mobile)
Sistema operacional

Foco do trabalho
Ambiente de
desenvolvimento

Aplicativo Machado (2007)

Aplicativo deste trabalho

Visual Basic
Utiliza arquivo de banco de
dados PDB

Java
PostgreeSql

Mobile
PALM OS
Aplicao voltada para
PALM OS para ser utilizada
por diversas empresas

Mobile
Android
Aplicativo para Android para
atender a empresa Sold Out

Basic NS

Eclipse

Ao comparar o aplicativo desenvolvido com o aplicativo AppVenda$, no existe


diferena entre o sistema operacional. A principal diferena que o AppVenda$ um
aplicativo grtis que pode ser utilizado por qualquer pessoa ou empresa. J o aplicativo
desenvolvido neste trabalho tem como foco apenas uma empresa e no ser comercializado
para outras empresas. As principais funcionalidades em si, so basicamente iguais, no entanto
o AppVenda$ tem algumas funcionalidades a mais que o aplicativo desenvolvido, sendo
alguns deles: a) controle de pagamentos; b) relatrio de vendas; c) Backup e Restaurao dos
Dados. No Quadro 4 pode ser vista a comparao entre os aplicativos.

62
Quadro 4 - Comparao com aplicativo AppVenda$

Caractersticas
Linguagem de
programao
Ambiente
(web/desktop/mobile)
Sistema operacional

Foco do trabalho
Ambiente de
desenvolvimento

Aplicativo AppVenda$

Aplicativo deste trabalho

Java

Java

Mobile
Android
Aplicativo com
objetivo de controlar
vendas diretas

Mobile
Android
Aplicativo para Android para atender a
empresa Sold Out

Eclipse

Eclipse

63
4 CONCLUSES

Este trabalho apresenta um prottipo de aplicativo para fora de vendas que ser
utilizado pela empresa Sold Out. A grande vantagem que o aplicativo permite que seja
alterado o processo de vendas. Atualmente na empresa as vendas so realizadas utilizando o
conceito de consignao, ou seja, os representantes pegam os produtos na empresa e vendem
conforme demanda. A partir da utilizao do aplicativo, as vendas no sero mais realizadas
com consignao. O representante ir utilizar o aplicativo para realizar todo o processo de
vendas. No prprio aplicativo o representante ir realizar a demonstrao do produto e em
seguida a realizao da venda. Outra vantagem da utilizao do aplicativo que o estoque
ficar sempre atualizado, o que no acontecia no processo anterior de consignao.
Alm do aplicativo, foi desenvolvida uma integrao entre o aplicativo e o servidor. A
comunicao entre aplicativo e servidor realizada via web service. O aplicativo utilizado por
cada representante se comunica com o servidor, onde todos os procedimentos realizados so
armazenados ou atualizados no banco de dados.
Para o desenvolvimento foi escolhida a linguagem Java tanto para o desenvolvimento
do aplicativo quanto do servidor. Optou-se por utilizar a mesma linguagem para o
desenvolvimento das duas camadas, para que todos utilizem o mesmo ambiente de
desenvolvimento, alm das tecnologias utilizadas serem Open Source e rodarem em diversas
plataformas diferentes.
Para o aplicativo, foi escolhido o sistema operacional Android. A escolha foi baseada
no mercado atual, j que o Android predomina a maior parte do mercado de dispositivos
mveis no Brasil. Alm disto, os usurios j possuem dispositivos com Android e esto
familiarizados com o sistema operacional.
O prottipo de aplicativo possui algumas limitaes, ou seja, algumas funcionalidades
no previstas nesse aplicativo, mas que futuramente podero ser implementadas. Dentre elas,
pode-se destacar a criao de uma tela para visualizao das vendas realizadas, gerao de
relatrios e criao de controle de metas por representante.
Embora existam algumas limitaes no prottipo, pode-se considerar que os resultados
obtidos no desenvolvimento deste trabalho so satisfatrios, visto que os objetivos principais
foram atingidos e principalmente que atravs da utilizao do aplicativo, o dia-a-dia da
empresa Sold Out se tornar mais prtico e haver mais controle sobre os processos de venda
e estoque da empresa.

64
4.1

EXTENSES

Para trabalhos futuros, surge a oportunidade de complementar a soluo agregando


novas funcionalidades aos sistemas. Como sugesto, pode-se implementar uma integrao do
cadastro de usurio com o sistema de Recursos Humanos (RH), para que o login dos
representantes seja nico para a empresa toda.
Outra sugesto seria expandir o sistema para que ele se torne mais completo e possa
ser utilizado em diversos departamentos da empresa, por exemplo, criar um controle de
produo, Ordem de Produo (OP) entre outras funcionalidades.
O sistema poderia tambm ser complementado com um mdulo de relatrios e
grficos, para facilitar a gesto de vendas da empresa, bem como o acompanhamento de
resultados.
Seria interessante tambm, disponibilizar o aplicativo para outros sistemas
operacionais, como IOS e Windows Phone.

65
REFERNCIAS

ANDROID DEVELOPERS. Home page, [Califrnia], 2004. Disponvel em:


<http://developer.android.com/index.html>. Acesso em: 27 ago. 2013.
AMORIM, Vicente. Computao Mvel: Conceitos Bsicos do Android. [Ouro Preto], 2013.
Disponvel em:
<http://www.decom.ufop.br/vicente/disciplinas/2013_2/comp_movel/material/conceitos_basi
cos_android.pdf>. Acesso em: 22 jun. 2014.
BERNARD, Emmanuel. Bean Validation: What is Bean Validation [S.l], 2014. Disponvel
em: <http://beanvalidation.org/>. Acesso em: 08 jun. 2014.
CADENHEAD, Rogers; LEMAY, Laura. Aprenda em 21 dias Java 2. Rio de Janeiro:
Elsevier, 2005.
FRANA, Renato. Mercado do Mundo de Dispositivos Mveis. [Recife], 2011. Disponvel
em: <https://www.google.com/url?q=http://www.cin.ufpe.br/~pet/wordpress/wpcontent/uploads/2011/09/Mercado-do-Mundo-de-DispositivosM%25C3%25B3veis1.pptx&sa=U&ei=66I3UqiBAsfP2wWxYGwCw&ved=0CAcQFjAA&client=internal-udscse&usg=AFQjCNE9MqSXIaY7jnhGyTnohvX7jTPaew>. Acesso em: 16 set. 2013.
FUTRELL, Charles M. Vendas: Fundamentos e novas prticas de gesto. So Paulo: Saraiva,
2003.
GODINHO, Rafael. Criando servios REST com WCF. [S.l], 2009. Disponvel em:
<http://msdn.microsoft.com/pt-br/library/dd941696.aspx#item2>. Acesso em: 08 jun. 2014.
GOLDBERG, Claudio. A estratgia e objetivo da fora de vendas. [So Paulo], 2005.
Disponvel em:
<http://www.institutomvc.com.br/costacurta/artCG03Estrategias_Objetivos.htm>. Acesso em:
25 ago. 2013.
GOOGLE PLAY. AppVenda$ - Controle de Vendas. [S.l], 2014. Disponvel em:
<https://play.google.com/store/apps/details?id=air.AppVendas&hl=pt_BR>. Acesso em: 10
maio. 2014.
JOHNSON, Thienne M. JAVA para Dispositivos Mveis: desenvolvendo aplicaes com
J2me. So Paulo: Novatec, 2007.
LANDIM, Wikerson. Android domina 85,1% do mercado de celulares no Brasil. [S.l],
2014. Disponvel em: <http://www.tecmundo.com.br/celular/50306-android-domina-85-1-domercado-de-celulares-no-brasil.htm>. Acesso em: 20 jun. 2014.
LECHETA, Ricardo R. Google Android: aprenda a criar aplicaes para dispositivos mveis
com Android SD. So Paulo: Novatec, 2009.

66
MACHADO, Tiago. Sistema gerencial para automao de fora de vendas usando
dispositivos mveis baseados em Palm OS. 2007. 81 f. Trabalho de concluso de curso
(Bacharelado Cincias da Computao) Universidade Regional de Blumenau, Blumenau.
Disponvel em: <http://www.inf.furb.br/~pericas/orientacoes/VendasPalm2007.pdf>. Acesso
em: 18 ago. 2013.
MEDEIROS, Higor. Introduo JPA - Java Persistence API. [S.l], 2014. Disponvel em:
<http://www.devmedia.com.br/introducao-a-jpa-java-persistence-api/28173>. Acesso em: 08
jun. 2014.
MOBILEINFOCENTER. Palm Os. [S.l], 2014. Disponvel em:
<http://www.palminfocenter.com/palm-os/>. Acesso em: 20 jun. 2014.
PAMPLONA, Vitor Fernando. Web Services. Construindo, disponibilizando e acessando
Web Services via J2SE e J2ME. [S.l], 2010. Disponvel em:
<http://javafree.uol.com.br/artigo/871485/Web-Services-Construindo-disponibilizando-eacessando-Web-Services-via-J2SE-e-J2ME.html>. Acesso em: 17 set. 2013.
PAULILO, Gustavo. Como construir uma fora de vendas: O que faz uma fora de vendas
se diferenciar de simplesmente uma equipe de vendas? [S.l], 2014. Disponvel em:
<http://www.agendor.com.br/blog/como-construir-uma-forca-de-vendas/>. Acesso em: 31
mar. 2014
PEPPERS, D.; ROGERS, M. CRM marketing 1 to 1: um guia executivo para entender e
implantar estratgias de customer relationship management. So Paulo: Peppers and Rogers
Group do Brasil, 3. ed. 2004.
POSSER, Lucas S. Computao mvel e mlearning: estudo e construo de um prottipo
para Smartphone. 2006. 83 f. Trabalho de Concluso de Curso (Bacharelado em Sistemas da
Informao) Centro Universitrio Ritter dos Reis, Porto Alegre. Disponvel em:
<http://www.uniritter.edu.br/graduacao/informatica/sistemas/downloads/Computacao_Movel
_e_M-Learning.pdf>. Acesso em: 25 ago. 2013.
RENATO, Flvio. A histria dos telefones celulares. [S.l], 2014. Disponvel em:
<http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html>.
Acesso em: 30 mai. 2014.
SOLD OUT. Figth Fitness Wear. Documento entregue ao representante. Blumenau, 2014.
TOOLSWEB. Home page, [S.l], 2011. Dispovvel em:
<http://www.toolsweb.com.br/?webservice>. Acesso em: 25 ago. 2013.
W3SCHOOLS. Home page, [S.l], 2013. Disponvel em:
<http://www.w3schools.com/webservices/ws_intro.asp>. Acesso em: 27 ago. 2013.

67
APNDICE A Descrio dos casos de uso

Este Apndice apresenta a descrio dos casos de uso conforme previstos no(s)
diagrama apresentado na seo 3.2.1, conforme Quadro 5.
Quadro 5 Descrio dos casos de uso

UC01 Cadastrar Produto


Permite ao proprietrio informar os dados de um novo produto, como tambm alterar ou
excluir um produto j cadastrado.
Constraints
Pr-condio: O usurio logado no prottipo deve ter a permisso de proprietrio.
Ps-condio: Um produto foi includo, alterado ou excludo do prottipo.
Ps-condio: Produto foi consultado.
Cenrios
Consulta produto {Principal}
1. Proprietrio solicita cadastro de produto
2. Prottipo apresenta tela com lista de produtos
3. Proprietrio opta por localizar um produto
4. Proprietrio digita a descrio do produto
5. Prottipo faz uma requisio web service para pesquisar produto com a descrio
informada
6. Prottipo apresenta os produtos com a descrio informada
7. Proprietrio seleciona o produto desejado
8. Prottipo apresenta os dados do produto
Incluir produto {Alternativo}
No passo 3, o proprietrio opta por incluir um novo produto.
3.1. Proprietrio informa os dados de um novo produto e seleciona Incluir
3.2. Prottipo faz uma requisio web service para gravar as informaes
3.3. Prottipo do servidor recebe a requisio e insere registro no banco de dados

68
Alterar produto {Alternativo}
No passo 7, o proprietrio seleciona o produto desejado.
7.1. Prottipo apresenta os dados para alterao
7.2. Proprietrio edita os dados e seleciona Alterar
7.3. Prottipo faz uma requisio web service para gravar as informaes
7.4. Aplicao do servidor recebe a requisio e altera registro no banco de dados
Excluir produto {Alternativo}
No passo 7, o proprietrio seleciona um produto pressionando o registro por mais tempo.
7.1. Prottipo apresenta o cone de excluso
7.2. Proprietrio seleciona Excluir
7.3. Prottipo faz uma requisio web service para excluir as informaes
7.4. Servidor recebe a requisio e exclui o registro no banco de dados
UC02 Manter Clientes
Permite ao usurio informar os dados de um novo cliente, como tambm alterar ou excluir um
cliente j cadastrado.
Constraints
Pr-condio: O usurio logado no prottipo.
Ps-condio: Um cliente foi includo, alterado ou excludo do prottipo.
Ps-condio: Cliente foi consultado
Cenrios
Consulta produto {Principal}
1. Usurio solicita cadastro de cliente
2. Prottipo apresenta tela com lista de clientes
3. Usurio opta por localizar um cliente
4. Usurio digita a nome do cliente
5. Prottipo faz uma requisio web service para pesquisar clientes com o nome informado
6. Prottipo apresenta os clientes com o nome informado
7. Usurio seleciona o cliente desejado
8. Prottipo apresenta os dados do cliente
Incluir produto {Alternativo}

69
No passo 3, o Usurio opta por incluir um novo cliente.
3.1. Usurio informa os dados de um novo cliente e seleciona Incluir
3.2. Prottipo faz uma requisio web service para gravar as informaes
3.3. Servidor recebe requisio e insere registro no banco de dados
Alterar produto {Alternativo}
No passo 7, o usurio seleciona um cliente.
7.1. Prottipo apresenta os dados para alterao
7.2. Usurio edita os dados e seleciona Alterar
7.3. Prottipo faz uma requisio web service para gravar as informaes
7.4 Servidor recebe requisio e altera registro no banco de dados
Excluir produto {Alternativo}
No passo 7, o usurio seleciona um cliente pressionando o registro por mais tempo.
7.1. Prottipo apresenta o cone de excluso
7.2. Usurio seleciona Excluir
7.3. Prottipo faz uma requisio web service para excluir o registro
7.4. Aplicao do servidor recebe a requisio e exclui o registro no banco de dados
UC03 Controlar Estoque
Permite ao proprietrio visualizar a situao atual do estoque dos produtos, como tambm
fazer entradas ou sadas de estoque
Constraints
Pr-condio: O usurio logado no prottipo deve ter a permisso de proprietrio
Ps-condio: Foi feita uma entrada ou uma sada de estoque
Ps-condio: Estoque foi consultado
Cenrios
Consulta estoque {Principal}
1. Proprietrio solicita estoque
2. Prottipo faz uma requisio web service para atualizar os estoques
3. Prottipo apresenta uma de produtos com a quantidade em estoque
4. Proprietrio informa descrio do produto
5. Prottipo faz uma requisio web service passando a descrio do produto

70
6. Proprietrio visualiza estoque atual dos produtos pesquisados
Entrada de estoque {Alternativo}
No passo 3, o proprietrio opta por dar entrada no estoque de um produto
3.1. Proprietrio informa uma quantidade e seleciona a opo (+)
Sada de estoque {Alternativo}
No passo 3, o proprietrio opta por dar sada no estoque de um produto
3.1. Proprietrio informa uma quantidade e seleciona a opo (-)
UC04 Demonstrar produto
Permite ao representante demonstrar os produtos aos clientes
Constraints
Pr-condio: O usurio logado no prottipo deve ter a permisso de representante
Pr-condio: Foi realizado o cadastro de um produto
Ps-condio: Produto foi demonstrado
Cenrios
Consultar produto {Principal}
1. Representante solicita produto
2. Prottipo apresenta tela com lista de produtos
3. Representante opta por localizar um produto
4. Representante digita a descrio do produto
5. Prottipo faz uma requisio web service para pesquisar produto com a descrio
informada
6. Prottipo apresenta os produtos com a descrio informada
7. Representante seleciona o produto desejado
8. Prottipo apresenta os dados do produto
Exibir imagens do produto {Alternativo}.
No passo 7, o representante opta por visualizar a imagem do produto em tela cheia
7.1. Representante seleciona a imagem do produto
7.2. Prottipo exibe a imagem e tala cheia

71
UC05 Efetuar Vendas
Permitir ao usurio vender os produtos aos clientes
Constraints
Pr-condio: O usurio logado no prottipo.
Pr-condio: Foi realizado o cadastro de um produto
Pr-condio: Foi realizado o cadastro de um cliente
Ps-condio: Produto foi vendido
Cenrios
Vender produto {Principal}
1. Usurio solicita venda
2. Prottipo apresenta tela de vendas
3. Usurio seleciona o cliente
4. Usurio seleciona a opo produtos
5. Prottipo apresenta uma lista com os produtos
6. Usurio seleciona o produto desejado
7. Prottipo adiciona o produto na venda
8. Usurio finaliza venda
9. Prottipo faz uma requisio web service para gravar as informaes de venda
Venda de vrios itens {Alternativo}
Para a venda de dois ou mais itens basta repetir os passos 4, 5 e 6 antes de executar o passo 8.
Desta forma no passo 7 o prottipo ir se comportar da seguinte maneira
7.1 Prottipo soma os valor do produto adicionado com o total da venta e atualiza na tela
UC06 Sincronizar Dados
Permitir ao prottipo efetuar requisies web service ao sistema do servidor para consultas,
incluir ou excluir informaes no banco de dados.
Constraints
Pr-condio: O usurio logado no prottipo deve ter a permisso de representante ou
proprietrio.
Pr-condio: Ter conexo Wi-Fi ou 3G
Ps-condio: Dado foi integrado

72

Cenrios
Sincronizam dados {Principal}
1. Prottipo faz uma requisio web service solicitando as informaes
2. Servidor faz a consulta no banco de dados e retorna para o prottipo
3. Prottipo interpreta as informaes retornadas via web service e exibe na tela do dispositivo
mvel
Erro na sincronizao {Alternativo}
No passo 1 o prottipo identifica um erro na chamada do servio
3.1. Prottipo apresenta uma mensagem de erro na sincronizao
UC07 Consultar Estoque
Permite ao representante visualizar a situao atual do estoque dos produtos.
Constraints
Pr-condio: O usurio logado no prottipo deve ter a permisso de representante
Ps-condio: Foi feita uma entrada ou uma sada de estoque
Ps-condio: Estoque foi consultado
Cenrios
Consulta estoque {Principal}
1. Representante solicita estoque
2. Prottipo faz uma requisio web service para atualizar os estoques
3. Prottipo apresenta uma de produtos com a quantidade em estoque
4. Representante informa descrio do produto
5. Prottipo faz uma requisio web service passando a descrio do produto
6. Representante visualiza estoque atual dos produtos pesquisados

73
APNDICE B Descrio do Dicionrio de Dados

Este Apndice apresenta a descrio das tabelas do banco de dados apresentadas na


seo de especificao deste trabalho. Nos Quadros de 6 a 11 esto o dicionrio de dados das
tabelas do sistema. Os tipos de dados utilizados nos atributos so:
a) int: armazena nmeros inteiros;
b) varchar: armazena caracteres alfanumricos;
c) datetime: armazena data e hora;
d) decimal: armazena nmeros de preciso e escala fixos;
e) numeric: equivalente ao decimal, armazena nmeros de preciso e escala fixos.
f) char: corresponde a caracteres.

Quadro 6 - Tabela de usurios


Usuarios
Controle desta tabela ser realizado atravs do administrador do banco.
Chave
Chave
Tamanho primria estrangeira

Campo

Descrio

Tipo

id

Id da tabela

bigint

Sim

No

data_hora_alteracao

Data da alterao do registro

timestamp

No

No

data_hora_criacao

Data da criao do registro

timestamp

No

No

administrador

Indicativo se o usurio
administrador

boolean

No

No

login

Login do usurio

character

50

No

No

nome

Nome do usurio

character

100

No

No

senha

Senha do usurio

character

50

No

No

74
Quadro 7 - Tabela de clientes
Clientes
Armazena o cadastro de Clientes.
Campo

Descrio

Tipo

id

Id da tabela

Bigint

Tamanho

data_hora_alteracao Data da alterao do registro Timestamp

Chave
Chave
primria estrangeira
Sim

No

No

No

No

No

data_hora_criacao

Data da criao do registro

Timestamp

complemento

Complemento do endereo
do cliente

Character

30

No

No

endereco

Endereo do clietne

Character

50

No

No

nome

Nome do cliente

Character

100

No

No

numero

Numero do endereo do
cliente

integer

No

No

cidade

Cidade do endereo do
cliente

Character

No

No

50

Quadro 8 - Tabela de produtos


Produtos
Armazena o cadastro de Produtos.
Chave
Chave
Tamanho primria estrangeira

Campo

Descrio

Tipo

id

Id da tabela

Bigint

Sim

No

data_hora_alteracao

Data da alterao do registro

Timestamp

No

No

data_hora_criacao

Data da criao do registro

Timestamp

No

No

imagem

Imagem do produto

text

No

No

preco

Preo do produto

numeric

11,2

No

No

nome

Nome do produto

Character

100

No

No

75
tamanho

Tamanho do produto

character

No

No

Quadro 9 - Tabela de estoques


Estoques
Armazena o saldo de estoque dos produtos.
Campo

Descrio

Tipo

id

Id da tabela

bigint

data_hora_alteracao

Tamanho

Data da alterao do registro timestamp

Chave
Chave
primria estrangeira
Sim

No

No

No

data_hora_criacao

Data da criao do registro

timestamp

No

No

quantidade

Quantidade em estoque do
produto

bigint

No

No

id_produto

Id do cadastro do produto

bigint

No

Sim

Quadro 10 - Tabela de vendas


Vendas
Armazena as vendas realizadas pelos usurios.
Chave
Chave
Tamanho primria estrangeira

Campo

Descrio

Tipo

id

Id da tabela

bigint

Sim

No

data_hora_alteracao

Data da alterao do registro

timestamp

No

No

data_hora_criacao

Data da criao do registro

timestamp

No

No

data

Data da venda

timestamp

No

No

id_cliente

Id do cadastro do cliente da
venda

bigint

No

Sim

id_vendedor

Id do cadastro do usurio

bigint

No

Sim

Quadro 11 - Tabela de itens de venda

76
venda_itens
Armazena dos itens das vendas.
Chave
Chave
Tamanho primria estrangeira

Campo

Descrio

Tipo

id

Id da tabela

bigint

Sim

No

data_hora_alteracao

Data da alterao do registro

timestamp

No

No

data_hora_criacao

Data da criao do registro

timestamp

No

No

quantidade

Quantidade vendida

bigint

No

No

id_produto

Id do cadastro do produto
vendido

bigint

No

Sim

id_venda

Id da venda

bigint

No

Sim

Você também pode gostar