Escolar Documentos
Profissional Documentos
Cultura Documentos
Desenvolvimento de aplicativo de
vendas para dispositivos móveis
com sistema Android
Cledson Alves
FACULDADE CAMPO LIMPO PAULISTA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
Cledson Alves
Banca examinadora
Prof. Me. Eder Ignatowicz (Orientador)
Prof. Me. André Marcos Silva
Prof. Dr. Luís Mariano del Val Cura (Suplente)
2
FACULDADE CAMPO LIMPO PAULISTA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
Agradecimentos
Este trabalho não teria acontecido sem a ajuda de diversas pessoas, algumas pela
contribuição técnica e outras pela motivação.
Agradeço ao meu orientador Eder Ignatowicz pelas dicas de MVP, novas
ferramentas para o trabalho, motivação para colocar o projeto em teste e
funcionamento, me passando uma ótima visão de como funciona o mercado de
desenvolvimento de software.
Agradeço a diretora da empresa Flavia Leme, por ter me dado total liberdade para
desenvolvimento deste trabalho na empresa, pela motivação a continuar no trabalho
no momento em que enfrentamos dificuldades de relacionamento pessoal no meu
setor de trabalho.
Em especial agradeço ao representante de vendas Marcos Aurélio por iniciar os
testes do sistema nas vendas em campo, pela paciência com os problemas
encontrados no inicio da aplicação, ajudando muito com a melhoria da ferramenta
e sempre me motivando para que o projeto chegasse a um estado consistente. Talvez
se não fosse por estas atitudes o projeto teria parado no caminho.
Por último, agradeço aos amigos de faculdade Rodrigo Luciano, Giliard Maeda e
Alice Maeda pelo incentivo. Finalizando, agradeço ao meu amigo Felipe Laprano
pelas madrugadas e férias de faculdade que ficamos discutindo sobre o projeto e
por testes realizados com a aplicação.
3
FACULDADE CAMPO LIMPO PAULISTA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
SUMÁRIO
RESUMO ................................................................................................................ 5
1. CARACTERIZAÇÃO DA EMPRESA .......................................................... 5
2. APRESENTAÇÃO DA ATIVIDADE ........................................................... 6
Problema ou Justificativa .................................................................................... 6
Objetivos Principais ............................................................................................ 7
Metodologia de Trabalho .................................................................................... 7
3. DESENVOLVIMENTO DA ATIVIDADE ................................................... 8
Apresentação Funcional ...................................................................................... 8
Especificação de Projeto ................................................................................... 10
Problemas Enfrentados...................................................................................... 11
Resultados Obtidos ........................................................................................... 13
4. CONCLUSÕES ............................................................................................ 15
5. REFERÊNCIAS ÚTEIS ............................................................................... 16
ANEXO A – PROJETO DE SISTEMA ............................................................... 17
ANEXO B – MANUAL DE USUÁRIO 1 ........................................................... 21
ANEXO C – MANUAL DE USUÁRIO 2 ........................................................... 37
ANEXO D – MANUAL DE OPERAÇÃO E IMPLANTAÇÃO ......................... 41
1.
4
RESUMO
O objetivo deste trabalho é apresentar o desenvolvimento de um sistema de vendas
para empresa Kelma Cosméticos, operando em dispositivos móveis com sistema
operacional Android.
O trabalho proposto visa agilidade no processo de vendas, além de facilitar a
apresentação dos produtos, agilizando as negociações, evitando a redigitação do
pedido.
1. CARACTERIZAÇÃO DA EMPRESA
A Kelma Cosméticos é uma indústria-distribuidora de cosméticos no mercado há
58 anos. É uma empresa de pequeno porte com um quadro aproximado de 100
colaboradores. Com laboratório próprio, a Kelma Cosméticos produz suas próprias
essências para shampoos, cremes, condicionadores e uma variada linha de
cosméticos (vide figura 01).
Hoje a empresa tem clientes espalhados no Brasil, onde seus principais clientes
estão localizados no estado de São Paulo. Recentemente a empresa criou um setor
de exportação, para difundir seus produtos no comércio exterior.
5
2. APRESENTAÇÃO DA ATIVIDADE
A aplicação desenvolvida é um sistema de vendas para dispositivos móveis . Foi
desenvolvido em linguagem Java para sistema operacional Android com versão
mínima 2.3 .
A motivação para o desenvolvimento da aplicação teve como origem a
informatização do processo de vendas da empresa Kelma Cósmeticos.
Problema
O processo atual de vendas na Kelma Cosméticos é muito custoso. O representante
retira o pedido em talão convencional no cliente, retorna no período noturno para
casa para digitar em planilha eletrônica e enviá-lo para a empresa como pode ser
observado no diagrama de fluxo na figura 02.
Quando o pedido chega à empresa, ocorre uma verificação manual dos planos e
prazos de pagamentos permitidos ao cliente, com o processo de digitação ocorrendo
na sequência.
Todo o processo desde a retirada do pedido no cliente até a inserção no banco de
dados da empresa, leva em média 12 horas para ser concluído.
A empresa também tem um alto custo com insumos (tonner, papel A4), horas extras
do setor de digitação, pois após receberem o pedido, este deve ser impresso e
digitado manualmente no sistema.
6
Objetivos Principais
O objetivo do trabalho é agilizar o processo de vendas, fazendo com que o
representante retire o pedido no cliente e o transmita para a empresa como pode ser
observado no diagrama de fluxo na figura 03.
7
Metodologia de Trabalho
Para desenvolvimento deste aplicativo, foi utilizada a IDE Eclipse Juno® obtida
na comunidade eclipse.org (Eclipse.org,2012) e API SDK Android® 20.0.2
disponível no site de desenvolvedores Android.
O trabalho foi todo desenvolvido em linguagem Java com JRE 7.
API externas como Xtream 1.4 para gerar XML obtido no site da codehaus.org e
Commons-net 3.3 para conexão FTP baixada no site da Apache.org também foram
utilizadas.
Neste trabalho foram simuladas telas nos dispositivos móveis celulares e tablets
com auxilio do Android Virtual Device Manager incluso no SDK Android®.
Para leitura do QRCODE dos produtos foi utilizado o programa Barcode Scanner
– leitor de QRCODE baixado no Play Store da Google® (BarcodeScanner,
2013).
3. DESENVOLVIMENTO DA ATIVIDADE
Apresentação Funcional
A tela inicial do sistema (vide figura 04) apresenta as seis operações basícas:
8
Pedidos: Lista os pedidos digitados. É nesta tela que é feita a transmissão
do pedido para empresa;
Clientes: Lista todos os clientes cadastrados no sistema;
Produtos: Lista todos os produtos cadastrados no sistema;
Relatórios: Nesta tela é apresentado o relatório de toda a venda do
representante no sistema, produtos mais vendidos, clientes que mais
compraram e também possui um gráfico de vendas em um determinado
período.
Na parte inferior esquerdo abaixo dos botões, temos a informação do representante
que esta logado no sistema. Este nome irá constar na identificação do pedido. Ao
pressionar o menu do aparelho surge um submenu (vide figura 05) com as opções
de cadastros, pesquisa e configurações do sistema.
9
Figura 06 – Aplicação Java Desktop para ler o arquivo do pedido e inserir
no banco Oracle.
Especificação de Projeto
O sistema desenvolvido utiliza o sistema gerenciador de banco de dados
(SQLITE®) nativo do sistema operacional Android.
Após o representante digitar e salvar o pedido, este pedido é inserido no banco de
dados do aparelho. No momento da transmissão é gerado um arquivo .XML do
pedido e transmitido para o servidor de FTP da empresa.
Na figura 07 podemos observar o diagrama do fluxo de digitação e transmissão do
pedido no sistema de vendas Android.
10
Figura 07 – Diagrama de eventos ilustrando o processo de digitação e
transmissão do pedido no sistema Android.
Caso a conexão FTP não seja realizada, o arquivo XML de pedido gerado é
excluído do aparelho e o status do pedido é mantido com o status “aguardando
envio” no banco de dados. Caso ocorra a conexão FTP e posteriormente o envio do
arquivo, o arquivo XML gerado também é excluído do aparelho e o status do pedido
é alterado para o status “pedido transmitido” no banco de dados.
Como os pedidos ficam armazenados no banco de dados e não são deletados, foi
optado por transmitir pedido a pedido, visando os problemas que poderiam ocorrer
na lentidão com tráfego da transmissão do protocolo FTP.
A arquitetura de projeto (vide figura 08) esta dividida em três camadas:
Resposta
Interface do Regra de
Usuário Negócio Banco de Dados
Requisição
11
Toda requisição ao banco (vide figura 09) é realizada por uma classe intermediária.
Desta forma foi isolado regra de negócio e banco de dados de interface de usuário,
visando facilidades futuras na manutenção do código do sistema.
Problemas Enfrentados
Alguns problemas no decorrer do desenvolvimento fizeram com que o projeto não
fosse realizado com êxito em todos os pontos propostos. Contudo, outros foram
solucionados e contribuíram com a melhoria do sistema:
o Devido a mudanças de setor e consequentemente de função, fiquei sem
acesso ao banco de dados da empresa. Com isso não foi possível inserir o
pedido transmitido do sistema de vendas Android direto no banco de dados,
como era o objetivo do trabalho. A solução encontrada foi realizar a
impressão do pedido (vide figura 10) pela aplicação Java desktop e
posteriormente a digitação do pedido no sistema.
12
Figura 10 – Pedido impresso pela aplicação Java Desktop.
Resultados Obtidos
13
o Redução no consumo de insumos (tonners / papel A4);
Os itens agora ficam sequenciais (vide figura 10) e só aparece no pedido os itens
que foram vendidos.
O consumo de papel e tonner foram reduzidos, pois no modo de impressão antigo
necessariamente era impresso quatro folhas por pedido.
O último dia do mês era um problema tanto para o setor de digitação quanto para
os vendedores:
Os vendedores tinham que encerrar suas visitas no máximo até as
15h00min, para poderem ir pra casa e terem tempo de digitar os pedidos no
talão eletrônico e posteriormente enviá-los para a empresa antes das
17h00min (tempo limite de chegada de pedidos imposto pela empresa).
Como os pedidos começavam a chegar a partir das 17h00min, dificilmente
as atividades no setor encerravam no expediente normal.
14
Com a implantação do sistema, os vendedores estão retirando o pedido e enviando
a empresa e o setor de digitação já vai incluindo no sistema. O que garante ao final
do dia não terem mais pedidos para digitarem no sistema.
O término das atividades no setor foi bastante reduzido depois da implementação
do novo sistema de vendas no mês de julho, como pode ser observado no gráfico
(vide figura 12).
4. CONCLUSÕES
Este trabalho me permitiu contribuir com a melhoria do processo de vendas na
empresa Kelma Cosméticos, adquiri um forte conhecimento em programação para
dispositivos móveis na plataforma Android. Também tive um forte contato com
manipulação de arquivos XML e estrutura para internacionalização do pacote,
regras de negócio, gerência de projetos e manipulação de dados financeiros.
Aprendi e pratiquei bastante neste trabalho a separar regra de negócio de interface
do usuário e boas praticas de programação orientado a objeto.
15
5 . REFERÊNCIAS ÚTEIS
Lecheta ,R. (2012). Google Android, 2º Edição, 6º Revisão . Editora Novatec. São
Paulo.
Sierra ,K.; Bates, B.(2005). Use a Cabeça! Java, 2º Edição, 1º Revisão . Editora
ALTA BOOKS. Rio de Janeiro.
Filho, R. (2010) Java 2, 2º Edição, 3º Revisão. Editora Erica. São Paulo.
Aplicativo Barcode Scanner disponível [on-line] em
https://play.google.com/store/apps/details?id=com.google.zxing.client.android&h
1=pt_BR
Acessado em 06 de julho de 2012.
Mota, K (2012) Suporte a múltiplas telas no Android. disponível [on-line] em
http://www.klebermota.eti.br/2011/09/02/suporte-a-multiplas-telas-no-android/
acessado em 19 de maio de 2013.
Eclipse.org (2013) . Comunidade de desenvolvedores Eclipse disponível [on-line]
em http://www.eclipse.org/downloads/packages/release/juno/sr1 acessado em 22
de janeiro de 2013.
Android Developers (2013) . API de desenvolvimento Android versão 20.0.1
disponível [on-line] em http://developer.android.com/sdk/index.html acessado
em 24 de janeiro de 2013.
Apache.org (2013) . API Commons-net 3.3 para conexão FTP disponível [on-
line] em http://commons.apache.org/proper/commons-net/download_net.cgi
acessado em 08 de abril de 2013.
Codehaus.org (2013) . API XStream 1.4 para gerar arquivo XML disponível [on-
line] em http://commons.apache.org/proper/commons-net/download_net.cgi
acessado em 22 de junho de 2013.
Vogel, L. (2013). Ciclo de vidas das Activity em Android: manipulando o ciclo
de vida das Activity em android diponivel [on-line] em
http://www.vogella.com/articles/AndroidLifeCycle/article.html. Acessado em 22
setembro de 2013.
Lima, E. (2012). Introdução ao Android diponivel [on-line] em
http://www.blog.edersonlima.net/?p=68. Acessado em 01 otubro de 2012.
16
FACULDADE CAMPO LIMPO PAULISTA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
ANEXO A – PROJETO
17
Na (figura 14) podemos observar as principais tabelas do sistema Android.
O pedido que chega à empresa transmitida por FTP é um arquivo. XML como pode
ser observado na (figura 15).
Este pedido é carregado pela aplicação Java desktop e depois impresso para ser
digitado posteriormente no sistema da empresa.
18
Figura 15 – Pedido XML gerado pela aplicação.
19
A arquitetura do projeto no aplicativo de vendas Android esta estruturada em
pacotes para classes do projeto (vide figura 16).
20
FACULDADE CAMPO LIMPO PAULISTA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
Inicia o processo de
Digitação do pedido. Lista todos os clientes
Cadastrados no sistema
21
Iniciando uma venda:
o Pressione o botão “Vendas”;
o Busque o cliente pressionando o “Botão Lupa”;
o Informe uma das operações “Venda Normal, Orçamento, Bonificação ou
Troca;
o Informe o tipo de pagamento;
o Informe prazo, filial e tabela;
o O preenchimento do campo observação é optativo ao vendedor.
22
A inclusão dos itens pode ser feita de duas formas:
1- Pressionando o botão com simbologia “ ”. O sistema irá fazer a leitura do
QRCODE do produto utilizando a câmera do aparelho.
2- Pressionando o botão com simbologia “ ”. Nesta opção o sistema abrirá a
tela de produtos.
Scaneando o produto:
Pressione o botão “Scanner”;
Mire a câmera no código de barras do produto “QRCODE”;
23
Após a leitura, informe a quantidade de itens e pressione o botão “Adicionar”
para incluir o item no pedido.
24
Após isso pressione o botão adicionar e o item será incluso ao pedido.
25
Figura 26 – Surgimento do dialogo para alterar a quantidade.
26
Tela Pedidos
Após a digitação do pedido, ele ficará disponível na tela “Pedidos” aba
“Aguardando Transmissão”.
Transmitindo o pedido:
Pressione o pedido a ser transmitido;
27
Figura 30 – Resumo e Transmissão do Pedido.
Antes da transmissão do pedido, caso necessite pode alterar os itens
(Incluir/Excluir) ou alterar o cabeçalho do pedido (Prazo, Observação,
Tabela);
28
Após isso, surgirá um dialogo perguntado se deseja “Montar Pedido”,
informe sim e o pedido estará disponível na aba “ Aguardando
Transmissão” para ser enviado.
Caso precise remover, pressione “Excluir Orçamento” e o pedido será
excluído do sistema.
Arquivando pedidos:
Esta função arquiva os pedidos que já foram transmitidos para empresa, ou seja,
pedidos mais antigos. Evitando lentidão no sistema ao visualizar os pedidos
transmitidos.
Na aba “transmitidos”, pressione o pedido em seguida pressione “Arquivar
Pedido”, confirme “Sim” no dialogo e o pedido será movido para aba
“Arquivados”.
Relatórios:
A tela relatórios exibe a projeção de vendas do vendedor durante o ano. As vendas
estão separadas por mês.
o Pressione o menu “Relatórios”;
29
Pedidos Venda Normal: Quantidade de pedidos digitados como venda
normal durante o mês corrente;
Pedidos Bonificados: Quantidade de pedidos digitados como bonificados
durante o mês corrente;
Orçamentos: Quantidade de orçamentos digitados durante o mês corrente;
Pedidos Transmitidos: Quantidade de pedidos já transmitidos para
empresa;
Pedidos Aguardando Transmissão: Quantidade de pedidos que ainda não
foram enviados;
Total de Vendas: Somatórios de vendas dos pedidos mensais.
Importante: Os bonificados e orçamentos não entram nesta contagem.
Clientes:
A tela Clientes lista todos os clientes cadastrados no aparelho. Além dos dados
principais do cliente, é possível acompanhar a data e valor da última compra do
cliente no sistema.
o Pressione o botão Clientes
30
Nesta tela é possível enviar e-mail para o cliente, bastando apenas pressionar o
cliente desejado.
Produtos:
A tela produtos lista todos os produtos cadastrados no aparelho. O sistema carrega
os produtos na tabela à vista. Para simular preços pressione a tabela desejada e o
sistema recalcula todos os itens.
31
Para excluir um produto do sistema, pressione o item por um segundo.
32
Agendar Visita:
Para agendar uma visita, pressione o botão “Visitas” na tela inicial.
33
o Na tela que surge, preencha os campos em seguida em salvar;
34
Figura 39 – Tela de configuração do diretório de fotos.
Importante: As fotos com resolução de 128X128 pixel devem ser compostas por
codigoProduto.png e as fotos grandes por codigoProduto.JPG em pastas distintas.
Cadastro de Produtos.
Quando a empresa lançar um produto novo, é enviado para o e-mail do vendedor
o QRCODE do produto. Só é necessário scanear o código e o produto já estará
disponível para ser vendido no sistema.
o Pressione “Menu do aparelho Android”;
o Cadastro;
o Cadastro produto;
o Pressione o botão com simbologia “ ” para fazer a leitura do código;
o Os campos são preenchidos automaticamente após a leitura;
o Pressione o botão com simbologia “ ”, depois disso o produto estará
disponível na tela produto.
35
Figura 40 – Tela Cadastro de Produtos.
36
FACULDADE CAMPO LIMPO PAULISTA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
37
o Após escolher o pedido o mesmo é carregado na aplicação e os botões são
habilitados.
38
Figura 42 – Enviando espelho do pedido ao vendedor.
39
Figura 44 – Espelho do pedido recebido pelo vendedor.
40
FACULDADE CAMPO LIMPO PAULISTA
BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
Instalação do aplicativo
41
o Aguarde o final da instalação, depois pressione “Concluído” ou “Abrir”.
42
o Procure por aplicativos em seguida Força de Vendas
43