Escolar Documentos
Profissional Documentos
Cultura Documentos
For Cave Nda 2014
For Cave Nda 2014
FBIO DE OLIVEIRA
BLUMENAU
2014
2014/1-04
FBIO DE OLIVEIRA
BLUMENAU
2014
2014/1-04
Por
FBIO DE OLIVEIRA
Presidente:
______________________________________________________
Prof. Francisco Adell Pricas, Mestre Orientador, FURB
Membro:
______________________________________________________
Prof. Everaldo Artur Grahl, Mestre FURB
Membro:
______________________________________________________
Prof. Marcel Hugo, Mestre FURB
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.
RESUMO
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
LISTA DE QUADROS
LISTA DE SIGLAS
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
13
1.1 OBJETIVOS DO TRABALHO
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
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.
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
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
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.
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.
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
2.7
TRABALHOS CORRELATOS
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.
23
foco atender a empresa Sold Out. (GOOGLE PLAY, 2014). Na Figura 6, pode ser vista a tela
de realizao de vendas.
24
3 DESENVOLVIMENTO
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
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.
27
Figura 10 - Atualizao do estoque na venda de produtos
3.2 ESPECIFICAO
28
3.2.1 REQUISITOS DO SISTEMA
Caso de Uso
UC01
UC02
UC03
UC04
UC05
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.
30
Figura 11 - Diagrama de casos de uso
31
3.2.3 DIAGRAMA DE CLASSES
32
Figura 12 - Diagrama de classes
33
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.
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
38
classe
que
controla
estado
dos
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
3.3.1.1 Servidor
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
41
Figura 17 - Validaes com Beans Validation
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.
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.
44
Figura 21 - Pacote "Core" - classes genricas
3.3.1.2 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.
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
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
49
Figura 27 - Mtodo "post" da classe Rest.java
pelas
classes
ProdutoFormularioEstadoEdicao.java
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.
52
3.3.2.1 Operacionalidade do aplicativo
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.
54
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
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.
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.
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
60
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.
Caractersticas
Linguagem de
programao
Banco de dados
Ambiente
(web/desktop/mobile)
Sistema operacional
Foco do trabalho
Ambiente de
desenvolvimento
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
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$
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
65
REFERNCIAS
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
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
Campo
Descrio
Tipo
id
Id da tabela
bigint
Sim
No
data_hora_alteracao
timestamp
No
No
data_hora_criacao
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
Chave
Chave
primria estrangeira
Sim
No
No
No
No
No
data_hora_criacao
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
Campo
Descrio
Tipo
id
Id da tabela
Bigint
Sim
No
data_hora_alteracao
Timestamp
No
No
data_hora_criacao
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
Descrio
Tipo
id
Id da tabela
bigint
data_hora_alteracao
Tamanho
Chave
Chave
primria estrangeira
Sim
No
No
No
data_hora_criacao
timestamp
No
No
quantidade
Quantidade em estoque do
produto
bigint
No
No
id_produto
Id do cadastro do produto
bigint
No
Sim
Campo
Descrio
Tipo
id
Id da tabela
bigint
Sim
No
data_hora_alteracao
timestamp
No
No
data_hora_criacao
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
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
timestamp
No
No
data_hora_criacao
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