Vous êtes sur la page 1sur 131

UNIVERSIDADE DO PLANALTO CATARINENSE

CURSO DE SISTEMAS DE INFORMAO


(BACHARELADO)

SERGIO ANTONIO FONTANA JUNIOR

PROTTIPO DE UM APLICATIVO ANDROID PARA PEDIDOS DE


LANCHES E UM PORTAL WEB PARA GESTO E
MONITORAMENTO

LAGES (SC)
2013
SERGIO ANTONIO FONTANA JUNIOR

PROTTIPO DE UM APLICATIVO ANDROID PARA PEDIDOS DE


LANCHES E UM PORTAL WEB PARA GESTO E
MONITORAMENTO

Trabalho de Concluso de Curso


submetido Universidade do Planalto
Catarinense para obteno dos crditos
de disciplina com nome equivalente no
curso de Sistemas de Informao -
Bacharelado.

Orientao: Alexandre Rech, Bel.

LAGES (SC)
2013
SERGIO ANTONIO FONTANA JUNIOR

PROTTIPO DE UM APLICATIVO ANDROID PARA PEDIDOS DE


LANCHES E UM PORTAL WEB PARA GESTO E MONITORAMENTO

ESTE RELATRIO, DO TRABALHO DE


CONCLUSO DE CURSO, FOI
JULGADO ADEQUADO PARA
OBTENO DOS CRDITOS DA
DISCIPLINA DE TRABALHO DE
CONCLUSO DE CURSO, DO 8.
SEMESTRE, OBRIGATRIA PARA
OBTENO DO TTULO DE:

BACHAREL EM SISTEMAS DE
INFORMAO

Lages (SC), 4 de Dezembro de 2013

Prof. Alexandre Rech, Bel.


Orientador

BANCA EXAMINADORA:

Prof. Ismael dos Santos, Bel. Prof. Rafael Gattino, Bel.


UNIPLAC UNIPLAC

Prof. Sabrina Bet Koerich, M.Sc


Coordenador de Curso / Professor de TCC
LISTA DE ILUSTRAES

FIGURA 1 - Crescimento do faturamento anual dos fast-foods.................................. 19


FIGURA 2 - Camadas da arquitetura Android .............................................................. 23
FIGURA 3 - Diagrama ER (Banco de Dados) Grupo dos Endereos ..................... 38
FIGURA 4 - Diagrama ER (Banco de Dados) Grupo das Empresas....................... 39
FIGURA 5 - Diagrama ER (Banco de Dados) Grupo dos Items.............................. 40
FIGURA 6 - Diagrama ER (Banco de Dados) Grupo dos Pedidos ......................... 41
FIGURA 7 - Diagrama de casos de uso do Mdulo Cliente ........................................ 42
FIGURA 8 - Diagrama de Atividade - Caso de Uso UC001 Alterar Informaes do
Usurio ....................................................................................................................... 43
FIGURA 9 - Diagrama de Atividade - Caso de Uso UC002 Efetuar Login ........... 44
FIGURA 10 - Diagrama de Atividade - Caso de Uso UC003 Efetuar Login Via
Facebook ..................................................................................................................... 45
FIGURA 11 - Diagrama de Atividade - Caso de Uso UC004 Efetuar Login Via
Usurio ..................................................................................................................... 46
FIGURA 12 - Diagrama de Atividade - Caso de Uso UC005 Efetuar Logout ...... 47
FIGURA 13 - Diagrama de Atividade - Caso de Uso UC006 Efetuar Pedido de
Lanche ..................................................................................................................... 48
FIGURA 14 - Diagrama de Atividade - Caso de Uso UC007 Obter Endereo ..... 49
FIGURA 15 - Diagrama de Atividade - Caso de Uso UC008 Obter Endereo via
CEP ..................................................................................................................... 50
FIGURA 16 - Diagrama de Atividade - Caso de Uso UC009 Obter Endereo Via
GPS ..................................................................................................................... 51
FIGURA 17 - Diagrama de casos de uso do Mdulo Empresarial ............................. 53
FIGURA 18 - Diagrama de Atividade - Caso de Uso UC012 Alterar Informaes
da Empresa ..................................................................................................................... 53
FIGURA 19 - Diagrama de Atividade - Caso de Uso UC013 Avaliar o Pedido
Solicitado ..................................................................................................................... 54
FIGURA 20 - Diagrama de Atividade - Caso de Uso UC014 Efetuar Login......... 56
FIGURA 21 - Diagrama de Atividade - Caso de Uso UC015 Efetuar Logout ...... 57
FIGURA 22 - Diagrama de Atividade - Caso de Uso 16 Enviar Feedback para o
Administrador ..................................................................................................................... 58
FIGURA 23 - Diagrama de Atividade - Caso de Uso 17 Visualizar Itens Mais
Pedidos ..................................................................................................................... 59
FIGURA 24 - UC020 - CRUD Manter Itens do Cardpio....................................... 60
FIGURA 25 - Emulador Android SDK NHibernate ..................................................... 63
FIGURA 26 - Android SDK e AVD Manager .............................................................. 64
FIGURA 27 - Diagrama que representa o padro Modelo-Viso-Controlador......... 65
FIGURA 28 - Viso geral em alto nvel como trabalha o NHibernate ....................... 67
FIGURA 29 - Web Service Roles ................................................................................... 68
FIGURA 30 - Tela inicial Visual Studio 2010 .............................................................. 71
FIGURA 31 - Visualizao Object Explorer do SQL Server 2008 ............................ 72
FIGURA 32 - Visualizao Soluo Visual Studio (Arquitetura Portal Web e
WebService) ..................................................................................................................... 73
FIGURA 33 - Visualizao Projeto Eclipse (Aplicativo Android) ............................. 75
FIGURA 34 - Formulrio de login do usurio ao sistema Portal Web ................... 98
FIGURA 35 - Tela de alterao de informaes Empresariais Portal Web............ 99
FIGURA 36 - Tela de Central de Pedidos em Aberto Portal Web ........................ 100
FIGURA 37 - Tela de Central de Pedidos Fechados Portal Web .......................... 100
FIGURA 38 - Tela de Cadastro de Bebidas Portal Web ......................................... 101
FIGURA 39 - Tela de Cadastro de Ingredientes Portal Web.................................. 102
FIGURA 40 - Tela de Cadastro de Lanches Portal Web......................................... 102
FIGURA 41 - Tela de Grficos de Lanches mais Pedidos Portal Web ................. 103
FIGURA 42 - Tela de Contato Portal Web ............................................................... 103
FIGURA 43 - Interface Inicial Prottipo aplicativo Android ................................. 104
FIGURA 44 - Tela de informao de usurio e senha Prottipo aplicativo Android .
................................................................................................................... 104
FIGURA 45 - Tela de preenchimento do nmero e observaes de localizao
Prottipo aplicativo Android.............................................................................................. 105
FIGURA 46 - Tela de apresentao de empresa disponveis Prottipo aplicativo
Android ................................................................................................................... 106
FIGURA 47 - Tela de apresentao de cardpio de determinada empresa Prottipo
aplicativo Android............................................................................................................... 107
FIGURA 48 - Tela de desmarcao de ingredientes de lanche Prottipo aplicativo
Android ................................................................................................................... 108
FIGURA 49 - Tela de carrinho de compras Prottipo aplicativo Android ........... 109

QUADRO 1-
Cronograma do TCC ................................................................................ 17
QUADRO RF 001 Permitir empresas enviar Feedbacks para o Administrador34
2-
QUADRO RF 002 Validar usurio e senha........................................................... 34
3-
QUADRO RF 003 Permitir o filtro de informaes ............................................ 35
4-
QUADRO RF 004 Verificar conexo com o WebService .................................. 35
5-
QUADRO RF 005 Verificar conexo com a Internet .......................................... 35
6-
QUADRO RF 006 Validar Cep .............................................................................. 35
7-
QUADRO RF 007 Validar token de acesso do usurio ....................................... 35
8-
QUADRO RF 008 Processar Informaes de Localizao ................................. 36
9-
QUADRO RF 009 Aprovar/Cancelar Pedidos.................................................... 36
10 -
QUADRO RF 010 Enviar Pedido......................................................................... 36
11 -
QUADRO RF 011 Gerar relatrios de bebidas e lanches mais pedidos.......... 36
12 -
QUADRO 13 -
RNF 001 - Trafegar informaes com o WebService no formato Json
................................................................................................................... 36
QUADRO 14 - RNF 002 - Mdulos restritos a tipos especficos de usurios ........... 37
QUADRO 15 - RNF 003 - Funcionar em todas as verses do Android ..................... 37
QUADRO 16 - RNF 004 Validar Informaes Digitadas ......................................... 37
QUADRO 17 -
Cdigo fonte do mtodo CreateSessionFactory................................. 77
QUADRO 18 -
Cdigo fonte do mtodo SendCrossTalkToWebService ................... 78
QUADRO 19 -
Cdigo fonte do mtodo SendEmail. ................................................... 79
QUADRO 20 -
Cdigo fonte da classe CityMap ........................................................... 80
QUADRO 21 -
Cdigo fonte do mtodo de Insero e Alterao de dados na base de
dados. ................................................................................................................... 81
QUADRO 22 - Cdigo fonte do mtodo Delete. ........................................................... 82
QUADRO 23 - Cdigo fonte do mtodo GetById ......................................................... 83
QUADRO 24 - Cdigo fonte do mtodo SignIn............................................................ 84
QUADRO 25 - Cdigo fonte do mtodo de Auto Mapeamento entre Objetos ......... 85
QUADRO 26 - Cdigo fonte do trecho de cdigo do componente de Grid do Telerik.
................................................................................................................... 86
QUADRO 27 - Cdigo fonte do mtodo userAuthentication que retorna se as
credncias (usurio e senha) so vlidos. ........................................................................... 87
QUADRO 28 - Cdigo fonte da classe para validao de informaes do Sistema . 89
QUADRO 29 - Cdigo Fonte do Mtodo GetSnacksByEnterprise............................. 90
QUADRO 30 - Xml do Layout da interface inicial do prottipo do aplicativo
Android ................................................................................................................... 92
QUADRO 31 - Cdigo fonte do mtodo getAddressByPostalCode ........................... 93
QUADRO 32 - Cdigo fonte do mtodo getAddressByGps ........................................ 95
QUADRO 33 - Cdigo fonte do mtodo LoadAndSendRequest ................................. 97
LISTA DE ABREVIATURAS E SIGLAS

API - Advanced Programming Interface


ASP - Active Server Pages
CGI - Common Gateway Interface
CLR -Common Language Runtime
GPS - Global Positioning System
JSP - Java Server Pages
MVC -Model-View-Controller
PU - Processo Unificado
SOAP -Simple Object Access Protocol
SQL -Structured Query Language
UC - Use Case (Caso de uso)
UML - Unified Modeling Language
WEB - World Wide Web
WSDL - Web Service Description Language
XML - Extensible Markup Language
RESUMO

Atualmente as pessoas desejam e optam por usufruir de servios que lhe tragam mais
facilidade, flexibilidade e qualidade em suas atividades em geral, atravs da alta
capacidade tecnolgica disponvel para desenvolvimento de aplicativos e softwares com
uma elevada reduo de tempo e transparncia nas atividades realizadas. Quando uma
pessoa deseja realizar um pedido alimentcio, devido ao crescimento exorbitante pela
busca de servios de delivery de empresas alimentcias, por muitas vezes a mesma
encontra-se com dificuldades por questes de transito, congestionamento, linhas
telefnicas ocupadas e alto fluxo de pessoas concorrendo com as mesmas vontades. Com
isso o objetivo deste trabalho consiste no desenvolvimento de na implementao de um
prottipo de aplicativo mvel na plataforma Android com a linguagem de programao
JAVA, para realizao do pedido por parte do cliente e um portal Web com a tecnologia
ASP.NET MVC3 e a linguagem de programao .NET C# para a anlise, gesto e
monitoramento e auxlio na tomada de deciso, por parte dos funcionrios da empresa.
Aps a concluso do desenvolvimento deste trabalho, o cliente poder realizar pedidos
de lanches de forma mais simplifica, gil e transparente, possuindo apenas um
smartphone com conexo de internet, sem a necessidade direta de contato fsico ou
telefnico e por parte da empresa, a mesma precisar possuir apenas um computador
com acesso internet, que atravs de uma pgina web moderna e simplificada,
possibilitar controle e gesto de seus pedidos, inclusive auxilio a tomada de deciso,
tais como quais as preferncias do cliente, podendo assim, focar em suas preferncias .

Palavras-chave:
Aplicativo Android; Portal Web; ASP.NET MVC3.
ABSTRACT

Nowadays people want and choose to make use of services that bring greater ease,
flexibility and quality in their activities in general, through high technological capacity
available for application development and software with a high reduction of time and
transparency in the activities. When a person wishes to make a request for food, due to
the exorbitant growth by seeking services delivery food companies, often by the same
meets with difficulties for reasons of traffic congestion, busy telephone lines and high
flow of people competing with the same desires. Therefore, the objective of this work
is the development of the implementation of a prototype mobile application on the
Android platform with the JAVA programming language, to perform the request from
the client and a Web portal with technology ASP.NET MVC3 and language
programming. NET C # for the analysis, management and monitoring and aid in decision
making on the part of employees. Upon completion of the development of this work, the
client can make requests for snacks in a more simplified, streamlined and transparent,
having only a smartphone with internet connection, without direct physical contact or
by telephone, and the company, the same just need to have a computer with internet
access that through a modern, streamlined website, enable control and management of
their applications, including aid decision making, such as which customer preferences
and can thus focus on your preferences .

Keywords:
Android Application; Web Portal; ASP.NET MVC3.
SUMRIO

1 INTRODUO ................................................................................................................ 13
1.1 Apresentao ................................................................................................................... 13
1.2 Descrio do problema................................................................................................... 14
1.3 Justificativa ...................................................................................................................... 14
1.4 Objetivo Geral ................................................................................................................. 15
1.5 Objetivos especficos...................................................................................................... 16
1.6 Metodologia..................................................................................................................... 16
1.7 Cronograma ..................................................................................................................... 17
2 ANDROID E PEDIDOS DE LANCHES NO BRASIL ........................................... 18
2.1 Preferncias dos Brasileiros .......................................................................................... 18
2.2 Crescimento nas redes de Fast-Foods.......................................................................... 18
2.3 Formas Atuais de Pedidos ............................................................................................. 19
2.3.1 Pedido indo ao Local ....................................................................................................... 19
2.3.2 Pedido via Telefone ......................................................................................................... 20
2.3.3 Pedido via Internet atravs de um Celular ....................................................................... 20
2.4 Gesto dos Pedidos por parte dos Estabelecimentos .................................................. 20
2.4.1 Comanda de Papel ........................................................................................................... 20
2.4.2 Comanda com Carto ...................................................................................................... 21
2.4.3 Comanda em Softwares ................................................................................................... 21
2.4.4 Portal de Gesto e Estatsticas na Web para os administradores das Empresas .............. 21
2.5 Android ............................................................................................................................ 22
2.5.1 Utilizao do Android no Brasil ...................................................................................... 22
2.5.2 Arquitetura Android......................................................................................................... 23
2.6 Vantagens da utilizao de dispositivos mveis ......................................................... 24
2.6.1 Mobilidade ....................................................................................................................... 24
2.6.2 Portabilidade .................................................................................................................... 24
2.7 Concluso......................................................................................................................... 25
3 COMRCIO ELETRNICO E OFERTAS ON-LINE.......................................... 26
3.1 Comrcio eletrnico ....................................................................................................... 26
3.1.1 Crescimento do comrcio eletrnico no mercado Brasileiro ........................................... 26
3.1.2 Vantagens do comrcio eletrnico................................................................................... 27
3.1.3 Segurana......................................................................................................................... 27
3.2 Formas de pagamento utilizadas no comrcio eletrnico .......................................... 28
3.2.1 Dinheiro ........................................................................................................................... 28
3.2.2 Boleto bancrio ................................................................................................................ 29
3.2.3 Carto de crdito / dbito................................................................................................. 29
3.2.4 Paypal / PagSeguro .......................................................................................................... 29
3.3 Cardpio e ofertas online no ramo alimentcio ........................................................... 30
3.3.1 Cardpio online personalizado ........................................................................................ 30
3.3.2 Agendamentos de pedidos on- line ................................................................................... 30
3.3.3 Ofertas e promoes atualizadas em tempo real.............................................................. 31
3.4 Concluso......................................................................................................................... 31
4 MODELAGEM DO SISTEMA .................................................................................... 32
4.1 UML ................................................................................................................................. 32
4.1.1 Processo Unificado UP ................................................................................................ 32
4.1.2 Casos de Uso ................................................................................................................... 33
4.1.3 Levantamento de Requisitos ............................................................................................ 34
4.1.4 Diagrama de Classes ....................................................................................................... 37
4.2 Mdulos ........................................................................................................................... 41
4.2.1 Mdulo Cliente ................................................................................................................ 41
4.2.2 Mdulo Empresarial ........................................................................................................ 52
4.3 Concluso......................................................................................................................... 61
5 IMPLEMENTAO DO SISTEMA .......................................................................... 62
5.1 Tecnologias utilizadas .................................................................................................... 62
5.1.1 Plataforma .NET.............................................................................................................. 62
5.1.2 Plataforma Android SDK ................................................................................................ 62
5.1.3 Padro MVC .................................................................................................................... 64
5.1.4 nHibernate ORM ............................................................................................................. 66
5.1.5 Web Service ..................................................................................................................... 67
5.1.6 XML ................................................................................................................................. 69
5.1.7 JSON ................................................................................................................................ 70
5.2 Ferramentas utilizadas.................................................................................................... 70
5.2.1 Visual Studio .................................................................................................................... 70
5.2.2 Eclipse IDE ...................................................................................................................... 71
5.2.3 SQL Server ....................................................................................................................... 72
5.3 Implementao do sistema............................................................................................. 76
5.3.1 Criao de Sesso do nHibernate ................................................................................... 76
5.3.2 Serializao e Deserializao Json ................................................................................. 77
5.3.3 Enviar E-Mail .................................................................................................................. 78
5.3.4 Criar classe de Mapeamento ........................................................................................... 80
5.3.5 Manipular Dados na Base de Dados ............................................................................... 81
5.3.6 Controle de Login MemberShip.................................................................................... 83
5.3.7 Auto Mapeamento entre Objetos ..................................................................................... 85
5.3.8 Componente Grfico Telerik Grid ................................................................................... 85
5.3.9 Autenticao de Credncias de Usurio ......................................................................... 87
5.3.10 Validao de Informaes do Sistema........................................................................... 88
5.3.11 Busca de Lanches de Acordo com determinada Empresa ............................................. 90
5.3.12 Validao de Informaes do Sistema........................................................................... 92
5.3.13 Busca de Localizao do usurio (cliente) via Cep ...................................................... 93
5.3.14 Busca de Localizao do usurio (cliente) via Gps ...................................................... 95
5.3.15 Carregamento e Envio de Pedido de Lanche ................................................................ 96
5.4 Apresentao do sistema ................................................................................................ 98
5.4.1 Portal Web para Gesto e Monitoramento ..................................................................... 98
5.4.2 Prottipo do aplicativo Android para realizao dos pedidos ..................................... 104
5.5 Concluso....................................................................................................................... 109
6 CONSIDERAES FINAIS....................................................................................... 110
REFERENCIAS BIBLIOGRAFICAS ......................................................................... 112
APNDICES ...................................................................................................................... 118
13

1 INTRODUO

1.1 Apresentao

Nos ltimos anos o crescimento de empreendimentos como restaurantes, bares,


lanchonetes e outros estabelecimentos de produo de alimentos tem sido maior que a
capacidade de atendimento da Agncia Nacional de Vigilncia Sanitria (Anvisa) e de
instituies que qualificam esse tipo de atividade (AGNCIA SEBRAE, 2008).
Com o aumento do nmero de estabelecimentos, aumenta o nmero de opes e
possibilidades de escolha do cliente de acordo com sua vontade no momento, mesmo no
tendo muitas formas para realizao de seus pedidos (celulares, telefones e computadores),
sendo os celulares, os campees no quesito crescimento atualmente.
Conforme a reportagem publica por G1(2013), de acordo com as estimativas sobre
a penetrao do servio de telefonia mvel no planeta, at o fim de 2013, o mundo ter quase
sete bilhes de linhas ativas. Isso representa praticamente um celular por pessoa, mesmo que
a taxa utilizao seja muito maior em determinados locais e menor em outros.
O nmero de usurios domsticos com computador no Brasil ultrapassa 99
milhes e o nmero de usurio com celulares chega a incrvel marca de 87% presente dos
lares brasileiros, perdendo apenas para a televiso (AGNCIA BRASIL, 2012).
A proposta deste trabalho de concluso de curso o desenvolvimento de um
sistema de gesto de pedidos de lanches, capaz de aproximar o cliente do estabelecimento,
evitando toda a burocracia do negcio, atravs de um prtico e completo software, capaz de
oferecer ofertas aos clientes e diferentes formas de pagamento.
O desenvolvimento deste trabalho comear atravs de um estudo sobre os
problemas e necessidades encontradas na rea alimentcia, aps isso, ser realizada a criao
dos casos de uso e modelagem, aps o termino dos mesmo ser iniciado o desenvolvimento
das atividades, liberando para os testes a procura de possveis falhas e com a concluso das
14

mesmas, iniciando a implantao nos estabelecimentos.

1.2 Descrio do problema

Atualmente, ainda existe dificuldade para o usurio (cliente) fazer pedidos de


lanches em empresas (estabelecimentos) alimentcios, h tempo de espera, linhas ocupadas,
trnsito e incmodo, devido ao crescimento muito alto do nmero de pedidos muito acima
aos nmeros de novas empresas que prestam servio desta natureza.
Alm da problemtica da realizao dos pedidos, h tambm da falta de
conhecimento por parte da empresa (estabelecimento) sobre os hbitos e preferncias do
usurio (cliente), tais como quais os sabores de lanches mais pedidos, quais as preferncias
de cada cliente sobre determinado tipo de lanche, alm de quais os lanches e caractersticas
que mais agradam ao pblico.

1.3 Justificativa

A tecnologia evolui diariamente a ndices incrveis, porm, as empresas e pessoas


no conseguem acompanhar ou nem mesmo se interessam em evoluir e ficam estagnados
num padro global, abaixo do que a tecnologia permite.
Segundo SHOPPER EXPERIENCE (2011), foi realizada uma pesquisa sobre a
opinio sobre as empresas de fast-food no Brasil onde foi conduzida com 5.815 pessoas
entre 18 e 55 anos em todo o pas revela os hbitos de consumo e preferncias dos clientes
de alimentao rpida. O estudo mostra que a preferncia pelo fast-food em detrimento do
restaurante tradicional se d, para 74% dos entrevistados, pela convenincia, rapidez e
agilidade na refeio.
De acordo com ECOMMERCE NEWS (2011), 84% dos brasileiros entrevistados
acessam a sua web mvel diariamente, valor ligeiramente superior aos 82% verificados no
Reino Unido. O grande nvel de utilizao da web e comrcio mvel andam juntos com a
reduo no uso de internet de linhas fixas: 41% dos brasileiros entrevistados e 34% dos
britnicos acessam hoje seus computadores pessoais com menor frequncia do que h 18
meses.
Esta pesquisa mundial demonstra claramente que os consumidores em todo o
15

mundo esto adotando o dispositivo mvel como um ponto de acesso chave para acessar
contedos e satisfazer as suas necessidades do comrcio, afirmou BUD (2012), presidente
global da MEF. Ela tambm ilustra que o telefone mvel uma plataforma essencial para
empresas que desejam satisfazer as demandas dos consumidores e faturar com a venda de
seus bens, servios e produtos digitais.
Baseado nas pesquisas acima descritas e chega-se concluso que uma empresa
que oferea maior agilidade e qualidade em seus servios abranger uma maior fatia do
mercado deixando seus concorrentes para trs.
SILVINO (2012), presidente da Liquigs Distribuidora, destacou o seguinte:
Proximidade a palavra-chave para conquistar a preferncia dos clientes e depois poder
fideliz-los.
Para ter uma maior proximidade entre o cliente e as empresas alimentcias,
necessrio desenvolver um sistema capaz de englobar boa parte das empresas, atravs de
filtros, trazer os estabelecimentos dentro dos filtros, com seus cardpios e lanches mais
solicitados, possibilitando efetuar pedidos e pagamentos atravs de apenas um dispositivo
mvel (celular, tablet) ou portal web, sem precisar do contato fsico ou telefnico, como
acontece atualmente.
Segundo a empresa Agncia Estado As vendas on-line feitas por meio de
aparelhos mveis (mobile commerce, ou m-commerce) devem apresentar um crescimento
expressivo no Brasil nos prximos meses. A estimativa que esse segmento movimente
cerca de 2 bilhes de reais em 2013 (no primeiro semestre de 2012, foram 1 32 milhes de
reais). As grandes varejistas j comeam a se adaptar a essa migrao de plataforma..
Um sistema desta forma facilitaria em agilidade e qualidade de servio,
possibilitando planejamento, histrico e relatrios por parte da empresa, trazendo conforto
ao cliente final para realizao de seus pedidos e diminuindo o fluxo de carros e poluio
nos grandes polos.

1.4 Objetivo Geral

O objetivo geral deste trabalho consiste no desenvolvimento de um prottipo de


um aplicativo mvel para realizao do pedido por parte do cliente e tambm um portal Web
para a anlise, gesto, auxlio na tomada de deciso e monitoramento dos pedidos.
16

1.5 Objetivos especficos

Os objetivos especficos referentes a este trabalho esto descritos a seguir:


a) Desenvolver um prottipo que possibilite a realizao de pedidos de
lanches por parte dos clientes.
b) Permitir a empresa o monitoramento dos pedidos realizados pelo cliente
atravs do aplicativo mvel.
c) Possibilitar o armazenamento e divulgao dos cardpios e informaes das
empresas expostas.

1.6 Metodologia

A primeira etapa deste trabalho ser iniciada atravs de estudos sobre a rea de
estabelecimentos alimentcios, como seus problemas e necessidades, alm de estudos sobre
a tecnologia jQuery, para futuro desenvolvimento de um Portal Web mais dinmico.
Aps isso ser realizado estudos de caso, criao da modelagem do sistema
utilizando a linguagem UML.
A prxima etapa ser a implementao de um portal para cadastro dos produtos,
central de pedidos com grficos e relatrios por parte do estabelecimento contratado.
Em seguida ser implementado um WebService para integrao dos dados do
portal com um aplicativo mvel. Posteriormente ser implementado uma aplicao mvel
com a plataforma Android, para o usurio realizar pedidos via celular/tablet.
Para a implementao deste software ser utilizada a ferramenta Microsoft Visual
Studio 2010, com a linguagem C#, no padro MVC utilizando ASP.NET e o Banco de Dados
o Microsoft SQL Server 2008 alm do Eclipse e SQLite Mobile.
Ao final de cada etapa, o sistema ser disponibilizado para os testes necessrios,
tanto de carga, quanto de funcionalidades, a fim de identificar possveis erros que devero
ser corrigidos.
17

1.7 Cronograma

QUADRO 1 - Cronograma do TCC


2012 2013
Tarefas Ago. Fev.
Abr. Mai. Jun.
Jul.
Set. Out. Nov. Dez.
Nov. Mar. Ago.
PROJETO DO TCC XX
Etapa 1: XX
- Elaborao Pr-Projeto XX
Etapa 2:
-Defesa Pr-Projeto XX
Etapa 3:
- Estudo sobre a rea de estabelecimentos
XX
alimentcios.
- Estudo sobre tecnologias web em geral XX XX
- Elaborar referencial terico do relatrio XX XX
- Estudo de casos de uso XX XX
- Criao de documentao XX XX
- Modelagem do sistema utilizando a linguagem
XX XX
UML.
BANCA DE TCC I XX
Etapa 4:
- Reviso literria tecnologias web XX XX XX XX
- Desenvolvimento Portal Web XX XX XX XX
- Desenvolvimento Web Service XX
- Desenvolvimento Aplicao Android XX XX
ENTREGA DO RELATRIO DE TCC I
PR-BANCA DE TCC II XX
Etapa 5:
- Finalizao do desenvolvimento XX XX XX
- Reviso Literria XX XX XX
- Testes XX XX
- Elaborao do Artigo XX
ENTREGA DO RELATRIO DE TCC II XX
APRESENTAO EM BANCA XX
CORREES E ENTREGA DA VERSO
XX
FINAL DO TCC
18

2 ANDROID E PEDIDOS DE LANCHES NO BRASIL

Neste captulo sero mostrados informaes sobre a plataforma Android e sobre


os pedidos de lanches no Brasil, tais como estatsticas e conceitos sobre os mesmos.

2.1 Preferncias dos Brasileiros

Desenvolvida pela Shopper Experience, com a pesquisa Fast-Food no Brasil, ao


questionar quais so os trs fatores mais importantes para a escolha de um fast-food, a
pesquisa Fast-Food no Brasil aponta que 56% dos consumidores costumam creditar como
fator mais importante para a escolha o sabor da comida; e 27% consideram mais importante
a higiene do local. Na hora de escolher o restaurante fast-food, o fator preo pesa pouco:
apenas 3% dos entrevistados consideraram esse quesito importante. Fila, visual da loja e
apresentao dos funcionrios tambm no pesam muito: apenas 1% dos entrevistados
considerou cada um desses tpicos importante no momento da escolha, segundo a pesquisa
(ABRASEL, 2011).
Do que voc mais gosta na rede de fast-food? De acordo com a coordenadora da
pesquisa, 65% dos entrevistados responderam que o sabor o fator determinante para o
consumo; 12% frequentam pela variedade de pratos/sanduches; e 10% pela rapidez.
Questes como apresentao do alimento, preo, higiene do local e atendimento tm,
respectivamente, os ndices de 4%, 4%, 4% e 1% dos entrevistados (ABRASEL, 2011).

2.2 Crescimento nas redes de Fast-Foods

As franquias de redes de Fast-Foods aumentaram sua participao no mercado


brasileiro em 2011 e passaram a representar 8% do Produto Interno Bruto Nacional (PIB)
o faturamento foi de 286 bilhes de reais, segundo pesquisa realizada consultoria Rizzo
Franchise (LVARES, 2012). Conforme a Figura 1, o crescimento do faturamento anual
dos fast-foods anual vem crescendo desenfreadamente.
19

FIGURA 1 - Crescimento do faturamento anual dos fast-foods

Fonte: (FRANCHISE, 2012)

Por esta linha de raciocnio, (CARNEIRO, 2012), comenta:

No ano passado, segundo dados da Abia (Associao Brasileira da Indstria de


Alimentos), o setor de servios de alimentao faturou R$ 235 bilhes, crescimento
de 16% em relao a 2010. Na ltima dcada, os servios de alimentao cresceram
em mdia 15% ao ano no Brasil, e o varejo de produtos alimentcios, 12%.

De acordo com o levantamento da Associao Brasileira de Franchising (ABF),


cada brasileiro deixou 0,51 centavos nos caixas das franquias por hora em 2011. A pesquisa
destaca, ainda, a gerao de 266 mil novos empregos diretos um crescimento de 16% na
comparao com 2010 e o emprego de cerca de dois milhes de pessoas. Em 2011, 19 mil
novas unidades de franquias foram abertas o que corresponde a 53 franquias por dia ou
dois por hora e 284 empresas entraram para o Franchising (LVARES, 2012).

2.3 Formas Atuais de Pedidos

2.3.1 Pedido indo ao Local

A mais convencional e primitiva forma de pedido de lanches indo ao local e


esperando o pedido ficar pronto, para comer no local ou levar para comer em outro lugar. A
desvantagem desta forma que acaba causando transtornos, exigindo transporte, podendo
haver filas e congestionamentos nas cidades grandes, ocasionando atraso e inconvenientes
aos clientes.
20

2.3.2 Pedido via Telefone

Esta forma a que mais tem fora no mercado atualmente, pois apenas com o
auxlio de um telefone fixo, ou mesmo um telefone celular. O cliente atravs do servio
telefnico liga para o estabelecimento e efetua seu pedido, porm, em muitas vezes encontra-
se linhas telefnicas ocupadas por parte dos estabelecimentos, devido grande demanda.
Em outras situaes, acabam sendo enviados pedidos de forma errnea, ou entregues em
lugares errados, devido falha de comunicao telefnica, que pode se encontrar com
chiados e rudos, trazendo prejuzos para o estabelecimento e descontentamento por parte
do cliente.

2.3.3 Pedido via Internet atravs de um Celular

Com certeza a forma de realizao de pedidos mais tecnolgica e qualificada, pois


com apenas o auxlio de um celular (smartphone), o cliente pode efetuar a realizao de
pedidos, de forma mais rpida, gil e segura. Atravs do celular o cliente tem acesso
visualizao completa do cardpio do estabelecimento e informaes privilegiadas, tais
como: os produtos mais pedidos e promoes atuais. Alm, de driblar as filas,
congestionamentos e linhas telefnicas ocupadas, que muitas vezes lhe causam um grande
inconveniente. Desta forma, com a utilizao desta forma, o cliente estar evitando falhas
nos pedidos e falhas de entrega de pedido. Trazendo conforto e qualidade de servio e
atendimento do estabelecimento para o cliente.

2.4 Gesto dos Pedidos por parte dos Estabelecimentos

2.4.1 Comanda de Papel

a forma mais simples e antiga de controle do que foi consumido pelo cliente.
Podendo a mesma, ficar com o cliente ou o caixa do estabelecimento, variando de um para
o outro.

2.4.1.1 Comanda em Posse do Cliente

Com a comanda ficando em posse do cliente, a chance de acabar gerando algum


21

constrangimento em caso de perda da comanda bem alta. De acordo com a Lei Federal n.
8.079, de 11 de setembro de 1990, do Cdigo de Defesa do Consumidor a cobrana da taxa
sobre a perda da comanda um abuso e considerada ilegal.

2.4.1.2 Comanda em Posse do Caixa do Estabelecimento

No caso de a comanda ficar com o caixa do estabelecimento, a chance de perda


minimizado, porm, desta forma o cliente depender de lembrar-se do valor no momento de
efetuar o pagamento, sendo que nem todos os estabelecimentos inserem na nota o valor total
consumido, mesmo isto sendo ilegal pelo Cdigo de Defesa do Consumidor.

2.4.2 Comanda com Carto

O modelo de comanda com carto muito comum em bares, restaurantes,


lanchonetes e boates. Cada item consumido pelo cliente marcado na comanda por parte do
estabelecimento para a devida cobrana no momento de sada do cliente.
Este modelo possui a vantagem de agilidade no atendimento, porm, em muitos
casos, acabam-se perdendo a comanda, causando constrangimento por parte do cliente, com
a empresa.

2.4.3 Comanda em Softwares

o modelo de comanda mais utilizado atualmente no mercado Brasileiro, a cada


item consumido pelo cliente o mesmo inserido no sistema pelo atendente do
estabelecimento, sendo devidamente cobrado no momento de sada, sem a necessidade de o
cliente se preocupar em ficar em posse da comanda, como ocorre na comanda com carto.
A grande desvantagem deste modelo a falta de transparncia a comanda durante
o atendimento, pois o cliente s ter acesso a comanda no momento do pagamento, pois a
comanda virtual fica em posse do estabelecimento.

2.4.4 Portal de Gesto e Estatsticas na Web para os administradores das Empresas

O modelo de portal de gesto e estatsticas na web a forma mais inovadora e


tecnolgica que existe no mercado brasileiro, devido sua agilidade, qualidade e
transparncia do servio sendo disponibilizado.
22

2.4.4.1 Central de Pedidos Online

O mdulo de central de pedidos online algo muito importante a ser destacado,


sendo utilizado geralmente por grandes empresas. Com este modelo o estabelecimento
recebe seus pedidos efetuados via celular, diretamente em sua plataforma online, onde
estaro todas as informaes inerentes aos pedidos, tais como dos produtos desejados e
informaes para entrega j detalhadas e validadas.
Com a utilizao deste modelo, empresas que possuem filiais podem acompanhar
avaliar e analisar a evoluo de suas filiais em tempo real.

2.4.4.2 Relatrios

No modelo de portal de gesto Web, deve ser destacado o mdulo de relatrios,


que por muitas vezes, fazem uma grande diferena para os estabelecimentos, por possuir
informaes detalhadas e minuciosas, de quais os produtos mais pedidos, quais as
promoes mais aguardadas, podendo, atravs disso realizar planos de marketing e
promoes para atrair o cliente, exatamente nos pontos preferidos do cliente.

2.5 Android

Segundo Lecheta (2010), o Android uma plataforma de desenvolvimento para


aplicativos mveis como smartphones e contm um sistema operacional baseado em Linux,
uma interface visual rica, GPS, diversas aplicaes j instaladas e ainda um ambiente de
desenvolvimento bastante poderoso, inovador e flexvel.

2.5.1 Utilizao do Android no Brasil

A empresa Kantar Worldpanel ComTech divulgou os dados sobre a utilizao de


smartphones no pas e apontou que a base de usurios brasileiros usando a plataforma do
Google j corresponde a 46.8% do mercado. (BARROS, 2012)
A taxa de aquisio de dispositivos iOS e Android superou a de qualquer
tecnologia de consumo da histria, segundo estudo realizado pela Flurry. Comparado s
recentes tecnologias em uso, as chamadas tecnologias smart foram adotadas pelos usurios
10 vezes mais rpido que os computadores, em 1980,2 vezes mais que a Internet, durante a
23

bolha, na dcada de 90, e 3 vezes mais rpido que a adoo recente das redes sociais.
No geral, a Flurry estima que havia mais de 640 milhes de dispositivos iOS e
Android em uso durante o ms de julho de 2012. Ainda segundo a anlise, a adoo dos
dispositivos mveis cresce rapidamente para alm dos mercados iniciais, como Amrica do
Norte e Europa Ocidental. Ou seja, com as tecnologias smart, foi criado "um verdadeiro
mercado mundial", segundo disse Peter Farago, no blog da empresa. (IDGNOW, 2012)

2.5.2 Arquitetura Android

A arquitetura do sistema operacional Android, como mostra a Figura 2, dividida


em camadas, aonde cada parte responsvel por gerenciar os seus respectivos processos
(LECHETA, 2010).
FIGURA 2 - Camadas da arquitetura Android

Fonte: (TISELVAGEM, 2012)

As quatro camadas demonstradas na Figura 2 so:


Linux Kernel: O Google usou a verso 2.6 do Linux para construir o kernel
do Android, o que inclui os programas de gerenciamento de memria, as
configuraes de segurana, o software de gerenciamento de energia e
vrios drivers de hardware (STRICKLAND, 2009).
Bibliotecas e Servios: Nesta camada encontram-se as principais
bibliotecas utilizadas pelo Android, dentre elas a OpenGl/ES para trabalhar
24

com grficos e a SQLite que permite manipular a base de dados. Encontra-


se tambm a Dalvik, que uma JVM (Java Virtual Machine) para rodar o
contedo Java. A maior parte destas bibliotecas foi desenvolvida em C++
(PRADO, 2011).
Frameworks: Desenvolvida basicamente por completo em Java, esta
camada responsvel pela interface com as aplicaes Android. Ela prov
um conjunto de bibliotecas para acessar os diversos recursos do dispositivo
como interface grfica, telefonia, servio de localizao (GPS), banco de
dados persistente, armazenamento no carto SD, 20 etc. Fornece blocos de
alto nvel de construo utilizados para criao de aplicaes. O framework
vem pr-instalado com o Android (MOBILEIN, 2010).
Aplicaes: Nesta camada que ficam as aplicaes (desenvolvidas em
Java) para o Android. E um dos grandes segredos do sucesso da
plataforma, j que possui mais de 250.000 aplicaes no Android Market,
e continua crescendo cada dia que passa (PRADO, 2011).

2.6 Vantagens da utilizao de dispositivos mveis

2.6.1 Mobilidade

Conforme o Dicionrio Online de Portugus DICIO (2013), a palavra mobilidade


pode ser definida da seguinte forma, facilidade para se mover, para ser movido. Esta
definio genrica mostra que tudo que se move fisicamente no espao por si s ou por
interveno de algo ou de algum est exercendo mobilidade.
Mobilidade, segundo (Lee et al, 2005), so as capacidades de poder deslocar-se
facilmente. Na viso computacional, a mobilidade pode ser atribuda ao uso de dispositivos
mveis funcionais e com capacidade de conectar-se, obter dados e fornec-los a outros
usurios, aplicaes e sistemas.
Seguindo esta mesma linha de raciocnio, MENDONA (2013) afirma que a
vantagem mais trivial da mobilidade , logicamente, a possibilidade de acessar dados em
qualquer lugar e a qualquer momento.

2.6.2 Portabilidade
25

A portabilidade de um programa de computador a sua capacidade de ser


compilado ou executado em diferentes arquiteturas (seja de hardware ou de software). O
termo pode ser usado tambm para se referir a reescrita de um cdigo fonte para outra
linguagem de computador.
Segundo FROZZA (2013), a portabilidade definida como a capacidade de ser
facilmente transportvel. Hoje em dia, para serem considerados portteis, os dispositivos
mveis em geral tm que ser transportados facilmente na mo.
A mobilidade atualmente uma necessidade mundial, sua evoluo ocorreu de
forma muito acelerada devido ao acesso a dados e informaes sem restries de horrio e
lugar, sendo este o grande atrativo da tecnologia.

2.7 Concluso

Nesse captulo foi apresentado referenciais tericos sobre as redes de fast-food no


Brasil, contemplando informaes de sua histria e desenvolvimento, alm, de citar quais as
preferncias dos brasileiros em detrimento das redes de fast-food.
Foram mostrados quais as atuais formas de realizao e gesto de pedidos
alimentcios atuais e futuros, apresentando o crescimento das redes de fast-foods, alm de
dados e estatsticas da utilizao da plataforma Android e da vantagem da utilizao dos
dispositivos mveis em geral.
Pode-se concluir de acordo com as informaes levantadas neste captulo, o
mercado do ramo alimentcio uma rea em bastante crescimento, com alta necessidade de
inovao nas atuais formas de trabalho, possuindo um grande potencial econmico no s
no mercado brasileiro, como no mercado mundial.
26

3 COMRCIO ELETRNICO E OFERTAS ON-LINE

Neste captulo sero mostradas informaes sobre o mercado do comrcio


eletrnico, chamado tambm de e-commerce.
Alm disto, ser visto quais as formas atuais de pagamento eletrnico, alm, de
formas e tipos de cardpios online.

3.1 Comrcio eletrnico

Segundo LOGISTA ONLINE (2013), o comrcio eletrnico ou e-commerce a


compra e venda de mercadorias ou servios por meio da Internet, onde as chamadas Lojas
Virtuais oferecem seus produtos e formas de pagamento online. O comrcio eletrnico um
meio facilitador dos negcios, tornando o processo de venda fcil, seguro, rpido e
transparente, reduzindo os custos das empresas que atuam neste segmento e estimulando a
competitividade.

3.1.1 Crescimento do comrcio eletrnico no mercado Brasileiro

As vendas no comrcio eletrnico brasileiro devem atingir R$ 28 bilhes neste


ano, quando o segmento pode superar 50 milhes de consumidores, conforme projees
traadas pela empresa especializada em dados do setor, e-bit (G1, 2013).
Para Lus Felipe Cota, cofundador e diretor de Marketing da Goomark, agncia de
comunicao e marketing para pequenas e mdias empresas (PMEs), este um grande
momento para as empresas investirem nas vendas pela internet. O mercado est crescendo,
j que a comodidade e segurana das compras feitas pela internet atraem um pblico cada
vez maior. Para os empresrios, a mudana de comportamento do consumidor representa
uma oportunidade de fazer os negcios alavancarem, avalia Cota (ADRENALINE, 2013).
Em 2012, foi realizado ao longo do ano 66,7 milhes de pedidos, um volume
24,2% maior do que o registrado no ano anterior. Conforme a e-bit, 42,2 milhes de pessoas
j fizeram, ao menos, uma compra on-line no Brasil. O tquete mdio em 2012 fechou em
27

R$ 342 (G1, 2013).


O nmero de consumidores virtuais tambm deve saltar neste ano, superando 50
milhes de pessoas, segundo o diretor geral da e-bit, Pedro Guasti. Atualmente, 42,2 milhes
de consumidores j realizaram uma compra online no Brasil (G1, 2013).

3.1.2 Vantagens do comrcio eletrnico

De acordo com FAST COMPRAS(2011), Para suprir as demandas de servios


logsticos nas operaes desse novo mercado, a logstica para o e-commerce tenta minimizar
as dificuldades para se tornar mais flexvel e alinhada ao planejamento da empresa, criando
assim um ambiente propicio para a criao e desenvolvimento de vantagens competitivas.
O comrcio eletrnico permite aos clientes e empresas maior produtividade nas
operaes, reduo de custos, alm de maior confiabilidade e qualidade nos servios
prestados, atravs de um seguro sistema web on-line 24 horas por dia, proporcionando alta
rentabilidade e conforto para as empresas e facilidade e economia por parte dos clientes.

O e-commerce traz grandes benefcios para os clientes, para os consumidores e


tambm para os fornecedores. Os grandes ganhos para os consumidores
proporcionar compras mais eficientes, oferecendo um maior leque de escolhas,
preos mais baixos e um alto nvel de servios personalizados. Tambm oferece
novos tipos de produtos e servios com novas maneiras de adquiri-los (CASTRO,
2011).

Outro grande diferencial do e-commerce que possvel o sistema da empresa


interagir de forma individual com cada cliente, possibilitando assim um marketing
personalizado e obviamente aumentar as vendas com esse tipo de atendimento.
Sobre os principais benefcios disponibilizados para as empresas, segundo Castro
(2011), so custos mais baixos para alcanar um pblico maior, aberto 24 horas por dia,
novos mtodos de distribuio, contato direto com o cliente, mais informaes sobre os
consumidores e marketing personalizado.

3.1.3 Segurana

Um dos assuntos mais importantes no comrcio eletrnico a segurana, a internet


mvel possui as mesmas caractersticas que a Internet como um todo.
Mas pode-se dizer que o usurio (cliente), necessita de cuidados bsicos j
conhecidos mundialmente, tais como fornecimento de informaes pessoais em apenas
28

pginas confiveis.
As empresas atualmente focam muito em segurana, utilizando-se da criptografia
nos dados trafegados na pgina, dificultando a atividade de hackers com a inteno de
capturar informaes sigilosas dos usurios.

3.1.3.1 Criptografia

Segundo Alecrim (2009), O termo criptografia surgiu da fuso das palavras gregas
"krypts" e "grphein", que significam ocultos e "escrever", respectivamente. Trata-se de
um conjunto de conceitos e tcnicas que visa codificar uma informao de forma que
somente o emissor e o receptor possam acess-la, evitando que um intruso consiga
interpret-la. Para isso, uma srie de tcnicas usada e muitas outras surgem com o passar
do tempo.
Na computao, a tcnica usada so a de chaves, as chamadas CHAVES
CRIPTOGRFICAS, trata-se de um conjunto de bits baseado em um algoritmo capaz de
codificar e de decodificar informaes. Se o receptor da mensagem usar uma chave diferente
e incompatvel com a do emissor ela no conseguira ter a informao. (ROMAGNOLO,
2013)

3.2 Formas de pagamento utilizadas no comrcio eletrnico

3.2.1 Dinheiro

A forma mais primitiva, porm ainda muito utilizada, desta maneira o cliente, no
momento da recepo de seu produto, realiza o pagamento em dinheiro vivo empresa
prestadora do servio.
Apesar do crescimento dos cartes, o dinheiro continua sendo o principal meio de
pagamento para transaes de pequeno valor. Nas compras de valores entre R$ 20 a R$ 50,
o dinheiro responsvel por 61% dos pagamentos, ante 39% dos cartes. Entre R$ 10 e R$
20, o dinheiro chega a 83% e abaixo de R$ 10, a 91%, segundo a quarta edio da pesquisa
nacional de uso de meios eletrnicos, realizada pelo Instituto Datafolha a pedido da Abecs
(Associao Brasileira das Empresas de Cartes e Servios) (JNIOR, 2011).
29

3.2.2 Boleto bancrio

Desta forma o cliente imprime boleto ao finalizar a compra e paga no banco de sua
preferncia ou por meio do Internet Banking.
O boleto bancrio ainda um meio de pagamento utilizado por muitos no e-
commerce, uma vez que nem todos os compradores possuem carto de crdito e alguns ainda
tm receio de utilizar o carto na Internet.
Cerca de 12% dos clientes, optam por esta forma de pagamento, sendo minoria
dentre as formas disponveis.

3.2.3 Carto de crdito / dbito

Segundo a empresa de cartes de crdito, VISA (2013), comenta que o


crescimento no uso dos produtos de pagamento eletrnico como os cartes de crdito e
dbito acrescentou US$ 51,3 bilhes ao Produto Interno Bruto (PIB) do Brasil.
Ao optar por esse meio de pagamento no carrinho de compras do e-commerce, o
cliente digita o nmero e cdigo de segurana do carto, por meio de uma conexo segura,
diretamente no sistema da operadora. Com isso, aps a aprovao do crdito a compra est
finalizada.

3.2.4 Paypal / PagSeguro

Segundo Sardinha (2012), o PayPal um servio de pagamento online. Voc se


cadastra para ter uma conta virtual e com ela voc pode fazer compras em qualquer parte do
mundo, pois ele internacional. claro que o site em que voc deseja comprar deve ser
conveniado com o PayPal.
Aps isso, Sardinha (2012) complementa que nesse cadastro voc vincula sua
conta bancria e/ou carto de crdito(s). Ento o site envia a cobrana para o seu
banco/carto (o que voc escolher) e paga o vendedor. Ou seja, o site onde a compra foi
efetuada no ter acesso a qualquer informao sua e voc no precisar fazer um cadastro
no mesmo.
Vale ressaltar que o PagSeguro possui a mesma idia de negcio, exatamente nos
mesmos moldes, a nica diferena entre eles, o PagSeguro pertencer a empresa brasileira
UOL e o PayPal americano, mais especificamente da Califrnia.
30

O Pay-Pal / PagSeguro, transfere o valor para a conta do lojista virtual. O clie nte
pode utilizar a sua conta tanto para pagar quanto para receber. A vantagem deste sistema
que relativamente barato e utilizado no mundo todo. Uma desvantagem que representa
uma etapa a mais para os clientes no processo de compra.

3.3 Cardpio e ofertas online no ramo alimentcio

3.3.1 Cardpio online personalizado

Em empresas do ramo alimentcio, um cardpio online personalizado com certeza


a vontade de todas, sendo um cardpio com as listagens de todos seus produtos disponveis
com um design limpo, bonito e personalizvel, sendo assim, possvel a realizao de pedidos
sem a necessidade do contato pessoal do garom ou o contato telefnico do atendente, que
na maioria das vezes no possvel.
Atualmente no existem muitos sites e empresas que disponibilizam este tipo de
servio, pode-se citar a empresa PedidosJ.com, pioneira no ramo, sendo iniciada em 2013
j possui em seu sistema mais de 1800 cardpios online cadastrados e milhares de usurios
que frequentemente visualizam a pgina a procura de novas escolhas e opes de produtos.

3.3.2 Agendamentos de pedidos on-line

Outra modalidade, mas, no menos importante a rea de agendamento de pedidos


de forma online e instantnea no ramo alimentcio, atravs desta modalidade de servio, a
empresa que disponibiliza este servio atravs de um portal web ou aplicao mvel, o
cardpio online disponibilizado pela empresa contratante, com isso o usurio (cliente),
pode atravs de sua rede Wireless ou 3G, realizar a escolha de seu pedido e pedir diretamente
seu pedido, sendo assim, desnecessrio o contato pessoal ou telefnico.
Com o passar dos anos, este servio deve tomar comum no ramo alimentcio e
possuir inmeras funcionalidades, pois a cada dia, as pessoas em geral brigam contra o
tempo para realizao de suas atividades, portanto, com um sistema nestas caractersticas,
facilitaria e muito a vida das pessoas, trazendo agilidade e conforto no servio.
31

3.3.3 Ofertas e promoes atualizadas em tempo real

Conforme j descrito anteriormente, as empresas e os clientes buscam conforto,


agilidade e qualidade nos servios, seja por eles, disponibilizados ou usufrudos.
Os brasileiros em geral, por sua maioria possuir uma condio econmica no
muito favorvel, esperam muitas vezes, por dia, meses, para realizar um desejo pessoal, ou
para ter a possibilidade de presentear algum, com isso, ficam a todo o momento a procura
de promoes para facilitao da realizao de suas vontades.
O ideal para esta fatia do mercado seria, conforme comentado anteriormente, um
portal web ou uma aplicao mvel capaz de num nico sistema, disponibilizar em tempo
real, quais so as promoes e ofertas e diversas empresas ao mesmo tempo, sem a
necessidade da procura incessante vivida pelas pessoas atualmente, sendo assim, no mesmo
momento j sendo possvel a escolha e realizao do pedido.

3.4 Concluso

Neste captulo foi explanada a histria, crescimento, caractersticas e vantagens do


comrcio eletrnico, citando inclusive a questo da segurana da informao dos dados
trafegados no mesmo.
Foram apresentadas e descritas as principais formas de pagamentos utilizadas
atualmente no mercado de comrcio eletrnico mundial, alm de ser mostrado formas
inovadoras de cardpios e ofertas online no ramo alimentcio, tais como as ofertas e
promoes atualizadas em tempo real, centralizadas num nico aplicativo.
Com bases das informaes levantadas, pode-se concluir que o comrcio
eletrnico, j uma alternativa bastante segura e madura, capaz de possibilitar a
confiabilidade e segurana andarem lado a lado dos pagamentos realizados fisicamente,
alm de um grande potencial de mercado disponvel para incluso no ramo alimentcio.
32

4 MODELAGEM DO SISTEMA

Neste captulo ser abordada a modelagem do sistema utilizando a linguagem


UML, descrevendo seu conceito, viso geral, definio dos requisitos funcionais e no
funcionais e o dos casos de uso juntamente com seus diagramas de atividade, alm da
expanso destes casos de uso.

4.1 UML

Segundo BOOCHET (2006), a UML uma linguagem padro para a elaborao


da estrutura de projetos de software, onde poder ser empregada para a visualizao, a
especificao, a construo e a documentao de artefatos que faam uso de sistemas
complexos de software.
De acordo WAZLAWICK (2011), UML significa Unified Modeling Language
(Linguagem de Modelagem Unificada), com isso pode ser dito que uma linguagem que
descreve coisas.
Conforme WAZLAWICK (2011), a UML est dividida em trs diagramas:
a) Diagramas estruturais, sendo posto como diagramas de pacotes, classes, objetos,
estrutura composta, componentes e distribuio.
b) Diagramas comportamentais, compreendendo os diagramas de casos de uso, atividades
e mquina de estados.
c) Diagramas de interao, compreendendo os diagramas de comunicao, sequncia,
tempo e viso geral de integrao.

4.1.1 Processo Unificado UP

Segundo WAZLAWICK (2011), o processo unificado desmistificado em trs


valores:
a) dirigido por casos de uso: quando o planejamento do desenvolvimento feito em
funo dos casos de uso identificados, tratando-se primeiramente os mais complexos.
33

b) centrado na arquitetura: quando o processo de desenvolvimento prioriza a


construo de uma arquitetura de sistema. Essa arquitetura baseia-se na identificao
de uma estrutura de classes, produzida a partir de um modelo conceitual.
c) iterativo e incremental: quando a cada ciclo de trabalho realizado, novas
caractersticas so adicionadas arquitetura do sistema, deixando-a mais completa e
mais prxima do sistema final com o passar do tempo.
O processo unificado dividido em quatro fases: concepo, elaborao,
construo e transio. (WAZLAWICK, 2011).
Concepo a primeira fase do processo unificado, na qual se procurar
levantar as principais caractersticas e compreender o sistema como um
todo.
Elaborao e Construo ocorrem em ciclos iterativos. A Elaborao
onde incorporado a maior parte da anlise e projeto, e a Construo
incorpora a maioria da implementao e testes a serem realizados.
Transio, aps a concluso do sistema, ser implantada substituindo o
sistema atual, seja ela manual ou computadorizada.

4.1.2 Casos de Uso

Segundo WAZLAWICK (2004, p. 44), os casos de uso devem corresponder aos


principais processos de negcio da empresa e possivelmente so associados a vrios
requisitos funcionais.
GUEDES (2005) relata que:

O diagrama de caso de uso por meio de uma linguagem simples, demonstra o


comportamento externo do sistema, procurando apresentar o sistema atravs de
uma perspectiva do usurio, demonstrando as funes e servios oferecidos e quais
usurios podero utilizar cada servio. Este diagrama , dentre todos os diagramas
de UML, o mais abstrato, flexvel e informal, sendo utilizado principalmente no
incio da modelagem do sistema, embora venha a ser consultado e possivelmente
modificado durante todo o processo de engenharia e sirva de base para a
modelagem de outros diagramas.. (GUEDES, 2005)

Um caso de uso bem escrito fcil de ler. O caso de uso contm sentenas em uma
nica forma gramatical um passo de ao simples na qual um ator alcana um resultado
ou transmite informao para outro ator. Aprender a ler casos de uso no deve tomar mais
do que poucos minutos. Aprender a escrever um bom caso de uso difcil. (COCKBURN,
34

2005)
Segundo COCKBURN (2005), os casos de uso so fundamentalmente uma forma
textual, embora possam consistir em fluxogramas ou diagramas de sequncia. Servem como
meio de comunicao entre pessoas que muitas vezes no possuem treinamento especial e,
portanto, texto simples geralmente a melhor escolha.
Os casos de uso com o esteretipo CRUD so casos de uso que, conforme
COCKBURN (2005) representam operaes em ingls Create, Retrieve, Update e Delete
ou Criar, Recuperar, Atualizar e Deletar.

4.1.3 Levantamento de Requisitos

Abaixo sero apresentados os principais requisitos funcionais e no funcionais


deste projeto, nos quais foram analisados os trs mdulos desenvolvidos, tais como: Portal
Web e o Aplicativo Android para Pedidos para administrao do sistema como um todo.

QUADRO 2 - RF 001 Permitir empresas enviar Feedbacks para o


Administrador

RF 001 Permitir empresas enviar feed-back para o Administrador


Descrio:
O sistema dever permitir o envio de feedbacks, enviados pelos os responsveis das
empresas.
Todos os usurios com permisso a central administrativa.
Caso ocorra algum erro, o sistema dever enviar uma mensagem de erro.

QUADRO 3 - RF 002 Validar usurio e senha

RF 002 Validar usurio e senha


Descrio:
O sistema deve validar o usurio e senha de acesso.
O sistema no dever permitir a realizao de pedido por parte do cliente, caso as
credncias sejam invlidas.
O sistema no dever permitir acesso ao sistema algum ao sistema por parte
empresarial e administrador, caso as credncias sejam invlidas.
Caso o usurio e senha sejam invlidos, o sistema dever enviar uma mensagem do
erro.
35

QUADRO 4 - RF 003 Permitir o filtro de informaes

RF 003 Permitir o filtro de informaes


Descrio:
Em atividades em que existam uma grande massa de dados, o sistema deve permitir
a realizao de filtros nas informaes presentes.
O filtro dever ser pr-definido, possibilitando ao usurio apenas manipular apenas
as informaes que sero verificadas nos filtros.
Caso seja informado algum filtro incorreto, o sistema dever apresentar uma
mensagem de erro, informando qual foi a ao ocasionadora.

QUADRO 5 - RF 004 Verificar conexo com o WebService

RF 004 Verificar conexo com o WebService


Descrio:
Na inicializao do sistema, o mesmo dever verificar se existe conexo com o
WebService.
Caso o mesmo esteja indisponvel ou possua informaes invlidas, o sistema dever
informar uma mensagem de erro e fechar a aplicao.

QUADRO 6 - RF 005 Verificar conexo com a Internet

RF 005 Verificar conexo com a Internet


Descrio:
Na inicializao do sistema, o mesmo dever verificar se possui conexo com a
Internet.
Caso o mesmo no possuir, o sistema dever informar uma mensagem de erro e
fechar a aplicao.

QUADRO 7 - RF 006 Validar Cep

RF 006 Validar Cep


Descrio:
O sistema dever validar o Cep, atravs de um WebService externo especialista na
funo.
Caso o Cep seja invlido, o sistema dever enviar uma mensagem de erro e retornar
a etapa de informao do Cep, possibilitando a escolha de outra forma de busca de
endereo.
QUADRO 8 - RF 007 Validar token de acesso do usurio

RF 007 Validar token de acesso do usurio


Descrio:
O sistema dever validar o token de acesso do usurio.
Caso o token de acesso do usurio seja invlido, o sistema dever enviar uma
mensagem do erro e no permitir a realizao de pedidos.
36

QUADRO 9 - RF 008 Processar Informaes de Localizao

RF 008 Processar Informaes de Localizao


Descrio:
Cabe ao dispositivo mvel presente na utilizao do aplicativo, estar com seu GPS
atualizado e em pleno funcionamento.
Caso o smartphone no possuir o recurso de GPS, o aplicativo ao iniciar, dever
desabilitar a opo de busca de endereo via GPS.
Se ocorrer algum erro durante a busca da localizao do dispositivo mvel, o
aplicativo dever apresentar uma mensagem de erro.

QUADRO 10 - RF 009 Aprovar/Cancelar Pedidos

RF 009 Aprovar/Cancelar Pedidos


Descrio:
Para a realizao aprovao ou cancelamento de pedidos, o sistema dever certificar
de o funcionrio da empresa, est com seu login ativo e permisses totais.
Caso ocorra algum erro durante o processo, o sistema dever uma mensagem de erro.

QUADRO 11 - RF 010 Enviar Pedido

RF 010 Enviar Pedido


Descrio:
Para realizar o envio do pedido, o sistema dever certificar-se de que todas as etapas
prvias j foram concludas.
Caso ocorra algum erro durante o processo, o sistema dever enviar uma mensagem
de erro.
Restries lgicas:
Caso o estabelecimento escolhido para pedido, possua um valor mnimo para
pedidos e este no seja alcanado, o sistema dever enviar uma mensagem de
informao, no concluindo o pedido.

QUADRO 12 - RF 011 Gerar relatrios de bebidas e lanches mais pedidos

RF 011 Gerar relatrios de bebidas e lanches mais pedidos


Descrio:
O sistema dever buscar em todos os pedidos j concludos, quais os lanches e
bebidas mais presentes, gerando um relatrio para acompanhamento e auxlio na
tomada de deciso empresarial.
Os resultados do relatrio devero ser baseados apenas nos pedidos realizados a
empresa vinculada ao login utilizado para dar acesso ao sistema.
Caso ocorra algum erro, o sistema dever enviar uma mensagem de erro.
QUADRO 13 - RNF 001 - Trafegar informaes com o WebService no formato
Json

RNF 001 - Trafegar informaes com o WebService no formato Json


Descrio:
O sistema dever trafegar as informaes com o WebService no formato Json, para
maior agilidade na comunicao.
37

QUADRO 14 - RNF 002 - Mdulos restritos a tipos especficos de usurios

RNF 002 - Mdulos restritos a tipos especficos de usurios


Descrio:
Os mdulos do sistema, devero ser restritos a tipos especficos de usurios, usurios
do tipo cliente por exemplo, no podero acessar o mdulo administrador e ao
contrrio tambm.
Caso o tipo de usurio a tentar conectar-se a um mdulo, no qual o mesmo no tem
permisso, o sistema
QUADROdever
15 -enviar uma- mensagem
RNF 003 detodas
Funcionar em erro..as verses do Android

RNF 003 - Funcionar em todas as verses do Android


Descrio:
O mdulo mvel dever funcionar em todas as verses do Android, sem
diferenciao de recursos ou aes.

QUADRO 16 - RNF 004 Validar Informaes Digitadas

RNF 004 Validar Informaes Digitadas


Descrio:
O sistema dever validar as informaes digitadas, conforme as regras de negcio
da atividade a ser realizada, tais como campos e formulrios.
O sistema dever enviar uma mensagem do erro caso as informaes digitadas sejam
invlidas.

4.1.4 Diagrama de Classes

Neste tpico ser apresentado o diagrama de classes do projeto como um todo,


devido o mesmo possuir um grande nmero de tabelas no banco de dados, o mesmo foi
subdividido em 4 grupos.
Conforme apresentado na Figura 03, o primeiro destes grupos, o grupo dos
Endereos, no qual possui 5 entidades, entre elas: Address, City, State, Country e User.
38

FIGURA 3 - Diagrama ER (Banco de Dados) Grupo dos Endereos

Fonte: Prprio Autor

O segundo o grupo das Empresas, pode ser definida como o mais complexo, pois
quase todas as outras entidades, possuem alguma ligao que se no direta, indireta, por
vnculos com outras tabelas. Entre suas entidades bsicas, esto: Enterprise, CookeryType,
EnterprisePaymentForm, PaymentForm, EnterpriseSnackTypeType, SnackType e
Feedback. Conforme apresentadas na Figura 04.
39

FIGURA 4 - Diagrama ER (Banco de Dados) Grupo das Empresas

Fonte: Prprio Autor

O terceiro grupo subdividido o grupo dos Itens, que podem ser definidos, como
as entidades relacionadas aos produtos - lanches, bebidas e ingredientes - disponveis para
cada estabelecimento. Dentre as entidades deste grupo, so: Snack, SnackIngredient,
SnackType, Drink, DrinkEnterprise e Ingredient, conforme apresentados na Figura 05.
40

FIGURA 5 - Diagrama ER (Banco de Dados) Grupo dos Items

Fonte: Prprio Autor

O quarto e ltimo o grupo dos Pedidos, que consiste nas entidades relacionadas
a realizao de pedido. Dentre suas entidades esto: Request, RequestDrink e RequestSnack,
conforme apresentados na Figura 06.
41

FIGURA 6 - Diagrama ER (Banco de Dados) Grupo dos Pedidos

Fonte: Prprio Autor

4.2 Mdulos

4.2.1 Mdulo Cliente

4.2.1.1 Apresentao

Este mdulo compreende um aplicativo mvel na plataforma Android para


utilizao do cliente, para visualizaes dos cardpios de todas as empresas cadastradas,
realizao de pedidos e possibilidade de avaliaes dos servios prestados por parte da
empresa.
42

4.2.1.2 Diagrama de casos de uso

A figura 07 demonstra o diagrama de casos de uso do Mdulo Cliente, que est


totalmente integrado ao outro mdulo deste projeto.
FIGURA 7 - Diagrama de casos de uso do Mdulo Cliente

Fonte: Prprio Autor

4.2.1.2.1 UC001 - Alterar Informaes do Usurio

Este caso de uso tem o objetivo de possibilitar ao cliente alterar suas informaes
de usurio.

4.2.1.2.1.1 Diagrama de Atividade


43

FIGURA 8 - Diagrama de Atividade - Caso de Uso UC001 Alterar Informaes do


Usurio
act Diagrama de Ativ idade

Inicio

Selecionar Usurio

Preencher Informaes

Informaes Vlidas?

No
Env iar Mensagem de Erro

Sim

Sistema Grav a
Informaes

Final

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
Figura 8.
Fluxo Principal
o O cliente ir selecionar seu usurio, preencher suas informaes, o
sistema ir valida-las e ento as gravar no banco de dados.
Fluxo Alternativo
o O cliente ir selecionar seu usurio, preencher suas informaes, o
sistema ir identificar que as informaes so invlidas, enviar uma
mensagem de erro e retornar a etapa de preenchimento de
informaes, seguindo seu fluxo normalmente.
44

4.2.1.2.2 UC002 - Efetuar Login

Este caso de uso tem o objetivo de possibilitar ao cliente Efetuar Login no Sistema
de diferentes formas.

4.2.1.2.2.1 Diagrama de Atividade

FIGURA 9 - Diagrama de Atividade - Caso de Uso UC002 Efetuar Login

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 9.
Fluxo Principal
o O cliente ir selecionar a forma de login via Usurio e o sistema dar
acesso total ao mesmo para realizao de pedidos de lanches.
Fluxo Alternativo
o O cliente ir selecionar a forma de login via Facebook e o sistema
dar acesso total ao mesmo para realizao de pedidos de lanches.

4.2.1.2.3 UC003 - Efetuar Login via Facebook

Este caso de uso tem o objetivo de possibilitar ao cliente Efetuar Login no Sistema,
informando as credencias de sua conta no Facebook.
45

4.2.1.2.3.1 Diagrama de Atividade

FIGURA 10 - Diagrama de Atividade - Caso de Uso UC003 Efetuar Login Via


Facebook
act Diagrama de Ativ idade

Ini ci o

Informar Usurio e Senha

Usuri o Correto?

No
Env iar Mensagem de Erro

Si m

Acesso ao Aplicativ o

Fi nal

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 10.
Fluxo Principal
o O cliente ir digitar seu usurio e senha do facebook, ento o sistema
ir validar e liberar o acesso.
Fluxo Alternativo
o O cliente informar um usurio e senha invlidos do facebook e o
sistema ir enviar uma mensagem de erro, retornando ao passo
anterior seguindo o fluxo normalmente.

4.2.1.2.4 UC004 - Efetuar Login via Usurio

Este caso de uso tem o objetivo de possibilitar ao cliente Efetuar Login no Sistema
atravs da informao de suas credencias do Sistema.
46

4.2.1.2.4.1 Diagrama de Atividade

FIGURA 11 - Diagrama de Atividade - Caso de Uso UC004 Efetuar Login Via


Usurio
act Diagrama de Ativ idade

Inicio

Possui Usurio?

Registrar Usurio
No

Sim

Informar Usurio e Senha

Usurio Correto?
No
Env iar Mensagem de Erro

Sim

Acesso ao Aplicativ o

Final

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 11.
Fluxo Principal
o O sistema ir verificar que o cliente j possui conta, o cliente ir
digitar seu usurio e senha, ento o sistema ir validar e liberar o
acesso ao aplicativo.
Fluxo Alternativo 1
o O sistema ir verificar que o cliente no possui usurio, ento o
usurio ir registrar um usurio, o sistema ir validar e liberar o
acesso ao aplicativo.
Fluxo Alternativo 2
o O sistema ir verificar que o cliente j possui conta, o cliente ir
47

digitar seu usurio e senha, o sistema ir identificar que as


informaes no so vlidas, ento enviar uma mensagem de erro,
retornando a etapa anterior, seguindo seu fluxo normalmente.
Fluxo Alternativo 3
o O sistema ir verificar que o cliente no possui usurio, ento o
usurio ir registrar um usurio, ento o sistema ir identificar que
as informaes no so vlidas, ento enviar uma mensagem de
erro, retornando a etapa anterior, seguindo seu fluxo normalmente.

4.2.1.2.5 UC005 - Efetuar Logout

Este caso de uso tem o objetivo de possibilitar ao cliente Efetuar Logout no


Sistema.

4.2.1.2.5.1 Diagrama de Atividade

FIGURA 12 - Diagrama de Atividade - Caso de Uso UC005 Efetuar Logout


act Diagrama de Ativ idade

Inicio

Env iar Mensagem de


Confirmao

Confirmar Logout?

No Sim
Cancelar Ao de Logout Executar Ao de Logout

Final

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 12.
48

Fluxo Principal
o O cliente clicar em logout, o sistema ir enviar uma mensagem de
confirmao e executar a ao de logout.
Fluxo Alternativo
o O cliente clicar em logout, o sistema ir enviar uma mensagem de
confirmao e o mesmo no confirmar, e o sistema cancelar a ao
de logout.

4.2.1.2.6 UC006 - Efetuar Pedido de Lanche

Este caso de uso tem o objetivo de possibilitar ao cliente Efetuar um Pedido de


Lanche.

4.2.1.2.6.1 Diagrama de Atividade

FIGURA 13 - Diagrama de Atividade - Caso de Uso UC006 Efetuar Pedido de


Lanche
act Diagrama de Ativ idade

Inicio

Obter Endereo

Visualizar Cardpio Escolher Empresa Filtrar Empresas

Definir Quantidade de Selecionar a Forma de


Adicionar Items Pagamento
Cada Item Escolhido
Desej ados no Carrinho

Env iar Pedido

Final

Fonte: Prprio Autor


49

Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na


figura 13.
Fluxo Principal
o O sistema obtm o endereo do cliente, o cliente filtra e escolhe a
empresa, visualiza o cardpio, adiciona os itens desejado no carrinho
com sua quantidade desejada, aps isso, o cliente selecionar a
forma de pagamento e enviar o pedido de lanche ao sistema.

4.2.1.2.7 UC007 - Obter Endereo

Este caso de uso tem o objetivo de possibilitar ao sistema a obteno do endereo,


atravs da escolha do cliente da forma para obteno.

4.2.1.2.7.1 Diagrama de Atividade

FIGURA 14 - Diagrama de Atividade - Caso de Uso UC007 Obter Endereo

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 14.
Fluxo Principal
o O cliente ir selecionar a forma de obteno de endereo via Cep.
Fluxo Alternativo 1
o O cliente ir selecionar a forma de obteno de endereo via GPS.
50

4.2.1.2.8 UC008 - Obter Endereo via CEP

Este caso de uso tem o objetivo de possibilitar ao sistema a obteno do endereo


do cliente atravs do CEP informando pelo mesmo.

4.2.1.2.8.1 Diagrama de Atividade

FIGURA 15 - Diagrama de Atividade - Caso de Uso UC008 Obter Endereo


via CEP
act Diagrama de Ativ idade

Inicio

Informar o CEP

CEP Vlido?
No
Env iar Mensagem de Erro

Sim

Consultar o Cep

Obter o Retorno

Retorno Vlido?

No

Sim

Informar Nmero e
Observ aes do Endereo

Final

Fonte: Prprio Autor


51

Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na


figura 15.
Fluxo Principal
o O cliente informar o Cep, o sistema validar o mesmo e consultar
Cep, ao obter o resultado, efetuar uma validao e ento o cliente
informar o nmero e observaes do endereo.
Fluxo Alternativo 1
o O cliente informar o Cep, o sistema identificar que o mesmo no
vlido, enviar uma mensagem de erro ao cliente e retornar ao
passo anterior, continuando o fluxo normalmente.
Fluxo Alternativo 2
o O cliente informar o Cep, o sistema validar o mesmo e consultar
Cep, ao efetuar uma validao identificar que o retorno no vlido
e enviar uma mensagem de erro, retornando ao primeiro passo,
continuando o fluxo normalmente.

4.2.1.2.9 UC009 - Obter Endereo via GPS

Este caso de uso tem o objetivo de possibilitar ao sistema a obteno do endereo


do cliente atravs da localizao do GPS do mesmo.

4.2.1.2.9.1 Diagrama de Atividade

FIGURA 16 - Diagrama de Atividade - Caso de Uso UC009 Obter Endereo


Via GPS
act Diagrama de Ativ idade

Inicio

Serv io de Localizao
Processa as Informaes

Resultado do Processamento Vlido?

No Sim Informar Nmero e


Env iar Mensagem de Erro
Observ aes do Endereo

Final

Fonte: Prprio Autor


52

Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na


figura 16.
Fluxo Principal
o O servio de localizao processa as informaes, caso o resultado
do processamento seja vlido, o cliente informar o nmero e
observaes referentes ao seu endereo.
Fluxo Alternativo 1
o O servio de localizao processa as informaes, caso o resultado
do processamento no seja vlido, o sistema enviar uma mensagem
de erro e finalizar o processo.

4.2.2 Mdulo Empresarial

4.2.2.1 Apresentao

Este mdulo compreende em um Portal Web para utilizao das empresas, para
cadastro de seus produtos (itens do cardpio), para avaliao dos pedidos, visualizao de
relatrios e avaliaes realizadas pelos clientes, para que atravs disso os mesmos possam
tomar decises.

4.2.2.2 Diagrama de casos de uso

A figura 17 demonstra o diagrama de casos de uso do Mdulo Empresarial, que


est totalmente integrado aos outros dois mdulos deste projeto.
53

FIGURA 17 - Diagrama de casos de uso do Mdulo Empresarial

Fonte: Prprio Autor

4.2.2.2.1 UC012 - Alterar informaes da Empresa

Este caso de uso tem o objetivo de possibilitar ao operador alterar as informaes


relacionadas a empresa.

4.2.2.2.1.1 Diagrama de Atividade

FIGURA 18 - Diagrama de Atividade - Caso de Uso UC012 Alterar


Informaes da Empresa
act Diagrama de Ativ idade

Inicio

Preencher Informaes

Informaes Vlidas?

No Sim Sistema Grav a


Env iar Mensagem de Erro Informaes

Final

Fonte: Prprio Autor


54

Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na


figura 18.
Fluxo Principal
o O funcionrio da empresa preenche as informaes da mesma, o
sistema vlida e grava as informaes.
Fluxo Alternativo
o O funcionrio da empresa preenche as informaes da mesma, o
sistema identificar que as informaes no so vlidas, enviar uma
mensagem de erro e retornar ao passo anterior, seguindo o fluxo
normalmente.
o A informaes da empresa tero sido alteradas na base de dados.

4.2.2.2.2 UC013 - Avaliar Pedido Solicitado

Este caso de uso tem o objetivo de possibilitar ao operador avaliar o pedido


solicitado pelo cliente.

4.2.2.2.2.1 Diagrama de Atividade

FIGURA 19 - Diagrama de Atividade - Caso de Uso UC013 Avaliar o Pedido


Solicitado
act Diagrama de Ativ idade

Inicio

Selecionar Pedido

Aprovar ou Rejeitar?

Env iar Mensagem de Rejeitar Aprovar Env iar Mensagem de


Confirmao de Confirmao de
Rej eio Aprov ao

Confirmar Aprovao de Pedido?


Informar Tempo
No Aproximado Para Entrega

Confirmar Rejeio de Pedido?

No

Sim

Sim Aprov ar Pedido

Rej eitar Pedido

Final

Fonte: Prprio Autor


55

Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na


figura 19.
Fluxo Principal
o O funcionrio da empresa, selecionar o pedido, ao mandar aprovar,
o sistema enviar uma mensagem de confirmao de aprovao,
ento o funcionrio informar o tempo aproximado para entrega e
confirmar a aprovao, com isso, o sistema aprovar o pedido.
Fluxo Alternativo 1
o O funcionrio da empresa, selecionar o pedido, ao mandar rejeitar,
o sistema enviar uma mensagem de confirmao de reprovao,
ento o funcionrio confirmar a rejeio, com isso, o sistema
rejeitar o pedido.
Fluxo Alternativo 2
o O funcionrio da empresa, selecionar o pedido, ao mandar aprovar,
o sistema enviar uma mensagem de confirmao de aprovao,
ento o funcionrio informar o tempo aproximado para entrega, e
no confirmar a aprovao, com isso, o sistema retornar ao
primeiro passo, seguindo seu fluxo normalmente.
Fluxo Alternativo 3
o O funcionrio da empresa, selecionar o pedido, ao mandar rejeitar,
o sistema enviar uma mensagem de confirmao de reprovao,
ento o funcionrio no confirmar a rejeio, com isso, o sistema
retornar ao primeiro passo, seguindo seu fluxo normalmente.

4.2.2.2.3 UC014 - Efetuar Login

Este caso de uso tem o objetivo de possibilitar ao operador Efetuar Login no


Sistema.
56

4.2.2.2.3.1 Diagrama de Atividade

FIGURA 20 - Diagrama de Atividade - Caso de Uso UC014 Efetuar Login


act Diagrama de Ativ idade

Inicio

Informar Usurio e Senha

Usurio Correto?

No
Env iar Mensagem de Erro

Sim

Acessar o Sistema

Final

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 20.
Fluxo Principal
o O funcionrio da empresa ir digitar seu usurio e senha, ento o
sistema ir validar e liberar o acesso.
Fluxo Alternativo
o O funcionrio da empresa informar um usurio e senha invlidos e
o sistema ir enviar uma mensagem de erro, retornando a etapa
anterior, seguindo o fluxo normalmente.
57

4.2.2.2.4 UC015 - Efetuar Logout

Este caso de uso tem o objetivo de possibilitar ao operador Efetuar Logout no


Sistema.

4.2.2.2.4.1 Diagrama de Atividade

FIGURA 21 - Diagrama de Atividade - Caso de Uso UC015 Efetuar Logout


act Diagrama de Ativ idade

Inicio

Env iar Mensagem de


Confirmao

Confirmar Logout?
No Sim
Cancelar Ao de Logout Executar Ao de Logout

Final

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 21.
Fluxo Principal
o O funcionrio da empresa clicar em logout, o sistema ir enviar
uma mensagem de confirmao e executar a ao de logout.
Fluxo Alternativo
o O funcionrio da empresa clicar em logout, o sistema ir enviar
uma mensagem de confirmao e o mesmo no confirmar, e o
sistema cancelar a ao de logout.
58

4.2.2.2.5 UC016 - Enviar Feedback para o Administrador

Este caso de uso tem o objetivo de possibilitar ao operador alterar as informaes


relacionadas a empresa.

4.2.2.2.5.1 Diagrama de Atividade

FIGURA 22 - Diagrama de Atividade - Caso de Uso 16 Enviar Feedback para o


Administrador
act Diagrama de Ativ idade

Inicio

Preencher Formulrio de
Contato

Escolher Qual a Forma de


Contato

Informaes Vlidas?

No
Env iar Mensagem de Erro

Sim

Env iar Feedback

Final

Fonte: Prprio Autor


Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na
figura 22.
Fluxo Principal
o O funcionrio da empresa ir preencher o formulrio de contato e
escolher qual a forma de contato que o mesmo deseja, o sistema ir
validar as informaes e enviar o feedback para o administrador do
sistema.
59

Fluxo Alternativo
o O funcionrio da empresa ir preencher o formulrio de contato e
escolher qual a forma de contato que o mesmo deseja, o sistema ir
identificar que as informaes no so vlidas e retornar a primeira
etapa, seguindo seu fluxo normalmente.

4.2.2.2.6 UC017 - Visualizar Itens Mais Pedidos

Este caso de uso tem o objetivo de possibilitar ao operador visualizar os itens mais
pedidos.

4.2.2.2.6.1 Diagrama de Atividade

FIGURA 23 - Diagrama de Atividade - Caso de Uso 17 Visualizar Itens Mais


Pedidos
act Diagrama de Ativ idade

Inicio

Buscar Items no Banco de


Dados

Processar Informaes

Ordernar Items Mais


Pedidos

Env iar Informaes para o


Componente Grfico

Apresentar o Grfico

Final

Fonte: Prprio Autor


60

Abaixo sero apresentados os fluxos do diagrama de atividade apresentado na


figura 23.
Fluxo Principal
o O sistema ir buscar os itens no banco de dados, processar as
informaes e ordenar os itens mais pedidos, enviando as
informaes para o componente grfico que ir apresentar o grfico.

4.2.2.2.7 UC020 - CRUD Manter Itens do Cardpio

Este caso de uso tem o objetivo de possibilitar ao administrador realizar as


operaes de CRUD em relao a trs principais entidades: Drink, Ingredient e Snack.
Conforme apresentados na Figura 24.
FIGURA 24 - UC020 - CRUD Manter Itens do Cardpio

Fonte: Prprio Autor

4.2.2.2.7.1 Diagrama de Atividade

Este caso de uso no possui diagrama de atividade, pois o mesmo possui ao


esteretipo CRUD.
61

4.3 Concluso

Neste captulo foi apresentada a viso geral do sistema, descrevendo suas


caractersticas e funcionalidades. Foram definidos os principais requisitos f uncionais e no
funcionais do sistema, para que o mesmo funcione de acordo com o que proposto nos casos
de uso. Foram elaborados os casos de uso conforme os objetivos da criao deste projeto,
alm de apresentar tambm, todos os diagramas de atividades pertencentes aos mesmos.
Durante o processo da modelagem, foram apresentadas as expanses dos casos de
uso, com isso, demonstrando o funcionamento, passo a passo de cada caso de uso.
Alm destes, foi apresentado o diagrama de classes do projeto como um todo,
subdividido em 4 grupos, apresentados de forma clara e limpa.
Com isso, pode-se definir o processo de modelagem do sistema, como uma das
fases mais importantes no processo de construo de software, onde possvel ter uma viso
de negcios do sistema a ser implementado, sendo assim possvel evitar ao mximo o
retrabalho e aumentar a otimizao de tempo durante o processo de desenvolvimento.
62

5 IMPLEMENTAO DO SISTEMA

Neste captulo apresenta-se o desenvolvimento do sistema elaborado para este


trabalho, so explanadas as tecnologias e ferramentas utilizadas durante o processo, alm da
apresentao de fragmentos de cdigo mais importantes.

5.1 Tecnologias utilizadas

Devido algumas restries dos sistemas a serem implementados sero necessrios


utilizao de algumas tecnologias e ferramentas. Abaixo esto descritos breves conceitos
destas tecnologias.

5.1.1 Plataforma .NET

Resumidamente a Microsoft .NET pode ser definida como uma plataforma nica
para desenvolvimento e execuo de sistemas.

A plataforma .NET criada pela Microsoft, oferece servios poderosos em formato


binrio independente de processador, novas linguagens gerenciadas, extenses de
linguagem gerenciada para linguagens existentes. (TURTSCHI et Al, 2004).

O corao da plataforma.NET o CLR (Common Language Runtime), que uma


aplicao similar a uma mquina virtual que se encarrega de providenciar a execuo das
aplicaes para ela escritas. So oferecidos a estas aplicaes numerosos servios que
facilitam seu desenvolvimento e manuteno que favorece sua confiana e segurana
(ALVAREZ, 2004).

5.1.2 Plataforma Android SDK

De acordo com FARIA (2013), o Android SDK (kit de desenvolvimento)


proporciona ferramentas e chamadas via API na linguagem JAVA para desenvolvimento de
programas. Resumidamente, so programas para celulares com um sistema operacional,
63

middleware e interface. A seguir um breve resumo da arquitetura, onde os principais


recursos desta plataforma mobile so a mquina virtual otimizada, navegador integrado,
biblioteca 2D e 3D, banco SQLite e plug-in para o Eclipse (ADT).
O Android SDK fornece as bibliotecas da API e ferramentas de desenvolvimento
necessrias para construir, testar e depurar aplicativos para o Android" (ANDROID, 2013).
Segundo Meyer (2010), inclusos no SDK, esto:
APIs do Android: Possui as bibliotecas que possibilitam o desenvolvimento dos
aplicativos para a plataforma. So as mesmas bibliotecas utilizadas pela Google no
desenvolvimento das aplicaes nativas;
Ferramentas de desenvolvimento: Estas ferramentas, possuem a finalidade de
possibilitar ao desenvolvedor, compilar e depurar suas aplicaes;
Android SDK e AVD (Android Virtual Device) Manager: Ferramenta utilizada
na criao dos dispositivos virtuais (emuladores em geral, Figura 33), e o gerenciamento de
APIs (Figura 34). Nos simuladores possvel a realizao de testes, com isso eliminando a
necessidade do desenvolvedor possuir um dispositivo real para este propsito.
FIGURA 25 - Emulador Android SDK NHibernate

Fonte: Prprio Autor

De acordo com ANDROID (2013), para desenvolvedores recomendado o pacote


de desenvolvimento ADT (Android Developer Tools) para um incio rpido e fcil no
desenvolvimento de aplicativos. Ele inclui os componentes essenciais do Android SDK e
64

uma verso do Eclipse IDE com built-in ADT para agilizar o desenvolvimento de aplicativos
Android. O pacote inclui tudo que necessrio para comear a desenvolver aplicativos, tais
como:
Eclipse + ADT Plugin
Android SDK Tools
Android Platform-tools
A mais recente plataforma Android
A imagem mais recente do sistema Android para o emulador
FIGURA 26 - Android SDK e AVD Manager

Fonte: (O'HIGGINS, 2010)

5.1.3 Padro MVC

O padro de projeto Modelo-Viso-Controlador (MVC) tem tido uma grande


aceitao no desenvolvimento de aplicaes voltadas para Web e software corporativo. Com
a diviso das tarefas do software em trs camadas para controle da interface, manipulao
de dados e controle lgico, este padro facilita a manuteno e evoluo dos sistemas pela
independncia das classes de cada camada (PEREIRA, 2006).
65

FIGURA 27 - Diagrama que representa o padro Modelo-Viso-Controlador

FONTE: (SUN, 2002)

O padro MVC est dividido em trs mdulos, chamados de Model, View e


Controller, conforme a Figura 27, que sero descritos abaixo.

5.1.3.1 Model

Est a camada responsvel pelas regras de negcio da aplicao. Tambm o


encarregado de guardar o estado dos objetos. Em outras palavras, essa camada manipula os
dados do sistema, de maneira que os dados estejam prontos para que as camadas de controle
e viso possam utiliz-las (BAPTISTELLA, 2009).

5.1.3.2 View

a representao visual do modelo, onde se encontra todo o contedo a ser


visualizado pelo usurio.
a camada de apresentao com usurio, a interface que proporcionar entrada
de dados e a visualizao de respostas geradas, nas aplicaes web representado pelo
HTML que mostrado pelo browser, geralmente a viso contm formulrios, tabelas, menus
66

e botes para entrada e sada de dados, com base nisso pode-se dizer que camada de viso
responsvel por mostrar os dados de uma maneira que o usurio possa entender e pelos
inputs de entrada de dados (BAPTISTELLA, 2009).

5.1.3.3 Controller

Um controlador define o comportamento da aplicao, ele que interpreta as aes


do usurio e as mapeia para chamadas do modelo. Em um cliente de aplicaes Web essas
aes do usurio poderiam ser cliques em botes ou selees de menus. As aes realizadas
pelo modelo incluem ativar processos de negcio ou alterar o estado do modelo. Com base
na ao do usurio e no resultado do processamento do modelo, o controlador seleciona uma
visualizao a ser exibida como parte da resposta a solicitao do usurio. H normalmente
um controlador para cada conjunto de funcionalidades relacionadas (MACORATTI, 2013).

5.1.4 nHibernate ORM

O NHibernate um framework open source, desenvolvido usando .NET


framework, baseado no Hibernate do Java, que possibilita o mapeamento de objetos -
relacionais (ORM).

"O NHibernate um ORM Open-Source, que surgiu atravs do Hibernate, voltado


exclusivamente para desenvolvedores Java, sendo a princpio era um port do
Hibernate, mas passou a ser um projeto independente. Sendo assim, apresenta uma
certa maturidade, principalmente por ser um framework com uma equipe
colaborando ativamente" (RANIERI, 2013).

Segundo RANIERI, (2013), O Mapeamento Objeto-Relacional (ORM) consiste


em um framework que tem por objetivo suprir as disparidades entre o paradigma orientado
a objetos e o modelo entidade-relacional, criando uma ponte (mapeamento) entre o modelo
relacional e o modelo orientado a objetos. Ou seja, ao trabalhar com essa abordagem,
possvel a construo de sistemas utilizando o paradigma orientado a objetos, cujos objetos
so persistidos em um banco de dados relacional. Conforme a Figura 28 apresentada abaixo.
67

FIGURA 28 - Viso geral em alto nvel como trabalha o NHibernate

FONTE: (EMILIO, 2010)

Basicamente tem-se a aplicao com seus objetos persistentes que so usados pelo
NHibernate, mapeados por XML (ou Atributtes) onde relaciona-se a classe e seus atributos
com a tabela e suas colunas. O NHibernate precisa de alguns arquivos de configurao para
funcionar e conectar no banco de dados (EMILIO, 2010).

"O FluentNHibernate uma biblioteca para auxilia na realizao dos mapeamentos


das suas entidades com o banco de dados. Por padro o NHibernate usa arquivos
xml(.hbm) para realizar esse mapeamento, porm criar esses arquivos
manualmente gera um bom trabalho, para isso foi criada o FluentNHibernate que
podemos realizar esse mapeamento pelo prprio cdigo sem precisar de usar os
arquivos HBM" (L. PRADO, 2012).

5.1.5 Web Service

Segundo MENNDEZ (2009), h uma definio bastante simples para um Web


Services: uma aplicao que aceita solicitaes de outros sistemas atravs da Internet.

Simplificando, Web Service uma maneira de expor funcionalidades para


usurios Web atravs de protocolos padro. Tambm podemos citar como uma
aplicao identificada por uma URI (Uniform Resource Identifier), cujas interfaces
podem ser descobertas e definidas atravs de artefatos XML, e que suporta
interaes diretas com outros softwares utilizando mensagens XML atravs de
protocolos padro da Internet (W3C) (RECKZIEGEL, 2006).

Os Web Services trazem diversos benefcios quando utilizados de maneira correta


e bem sucedida. Os servios so baseados em um conjunto de padres da internet definidos
68

pelo W3C, no requerem configuraes especiais nos firewalls, pois o protocolo HTTP, o
qual o mais utilizado, atua como transporte na comunicao entre cliente e Web Service.
Possuem independncia de plataforma, devido a ser baseado em XML, o qual pode gerar
documentos complexos (RECKZIEGEL, 2006).
A arquitetura do Web Service baseada na interao de trs personagens:
Provedor de Servios, Consumidor de Servios e Registro dos Servios. A interao destes
personagens envolve as operaes de publicao, pesquisa e ligao. (KREGER, 2001).
A Figura 29 ilustrada abaixo representa a arquitetura do Web Service descrito
anteriormente.
FIGURA 29 - Web Service Roles

FONTE: (OFICINADANET, 2007)


As funcionalidade dos quadros representados na figura 29 acima, esto descritos
abaixo:
Provedor de servios O provedor de servios a entidade que cria o Web
Service. Ele disponibiliza o servio para que algum possa utiliz-lo. Mas, para que isto
ocorra, ele precisa descrever o Web Service em um formato padro, que seja compreensvel
para qualquer um, que precise usar esse servio, tambm publicar os detalhes sobre seu Web
Service em um registro central que esteja disponvel (RECKZIEGEL, 2006).
Consumidor de Servios Qualquer um que utilize Web Service criado por um
provedor de servios chamado de consumidor de servios. Este conhece a funcionalidade
do Web Service, a partir da descrio disponibilizada pelo provedor de servios,
recuperando os seus detalhes atravs de uma pesquisa sobre o registro publicado. Atravs
desta pesquisa, tambm o consumidor de servios pode obter o mecanismo para ligao com
este Web Service (LOPES, 2008).
Registro dos servios - Um registro de servio a localizao central onde o
provedor de servios pode relacionar os seus servios Web e com isso o consumidor de
servios pode pesquisar servios Web. Informaes como detalhar da empresa, servios
69

Web por ela fornecidos e detalhes sobre cada servio Web, detalhes tcnicos, so
armazenados no registro do servio (BASHA, et. 2002).
Segundo OFICINADANET (2007), as bases para a construo de um Web service
so os padres XML e SOAP. O transporte dos dados realizado normalmente via protocolo
HTTP (o padro no determina o protocolo de transporte). Os dados so transferidos no
formato XML, encapsulados pelo protocolo SOAP.

5.1.6 XML

Segundo W3, Extensible Markup Language (XML) um formato de texto simples,


muito flexvel derivado do SGML (ISO 8879). Originalmente concebido para enfrentar os
desafios da publicao eletrnica em grande escala, o XML tambm est desempenhando
um papel cada vez mais importante na troca de uma ampla variedade de dados na Web e em
outros lugares.

XML significa Extensible Markup Language (Linguagem de Marcao


Extensvel). Linguagens de marcao compreendem todas aquelas que possibilitam
a formatao de elementos por meio de tags e atributos como o HTML e XHTML.
Por ser extensvel, o XML possibilita a criao de elementos, ou seja, voc mesmo
pode inventar as suas tags. (DCIO, 2000).

Segundo PEREIRA (2009), o XML traz uma sintaxe bsica que pode ser utilizada
para compartilhar informaes entre diferentes computadores e aplicaes. Quando
combinado com outros padres, torna possvel definir o contedo de um documento
separadamente de seu formato, tornando simples para reutilizar o cdigo em outras
aplicaes para diferentes propsitos. Uma das suas principais caractersticas sua
portabilidade, pois, por exemplo, um banco de dados pode escrever um arquivo XML para
que outro banco consiga l-lo.
Alguns dos propsitos do XML so: auxiliar os sistemas de informao no
compartilhamento de dados (especialmente via internet), codificar documentos e inserir
seriais nos dados comparando o texto com o de outras linguagens baseadas em serializao
(PEREIRA, 2009).
Ainda de acordo com GTA (2013), o XML no uma simples linguagem de
marcao pr-definida: ela uma metalinguagem - uma linguagem usada para descrever
outras linguagens - que permite que o seu usurio defina a sua prpria marcao. Uma
linguagem de marcao pr-definida como o HTML especifica um modo de descrever
70

informao em apenas uma classe especfica de documento. O XML permite que o usurio
defina as suas prprias linguagens de marcao para atender inmeras classes de
documentos diferentes. Isto possvel porque o XML escrito em SGML, a metalinguagem
padronizada internacionalmente para sistemas de marcao de texto.

5.1.7 JSON

JSON (JavaScript Object Notation) pode ser definido como uma estrutura de dados
em Javascript, alm de o Javascript no ser requerido para seu funcionamento.

Um Objeto JSON definido como um conjunto de nomes e valores separados por


dois pontos e delimitados por vrgulas. (SAMPAIO, 2007, pg. 115).

Segundo AUGUSTO (2009), o JSON pode substituir o XML, e faz isso muito bem
na hora de trabalhar com respostas em AJAX. A estrutura de dados fica mais simples de
trabalhar e o tempo de execuo de um script lendo dados em JSON dezenas de vezes mais
rpido do que ler um contedo XML.
O JSON um formato de troca de dados que tambm serve para serializar objetos.
Um objeto na memria poder ser transformado em um formato independente da linguagem
e ser transportado por qualquer meio at o seu destino, de maneira semelhante ao SOAP
(SAMPAIO, 2007).
Dentre as principais vantagens do JSON, de acordo com GAMA, so:
Leitura mais simples
Suporte a objetos
Velocidade maior na execuo e transporte de dados
Arquivo com tamanho reduzido
O JSON bastante utilizado para auxiliar a execuo de chamadas AJAX onde o
retorno obtido da execuo no servidor obedece aos padres de criao de objetos JSON
para que os dados retornados possam ser lidos em JavaScript (JACONETE, 2013).

5.2 Ferramentas utilizadas

5.2.1 Visual Studio


71

Segundo MICROSOFT (2013), o Visual Studio um pacote de ferramentas de


desenvolvimento baseadas em componentes e outras tecnologias para a criao de
aplicativos avanados de alto desempenho. Alm disso, o Visual Studio otimizado para o
design, o desenvolvimento e a implantao de solues empresariais com base em equipes.

A Figura 30 demonstra a tela inicial do Visual Studio 2010, logo ao ser executado.
FIGURA 30 - Tela inicial Visual Studio 2010

Fonte: Prprio Autor

5.2.2 Eclipse IDE

Segundo CAELUM (2013) o Eclipse uma IDE (Integrated Development


Environment). Diferente de uma RAD, onde o objetivo desenvolver o mais rpido possvel
atravs do arrastar-e-soltar do mouse, onde montanhas de cdigo so gerados em
background, uma IDE te auxilia no desenvolvimento, evitando se intrometer e fazer muita
mgica.
Conforme PALMEIRA (2013), uma das principais vantagens o uso do SWT
(alternativa para quem desenvolve em SWING), e a forte orientao ao desenvolvimento
baseado em plug-ins ampliando o suporte do desenvolvedor com centenas deles que
procuram atender as diferentes necessidades.
O Eclipse a IDE lder de mercado. Formada por um consrcio liderado pela IBM,
possui seu cdigo livre (CAELUM, 2013).
72

5.2.3 SQL Server

Segundo OFICINADANET (2007), o SQL Server um gerenciador de Banco de


dados relacional feito pela Microsoft. um Banco de dados robusto e usado por sistemas
corporativos dos mais diversos portes.
O SQL Server fornece uma plataforma de dados confivel, produtiva e inteligente
que permite a execuo de aplicaes de misso crticas mais exigentes, reduz o tempo e o
custo com o desenvolvimento e o gerenciamento de aplicaes e entrega percepo que se
traduz em aes estratgicas (HIRT, 2010).
Um dos pontos fortes a serem destacados, so sua usabilidade e facilidade de uso,
composto de simplicidade e qualidade, conforme ilustrado na Figura 31.
FIGURA 31 - Visualizao Object Explorer do SQL Server 2008

Fonte: Prprio Autor

5.3 Arquitetura da Aplicao

Neste tpico sero apresentadas as arquiteturas dos dois mdulos do


desenvolvimento deste trabalho de concluso de curso.

5.3.1 Desenvolvimento - Soluo Visual Studio (Arquitetura Portal Web e WebService)

A arquitetura da soluo do Portal Web e WebService dividida em 7 mdulos,


que em conjunto, formam uma grande arquitetura e distribuio de informaes, conforme
apresentadas na Figura 32, que sero devidamente explicados.
73

FIGURA 32 - Visualizao Soluo Visual Studio (Arquitetura Portal Web e WebService)

Fonte: Prprio Autor


74

Destes, o primeiro mdulo a ser implementado foi o STSystem.SnacksHere.Core,


pois nele ficam as classes de ajuda e a classe de repositrio genrica do nHibernate, onde
futuramente sero utilizadas, facilitando em muito a criao dos repositrios.
O prximo mdulo a ser implementado foi o STSystem.SnacksHere.Domain, onde
esto as informaes da camada de domnio da soluo, subdividida em:
Entidades (objetos que so espelhos das tabelas no banco de dados)
Mapeamentos (forma e caractersticas da tabela do banco de dados, tais
como, nomes de tabela, coluna, chave estrangeira, etc. Referente ao
nHibernate, citado no desenvolvimento deste TCC)
Repositrios e Servios (onde ficam as interfaces das suas respectivas
classes de implementao, que sero abordadas mais abaixo.
Classes para criao das tabelas e contexto do banco de dados.
Aps isso, foi criado o STSystem.SnacksHere.Data, onde nele ficam, todos as
implementaes dos repositrios, referente as entidades, mapeamentos e interfaces criados
no projeto de domnio.
Para facilitao na validao de regras de negcio foi criado o projeto
STSystem.SnacksHere.Business, onde existe uma classe de implementao para cada
repositrio, onde dentro do mesmo realiza as validaes e invoca os mtodos do repositrio.
Para validao do controle de login que posteriormente foi utilizado no Portal
Web, foi criado o projeto STSystem.SnacksHere.WebHandlers, que possui funes de login,
logout e validaes gerais sob os usurios.
Com a criao da arquitetura geral, foi criado o projeto
STSystem.SnacksHere.Clients.WA, que o Portal Web, o mesmo trabalha sob a arquitetura
j descrita, trabalha com o padro MVC (Model-View-Controller), com a linguagem
ASP.NET MVC3 e C#, onde na pasta Content ficam as imagens do Portal Web, na
Controllers, ficam as regras de negcios e manipulaes de dados enviados e retornados da
tela, j na Models, ficam os objetos utilizados no portal Web, chamados de ViewModel
(objetos que refletem as propriedades dos formulrios da tela, na pasta Scripts, ficam os
scripts javascript utilizados pelas interfaces e por ltimo, na Views, onde ficam as
interfaces do sistema, ou seja, o cdigo HTML e apresentao de informaes.
Com o pleno funcionamento do Portal Web, foi criado o projeto
STSystem.SnacksHere.WebService, que atravs da arquitetura apresentada, ir manipular
75

as informaes e se comunicar com o aplicativo mvel, atravs do formato de texto jSON.

5.3.2 Desenvolvimento - Projeto Eclipse (Aplicativo Android)

A arquitetura do projeto eclipse do aplicativo Android, possui apenas 1 m dulo,


conforme apresentada na Figura 33, que ser explicada abaixo.
FIGURA 33 - Visualizao Projeto Eclipse (Aplicativo Android)

Fonte: Prprio Autor

Comeando pelas pastas Android 2.2 e Android Dependencies, pode se comentar,


que nelas ficam as bibliotecas seja do Android, como tambm bibliotecas externas, como
por exemplo: Ksoap, Gsom.
Na pasta src, onde foi inserida as principais codificaes do aplicativo Android,
pois, ali onde ficam as objetos e classes de processamento.
76

Na pasta gen, so arquivos criados automaticamente pelo Java, onde os mesmos


no foram modificados durante o desenvolvimento.
Na pasta bin, os arquivos so gerados automaticamente pelo compilador e contm
todos os arquivos do sistema, inclusive o arquivo .apk da aplicao Android.
J na pasta lib onde ficam as bibliotecas a serem utilizadas pela aplicao.
A pasta res foi utilizada basicamente para armazenar as imagens do aplicativo nas
pastas com prefixo drawable, j nas pastas com prefixo layout, so os xmls das telas do
aplicativo, a pasta menu onde fica o menu de opes do celular, o que listado para o
usurio e por ltimo a pasta values que so as informaes de textos e configuraes
utilizados na aplicao.
Nos arquivos restantes, so arquivos criados automaticamente na criao do
projeto e so essenciais para o pleno funcionamento do aplicativo, durante o
desenvolvimento foram alterados apenas alguns parmetros e informaes.

5.4 Implementao do sistema

Nesta seo sero apresentadas apresentados algumas classes e trechos de cdigo,


criados durante o desenvolvimento deste projeto de concluso de curso, destacando seus
pontos principais, que onde possuem maior complexidade.
Para desenvolvimento deste projeto necessrio possuir os pacotes de dll do
componente Telerik, AutoMapper, nHibernate e Json .NET, que servem para facilitar e
engrandecer a estrutura, performance e qualidade deste projeto.

5.4.1 Criao de Sesso do nHibernate

A Sesso do nHibernate quem faz toda a criao do contexto da transao para


acesso ao banco de dados, como por exemplo: criar e/ou abrir uma conexo com o banco de
dados e depois manipular os registros contidos.
Para criao da sesso necessrio passar duas informaes: a connectionString
do banco de dados, e qual o assembly da dll dos mapeamentos dos objetos relacionais, que
com isso, o nHibernate, saber quais as estruturas e aes a serem tomadas.
No Quadro 17 mostra o mtodo para criao da sesso, na qual foi utilizado
77

durante todo o desenvolvimento deste projeto e testes ps-implementao.

QUADRO 17 - Cdigo fonte do mtodo CreateSessionFactory.

O mtodo CreateSessionFactory um dos mtodos mais utilizados neste projeto.


Este tem o objetivo de criar a sesso do nHibernate.
Na linha 1 passado o parmetro connectionString, onde este a string de conexo
do banco de dados a ser efetuada a conexo e manipulao dos dados.
Na linha 3 criado uma lista de assemblyes que ser utilizado depois para captura
das informaes de mapeamento das tabelas da base de dados.
Na linha 5 at a linha 13 invocado o mtodo Configure, informando qual o tipo
de banco de dados e sua connectionString, alm de informar os arquivos de mapeamentos a
serem carregados, at que chamado o mtodo BuildConfiguration, que no qual ir salvar
o resultado na varivel com o nome de configuration.
Na linha 15 o mesmo abre a conexo com o banco, retornando o objeto
ISessionFactory para utilizao.

5.4.2 Serializao e Deserializao Json

O transporte de dados entre da aplicao mobile feito atravs do formato Json,


um formato leve e compacto.
Para serializao e deserializao de objetos Json foi utilizado a dll
Newtonsoft.Json.dll, que j possui mtodos prontos para utilizao, que foram utilizados no
mtodo que envia informaes do usurio ao WebService, pegando o retorno e
deserializando as informaes.
78

No Quadro 18 apresenta a forma de utilizao desta dll.

QUADRO 18 - Cdigo fonte do mtodo SendCrossTalkToWebService

O mtodo SendCrossTalkToWebService tem como objetivo serializar um objeto,


enviar ao WebService, pegando seu retorno e deserializando.
Na linha 1 passado o parmetro addOrUpdateUserEntry, que o objeto a ser
serializado.
Na linha 3 chamado o mtodo JsonConvert.SerializeObject, passando o objeto
como parmetro, pegando o seu resultado e salvando na varivel userJsonContent.
Na linha 5 enviado o resultado serializado para o WebService, salvando o retorno
na varivel userResult.
Na linha 7 o resultado do WebService deserializado utilizando o mtodo
JsonConvert.DeserializeObject, passando o tipo do objeto sendo enviado e o contedo do
mesmo parmetro, salvando na varivel crossTalkResult.
Na linha 9 o resultado contido na varivel crossTalkResult retornado.

5.4.3 Enviar E-Mail

O envio de e-mail utilizado neste projeto realizado atravs da biblioteca


System.Net.Mail nativa do framework do .NET.
No Quadro 19 apresentado o mtodo SendEmail, que mostra a utilizao desta
biblioteca.
79

QUADRO 19 - Cdigo fonte do mtodo SendEmail.

O mtodo SendEmail tem como objetivo, atravs de um objeto pr-definido, enviar


um e-mail, para um ou mais destinatrios.
Na linha 1 passado o parmetro emailDetails, que o objeto que contm as
informaes gerais para o envio do e-mail.
Na linha 3 instanciado um SmtpClient, que o objeto que ser responsvel pelo
envio.
Na linha 4 at a linha 9 instanciado um objeto do tipo MailMessage e informado
qual o assunto, mensagem a as informaes de usurio remetente, como usurio e nome a
ser mostrado como dono do e-mail.
Na linha 11 e 12 adicionado ao objeto emailDetails, todos os anexos do mesmo,
podendo ser uma lista, contento inmeros anexos.
Na linha 14 at a linha 16 adicionado os e-mails de destinatrio, podendo ser
uma lista e conter inmeros.
Na linha 17 e 18 adicionado os e-mails de cpia carbono, podendo ser uma lista
e conter inmeros.
Na linha 19 e 20 adicionado os e-mails de cpia carbono ocultas, podendo ser
uma lista e conter inmeros.
Na linha 22 instanciada a propriedade Credentials do objeto smtpClient, e
80

informadas as informaes de usurio e senha do remetente.


Na linha 23 informado o host smtp do servidor de e-mail remetente.
Na linha 24 informado se o servidor utiliza ssl ou no.
Na linha 25 informado a porta do servidor de e-mail.
Na linha 26 chamasse o mtodo de envio de e-mail.
Na linha 27 limpa as informaes do objeto mailMessage da memria.

5.4.4 Criar classe de Mapeamento

A criao da classe de mapeamento referente a utilizao do nHibernate neste


projeto, sendo referenciada a dll FluentNHibernate.dll.
No Quadro 20 a apresentada a classe CityMap, que mostra como funciona a
criao de uma classe de mapeamento.

QUADRO 20 - Cdigo fonte da classe CityMap

A classe CityMap tem como objetivo mapear o objeto City, que ir definir como
ser a tabela no banco de dados.
Na linha 1 a classe CityMap herdade de ClassMap que uma classe pertencente
ao nHibernate, que o mesmo, na criao da sesso, ir ler as classes que herdam da ClassMap
e assim poder trabalhar.
Na linha 3 criado o construtor da classe CityMap, que por padro todas as classes
herdadas da mesma devem ser criados com seus respectivos construtores.
Na linha 5 informado que o campo Id do objeto City, ser um campo identity na
tabela do banco de dados.
Na linha 6 informado que o campo ter tamanho de 100 caracteres e no poder
receber nulo nos registros.
Na linha 7 informado que o campo IdState ser uma chave estrangeira de outra
tabela e no poder receber nulo nos registros.
81

5.4.5 Manipular Dados na Base de Dados

Para manipular dados utilizando o nHibernate algo bastante simples e eficiente,


sendo referenciada a dll FluentNHibertate.dll.

5.4.5.1 Inserir ou Alterar Dados na Base de Dados

Para inserir ou alterar dados na base de dados via nHibernate possvel com a
chamada de apenas um mtodo, que serve para as duas situaes.
No Quadro 21, ser apresentado como inserir ou alterar dados na base de dados.

QUADRO 21 - Cdigo fonte do mtodo de Insero e Alterao de dados na


base de dados.

O mtodo SaveOrUpdate tem como objetivo possibilitar a insero e alterao dos


dados de uma tabela no banco de dados, do objeto a ser persistido.
Na linha 1 passado o parmetro tObject, que um objeto genrico, que
dependendo do objeto que chegar, ele persistir na tabela correspondente.
Na linha 3 aberta uma sesso e salvo na varivel session,
Na linha 4 aberta uma transao para manipulao dos dados.
Na linha 8 chamado o mtodo SaveOrUpdate que de acordo com o objeto
passado, persisti os dados em sua respectiva tabela.
Na linha 9 comitado os dados da transao no banco de dados.
82

Na linha 13 caso acontea algum erro, executado um rollback nas modificaes


que possam ter sido efetuadas.
Na linha 14 sobe o erro para cima, para onde ser tratado.
Na linha 18 fechada a sesso e a conexo com o banco de dados.

5.4.5.2 Remover Dados na Base de Dados

Para remover dados na base de dados via nHibernate possvel apenas enviando
o objeto de forma genrica, que o mesmo, atravs de reflection, verifica qual sua respectiva
tabela e executa a remoo.
No Quadro 22, ser apresentado como remover dados na base de dados.

QUADRO 22 - Cdigo fonte do mtodo Delete.

O mtodo Delete tem como objetivo possibilitar a remoo de dados de uma


tabela do banco de dados.
Na linha 1 passado o parmetro tObject, que um objeto genrico, que
dependendo do objeto que chegar, ele persistir na tabela correspondente.
Na linha 3 aberta uma sesso e salvo na varivel session.
Na linha 4 aberta uma transao para manipulao dos dados.
Na linha 8 chamado o mtodo Delete que de acordo com o objeto passado,
remove os dados em sua respectiva tabela.
83

Na linha 9 comitado os dados da transao no banco de dados.


Na linha 13 caso acontea algum erro, executado um rollback nas modificaes
que possam ter sido efetuadas.
Na linha 14 sobe o erro para cima, para onde ser tratado.
Na linha 18 fechada a sesso e a conexo com o banco de dados.

5.4.5.3 Buscar Dados na Base de Dados

Para buscar dados na base de dados via nHibernate possvel apenas enviando o
objeto de forma genrica, com o campo id preenchido.
No Quadro 23, ser apresentado como buscar dados na base de dados.

QUADRO 23 - Cdigo fonte do mtodo GetById

O mtodo GetById tem o objetivo de buscar um objeto na base de dados atravs


do Id informado.
Na linha 1 passado o parmetro id, que o identificador do objeto na base de
dados.
Na linha 3 aberta uma sesso e salvo na varivel session.
Na linha 6 chamado o mtodo Get, passando qual o tipo do objeto e passando o
id como parmetro.
Na linha 10 fechada a sesso e a conexo com o banco de dados.

5.4.6 Controle de Login MemberShip

Para a efetuao do login no portal Web, existe uma classe gerenciadora,


especfica para esta funo, ser apresentado como efetuado o login.
84

No quadro 24, ser apresentado o mtodo utilizado para controle de login.

QUADRO 24 - Cdigo fonte do mtodo SignIn

O mtodo SignIn tem como objetivo prover o controle de acesso ao portal web,
utilizados por os funcionrios da empresa.
Na linha 1 passado 3 parmetros, o usurio e senha do funcionrio da empresa,
alm, do objeto de instancia da sesso nHibernate.
Na linha 5 verificado se a instancia do repositrio da tabela de usurios est nula.
Na linha 6 inicializada a instancia do repositrio da tabela de usurios, passando
como parmetro a instancia da sesso, passada por parmetro do mtodo.
Na linha 8 de criptografada a senha passada por parmetro no mtodo e salvo na
varivel password.
Na linha 10 chamado o mtodo GetUserByLoginAndPassword, passando como
parmetro, o usurio e senha, salvando o resultado na varivel user.
Na linha 12 verificado se a varivel user, consequente do passo anterior nulo.
Na linha 13 retornado nulo no mtodo.
Na linha 15 salvo o tipo do usurio na propriedade global da classe.
Na linha 17 verificado se o id do usurio da varivel user, criado na linha 10,
ainda no est no dicionrio de usurios logados.
Na linha 18 adicionado no dicionrios de usurios logados o usurio corrente,
85

capturado na varivel criada na linha 10.


Na linha 20 retornada a varivel user.
Na linha 24 retornado nulo caso acontea alguma exceo durante o processo.

5.4.7 Auto Mapeamento entre Objetos

Para realizar o auto mapeamento entre objetos, foi utilizada a dll AutoMapper.dll,
no qual de uma forma bem simplificada, facilita o trabalho imensamente.
No Quadro 25, ser apresentado um mtodo utilizado, que utiliza estes recursos.

QUADRO 25 - Cdigo fonte do mtodo de Auto Mapeamento entre Objetos

O mtodo MapCrossTalkBodyUserToUser tem o objetivo de mapear um objeto


do tipo CrossTalkBodyUser para o objeto User, que no caso, possuem os mesmos nomes
das propriedades, com isso, sero mapeados automaticamente.
Na linha 1 passado o parmetro crossTalkBodyUser, que o objeto a ser auto
mapeado.
Na linha 3 criado setado o valor do Mapper para o auto mapeamento de dados,
de objetos CrossTalkBodyUser para User.
Na linha 4 chamado o mtodo Map que executa o mapeamento destes, passando
como parmetro o objeto crossTalkBodyUser e salvando o resultado na varivel
currentUser.
Na linha 6 retornada a varivel currentUser.

5.4.8 Componente Grfico Telerik Grid

A apresentao e manipulao de registros durante o desenvolvimento deste


projeto foi realizada atravs de grids, para a implementao destas foi utilizada o
componente grfico Telerik.
No Quadro 26 apresentado um trecho de cdigo onde utilizado estes recursos.
86

QUADRO 26 - Cdigo fonte do trecho de cdigo do componente de Grid do


Telerik.

O trecho de cdigo acima, tem como objetivo atravs de um conjunto de


informaes, prover uma apresentao dos dados, que possibilite uma maior facilidade para
inserir, alterar ou remover os registros.
Na linha 1 chamado o mtodo Grid passando o tipo a ser definido, o objeto
Ingredient.
Na linha 2 definido que o nome deste componente no cdigo ser
GridIngredients.
Na linha 3 e 4 definido que a forma de filtro ser definida pela propriedade Name
do objeto Ingredient, e que o filtro verificar atravs do ViewData["filter"], que populado
no Post da pgina.
Na linha 5 at a linha 7 adicionado o boto de insert na toolbar, apresentada
acima da grid, definindo seu estilo e propriedades.
Na linha 8 at a linha 13 so definidos quais os eventos javascripts utilizados pela
grid, informando por parmetros, o nome da action e controller a serem disparados ps
execuo do evento javascript.
Na linha 14 at a linha 24 so definidas as colunas presentes na grid, definindo
87

seus tamanhos, ttulos das colunas, e at qual a forma de apresentao das colunas, podendo
ser inclusive um boto.
Na linha 25 at a linha 27 definido que a grid ser paginada e possuir uma barra
de rolagem, caso possua muitos registros.
Na linha 28 definido que a grid ser ordenada pelo campo Id do objeto Ingredient
de forma descendente.
Na linha 29 definido que esta grid possvel ser selecionado registros, par a
edio, excluso de registros j existentes.

5.4.9 Autenticao de Credncias de Usurio

A autenticao de credenciais de usurio realizada atravs de uma chamada ao


WebService, onde o mesmo atravs de um objeto contendo as informaes de usurio e
senha, retorna se as credenciais so vlidas.
No Quadro 27 mostra o mtodo userAuthentication que retorna se as credenciais
(usurio e senha) so vlidos.

QUADRO 27 - Cdigo fonte do mtodo userAuthentication que


retorna se as credncias (usurio e senha) so
vlidos.
88

O trecho de cdigo acima, tem como objetivo atravs da comunicao com o


WebService, validar se as informaes inseridas pr o usurio na aplicao mvel, so
validas e assim possibilitar a realizao de pedidos de lanches.
Na linha 1 declarado o mtodo userAuthentication, recebendo por parmetro um
objeto do tipo UserInfo, que contm as informaes de usurio e senha, alm de iniciar a
tratativa de exceo para caso de erro.
Na linha 2 criado uma varivel do tipo booleana nomeada de result, que ser
preenchida conforme o processamento do mtodo.
Na linha 3 criado um objeto do tipo HttpTransportSE, passando a url do
WebService e o tempo especificado para timeout.
Na linha 4 criado um objeto do tipo SoapObject, passando o namespace padro
e o nome do mtodo descrito no WebService, salvo na constante
USER_AUTHENTICATION.
Na linha 6 at a linha 8 adicionado trs propriedades no objeto do tipo
SoapObject, sendo o token para acesso, o usurio e a senha.
Na linha 10 at a linha 12, criado o envelope de serializao do Soap, passando
o Soap do WebService, da referncia do mesmo presente no projeto, atribuindo o tipo dele
para dotNet e passando o contedo dele com o valor do objeto do tipo SoapObject,
preenchido anteriormente.
Na linha 14 e 15 invocado o mtodo do WebService, passando como parmetro,
o nome do mesmo e o envelope de serializao.
Na linha 17 at a linha 19 verificado se houve erro de comunicao ou
processamento com o WebService, e captura o erro do que ocasionou e salva no log, para
posterior verificao.
Na linha 20 at a linha 27 capturado o contedo da resposta do WebService no
formato Json, salvo numa varivel para aps isso, deserializ-la para um objeto do tipo
UserInfo atravs da biblioteca Gson, salvando-a em seu contexto de informaes e caso
tenha sido um resultado vlido atribui true ou false para a varivel result.
Na linha 29 retornada a varivel result, preenchida durante o processamento.

5.4.10 Validao de Informaes do Sistema

A validao de campos e informaes a realizada atravs da criao de


89

expresses vinculadas juntamente a classe Pattern, nativa do framework do Java.


Para execuo da validao, todos os mtodos recebem apenas um parmetro, que
o texto a ser validado.
No Quadro 28 mostra a classe onde esto presentes os mtodos de validao,
juntamente com suas expresses regulares para validao.

QUADRO 28 - Cdigo fonte da classe para validao de


informaes do Sistema

A classe ValidateUtils tem como objetivo a validao de informaes do sistema,


a mesma foi muito utilizada durante o desenvolvimento e acionada frequentemente durante
a execuo do aplicativo Android.
Na linha 1 declarada a classe ValidateUtils.
Na linha 3 criado um construtor de classe privado, pois a classe esttica e seu
construtor obrigatoriamente deve ser privado.
Na linha 5 declarado o mtodo VerifyValidIp, passando o ip como parmetro.
Na linha 6 criado uma instancia da classe Pattern, salvando na varivel ipValidate,
invocando o mtodo compile e passando como parmetro a expresso regular para
validao.
Na linha 8 invocado o mtodo matcher da varivel ipValidate, passando como
parmetro o parmetro ip que veio como parmetro do mtodo, retornando true ou false de
acordo com a validao efetuada.
Na linha 11 declarado o mtodo VerifyValidPassword, passando o password
como parmetro.
Na linha 12 criado uma instancia da classe Pattern, salvando na varivel
ipValidate, invocando o mtodo compile e passando como parmetro a expresso regular
90

para validao.
Na linha 14 invocado o mtodo matcher da varivel ipValidate, passando como
parmetro o parmetro password que veio como parmetro do mtodo, retornando true ou
false de acordo com a validao efetuada.
Na linha 17 declarado o mtodo VerifyPinSecure, passando o pinIDSecure como
parmetro.
Na linha 18 criado uma instancia da classe Pattern, salvando na varivel
ipValidate, invocando o mtodo compile e passando como parmetro a expresso regular
para validao.
Na linha 20 invocado o mtodo matcher da varivel ipValidate, passando como
parmetro o parmetro pinIDSecure que veio como parmetro do mtodo, retornando true
ou false de acordo com a validao efetuada.

5.4.11 Busca de Lanches de Acordo com determinada Empresa

A busca de lanches de determinada empresa realizada atravs de uma chamada


ao WebService, onde o mesmo atravs do Id da empresa, buscas todos os lanches, separa
em grupos e retorna em formato Json.
O Quadro 29 mostra o mtodo GetSnacksByEnterprise que retorna os lanches de
determinada empresa.

QUADRO 29 - Cdigo Fonte do Mtodo GetSnacksByEnterprise


91

O trecho de cdigo acima, tem como objetivo atravs da comunicao com o


WebService, buscar os lanches disponveis por determinada empresa, atravs de seu Id,
retornando um Json com todos os lanches para serem apresentados na interface Android.
Na linha 1 declarado o mtodo GetSnacksByEnterprise, recebendo por parmetro
um inteiro sendo o id da empresa, retornando um objeto do tipo SnacksEnterprise, com todos
os lanches de acordo com o id da empresa informado, alm de iniciar a tratativa de exceo
para caso de erro.
Na linha 2 criado uma varivel do tipo SnacksEnterprise, nomeada de
snacksEnterprise, para ser utilizada durante o processamento e ser retornada ao fim do
mesmo.
Na linha 3 criado um objeto do tipo HttpTransportSE, passando a url do
WebService e o tempo especificado para timeout.
Na linha 4 criado um objeto do tipo SoapObject, passando o namespace padro
e o nome do mtodo presente no WebService, salvo na constante GET_SNACKS.
Na linha 6 e 7 adicionado duas propriedades no objeto do tipo SoapObject, sendo
o token para acesso e o id da empresa.
Na linha 9 at a linha 11, criado o envelope de serializao do Soap, passando o
Soap do WebService, da referncia do mesmo presente no projeto, atribuindo o tipo dele
para dotNet e passando o contedo dele com o valor do objeto do tipo SoapObject,
preenchido anteriormente.
Na linha 13 e 14 invocado o mtodo do WebService, passando como parmetro,
o nome do mesmo e o envelope de serializao.
Na linha 16 at a linha 18 verificado se houve erro de comunicao ou
processamento com o WebService, e captura o erro do que ocasionou e salva no log, para
posterior verificao.
Na linha 19 at a linha 24 capturado o contedo da resposta do WebService no
formato Json, salvo numa varivel para aps isso, deserializ-la para um objeto do tipo
SnacksEnterprise atravs da biblioteca Gson.
Na linha 26 retornada a varivel snacksEnterprise, preenchida durante o
processamento.
92

5.4.12 Validao de Informaes do Sistema

A codificao de interfaces e layouts no Android realizada atravs de uma


linguagem no formado xml, sendo bastante simples e de fcil aprendizado.
No Quadro 30 mostra o xml do layout da interface inicial do prottipo do
aplicativo Android.

QUADRO 30 - Xml do Layout da interface inicial do prottipo do


aplicativo Android
93

Na linha 1 at a linha 6, seta o background do interface, arrumando a imagem do


cheese, de forma que preencha todo o espao.
Na linha 7 at a linha 20 configurado as opes e formataes da interface dos
botes que estaro inseridos dentro do seu contexto.
Na linha 21 at a linha 44 criado um boto para busca de endereo via GPS e
Cep, configurando-o seus eventos e propriedades, de forma que o tornem mais bonitos e
arrojados.
Na linha 45 so fechadas as tags de RelativeLayout e LinearLayout, que
especificaram as localizaes dos botes na tela.
Na linha 46 encerrado o xml, fechando todo o contedo da interface.

5.4.13 Busca de Localizao do usurio (cliente) via Cep

A busca da localizao do usurio (cliente) via Cep realizada atravs de um


sistema especialista na funo, onde atravs do Cep informado, o mesmo retorna um xml
contendo as informaes de localizaes.
No Quadro 31 mostra o mtodo getAddressByPostalCode, responsvel por fazer
toda a tramitao de informaes e retornar um objeto do tipo DeliveryAddress com as
informaes de localizao do usurio (cliente).

QUADRO 31 - Cdigo fonte do mtodo getAddressByPostalCode


94

Este mtodo tem como objetivo, atravs do cdigo postal (cep), efetuar uma
chamada a um servio externo, buscar as informaes e dar progresso as aes durante o
processamento.
Na linha 1 declarado o mtodo getAddressByPostalCode que retorna um objeto
do tipo DeliveryAddress, passando o parmetro postal_code do tipo texto, alm de iniciar a
tratativa de exceo para caso de erro de parser durante a execuo do mtodo.
Na linha 2 e 3 criado um objeto do tipo DeliveryAddress com o nome de
deliveryAddress e atribudo o valor do postalCode, com o valor passado por parmetro no
mtodo.
Na linha 4 e 5 criado um objeto do tipo StringBuffer e concatenado a ele, o valor
da url do servio localizador de cep, com o cep e um atributo atribuindo seu tipo de formato
de retorno como xml.
Na linha 6 passado o valor do objeto StringBuffer, para a varivel do tipo texto,
nomeada de url.
Na linha 7 at a linha 18, criado um objeto do tipo HttpClient, no qual conectar
com a url presente na varivel, pegar o retorno e salva-lo na varivel nomeada
responseData.
Na linha 19 e 20, o catch onde so tratadas as excees geradas durante a
execuo do passo anterior.
Na linha 21 at a linha 24, criado um objeto do tipo KXmlParser, que tem a
funo de interpretar xmls, com isso, passado o contedo da resposta da url e verificado
se a tag root do xml webservicecep.
Na linha 26 at a linha 41, percorrido linha a linha o contedo da resposta da url,
verificando quais as tags correntes e caso sejam as esperadas nas validaes, so atribudas
a varivel deliveryAddress, caso no seja, segue para a prxima linha.
Na linha 42 at a linha 44, verificado se a ltima tag do xml webservicecep e
atribudo ao final do documento.
Na linha 45 retornado a varivel deliveryAddress do tipo DeliveryAddress,
preenchida durante o processamento do componente.
95

5.4.14 Busca de Localizao do usurio (cliente) via Gps

A busca da localizao do usurio (cliente) via Gps realizada atravs de um


servio disponibilizado pelo Google Maps, onde atravs da latitude e longitude o mesmo
retorna as informaes de localizao.
No Quadro 32 mostra o mtodo getAddressByGps, responsvel por fazer toda a
tramitao de informaes e retornar um objeto do tipo DeliveryAddress com as informaes
de localizao do usurio (cliente).

QUADRO 32 - Cdigo fonte do mtodo getAddressByGps

Este mtodo tem como objetivo, atravs do cdigo postal (cep), efetuar uma
chamada a um servio externo, buscar as informaes e dar progresso as aes durante o
processamento.
Na linha 1 declarado o mtodo getAddressByGps que retorna um objeto do tipo
DeliveryAddress, passando dois parmetros tipo texto, sendo a latitude a longitude do local,
capturadas pelo Gps do aparelho.
Na linha 2 criado um objeto do tipo DeliveryAddress com o nome de
deliveryAddress, que ser preenchido durante o processamento e retornado no fim das
96

atividades.
Na linha 4 e 5 criado um objeto do tipo StringBuffer e concatenado a ele, o valor
da url do servio do Google Maps, a latitude, longitude e um atributo informando que o tipo
do mesmo de dispositivo mvel (&sensor=true).
Na linha 6 passado o valor do objeto StringBuffer, para a varivel do tipo texto,
nomeada de url.
Na linha 7 at a linha 18, criado um objeto do tipo HttpClient, no qual conectar
com a url presente na varivel, pegar o retorno e salva-lo na varivel nomeada
responseData.
Na linha 19 at a linha 23, os catchs onde so tratadas as excees geradas
durante a execuo do passo anterior.
Na linha 25 at a linha 27, capturado o contedo da resposta do Google Maps no
formato Json, salvo numa varivel para aps isso, deserializ-la para um objeto do tipo
Metadata atravs da biblioteca Gson.
Na linha 29 at a linha 42, percorrido linha a linha o contedo da resposta do
Google Maps, verificando quais os campos correntes e caso sejam os esperados nas
validaes, so atribudas a varivel deliveryAddress, caso no seja, segue para a prxima
linha.
Na linha 44 retornado a varivel deliveryAddress do tipo DeliveryAddress,
preenchida durante o processamento do componente.

5.4.15 Carregamento e Envio de Pedido de Lanche

Para executar o envio do pedido, o sistema realiza uma nica chamado ao


WebService, apenas aps o cliente confirmar seu pedido, ou seja, o sistema efetua as
requisies de uma vez s, carregando os dados selecionados pelo cliente e enviando -os ao
WebService.
No Quadro 33 mostra o mtodo LoadAndSendRequest, que faz todo o
carregamento e envio do pedido, sem a necessidade de parmetros, pois as informaes esto
dentro do contexto de processamento do mesmo.
97

QUADRO 33 - Cdigo fonte do mtodo LoadAndSendRequest

Este mtodo sem como objetivo finalizar o pedido de lanches, carregando as


informaes de usurio e pedidos e enviando-os para o sistema.
Na linha 1 declarado o mtodo LoadAndSendRequest.
Na linha 2 atribudo a varivel progressDialog, um novo ProgressDialog,
passando o contexto atual como parmetro, e as mensagens a serem apresentadas na tela.
Na linha 3 criado uma nova Thread, para futura criao de um mtodo para
execuo nela em separado da thread corrente.
Na linha 4 declaro o mtodo Run, dentro da contexto da nova thread criada.
Na linha 5 criado a estrutura de try catch.
Na linha 6 verificado se o usurio corrente j foi carregado, ou seja, se o cliente
j efetuou login no sistema.
Na linha 7 caso o cliente j tenha preenchido o usurio e senha nas telas iniciais,
chamado o mtodo de autenticao de usurio do WebService.
Na linha 9 chamado o mtodo startRequest do WebService e salvo o guid do
pedido na varivel guid.
Na linha 11 at a linha 19 feito um loop em todos itens do pedido verificando
qual seu tipo (se um lanche ou bebida) e chamado seu respectivo mtodo no WebService
(addSnackInRequest para lanches e addDrinkInRequest para bebidas).
Na linha 21 preenchido o valor do guid do pedido no objeto do endereo de
entrega do cliente, atravs do guid presente na varivel guid.
Na linha 22 invocado o mtodo de enviar o pedido, passando como parmetro o
98

endereo de entrega do cliente.


Na linha 23 at a linha 27 tratada os catchs do try, e estourada a exceo na
aplicao, para verificao do problema (o aplicativo prottipo e necessita realizao de
tratativas de bugs numa verso futura).
Na linha 29 iniciada a thread que realiza a execuo do mtodo Run apresentado
nos passos anteriores.

5.5 Apresentao do sistema

Neste tpico ser realizada a apresentao do sistema, que dividida em 2 mdulos,


ser apresentada as principais telas e funcionalidades do aplicativo mobile e do po rtal Web.

5.5.1 Portal Web para Gesto e Monitoramento

Primeiramente para usurio (funcionrio da empresa) possuir acesso ao sistema, o


mesmo necessita informar suas credencias para conseguir acesso ao sistema.
A Figura 34 representa o formulrio de login do usurio ao sistema, no qual, com
a insero das credenciais possibilita o acesso a central administrativa.
FIGURA 34 - Formulrio de login do usurio ao sistema Portal Web

Fonte: Prprio Autor

Aps o usurio efetuar o login no sistema, o mesmo estar com acesso total a
99

central administrativa, podendo alterar as informaes de sua empresa, tais como


informaes cadastrais, descrio, endereo e informaes em geral.
A Figura 35 representa a tela de alterao das informaes empresariais, onde
separado por abas para as distintas informaes relacionadas a mesma.
FIGURA 35 - Tela de alterao de informaes Empresariais Portal Web

Fonte: Prprio Autor

Atravs do acesso a central administrativa, o usurio pode acessar a central de


pedidos, onde na mesma possvel verificar informaes dos pedidos e informaes de
entrega do usurio emissor do mesmo.
A Figura 36 representa a tela da central de pedidos em aberto, onde o usurio, em
tempo real, visualiza todos os pedidos que esto em aberto, podendo confirmar ou cancelar
os mesmos.
100

FIGURA 36 - Tela de Central de Pedidos em Aberto Portal Web

Fonte: Prprio Autor

Aps confirmar ou cancelar o pedido, os pedidos ficam registrados e disponveis


para verificao nas abas com os seguintes nomes: Pedidos Fechados (pedidos que foram
confirmados) e Pedidos Cancelados (pedidos que foram cancelados).
A Figura 37 representa a tela de pedidos fechados, que possui as mesmas
caractersticas da tela de pedidos cancelados, servindo apenas para histrico e verificao.
FIGURA 37 - Tela de Central de Pedidos Fechados Portal Web

Fonte: Prprio Autor


101

O usurio pode manipular as bebidas presentes no cardpio, atravs de interface


altamente eficiente.
A Figura 38 representa a tela de cadastros de Bebidas, onde o usurio pode realizar
aes de Crud, manipulando seus bebidas.
FIGURA 38 - Tela de Cadastro de Bebidas Portal Web

Fonte: Prprio Autor

O usurio pode manipular os ingredientes do cardpio, atravs de uma interface


bem intuitiva e amigvel.
A Figura 39 representa a tela de cadastros de Ingredientes, onde o usurio pode
realizar aes de Crud, manipulando seus ingredientes.
102

FIGURA 39 - Tela de Cadastro de Ingredientes Portal Web

Fonte: Prprio Autor


Aps manipular os ingredientes, o usurio pode manipular os lanches e vincular
os ingredientes includos nos lanches, para que na realizao de um pedido, o cliente possa
escolher quais os ingredientes no so de seu gosto.
A Figura 40 representa a tela de cadastros de Lanches, onde o usurio pode
realizar as aes de Crud, manipulando seus lanches juntamente com seus ingredientes
vinculados.
FIGURA 40 - Tela de Cadastro de Lanches Portal Web

Fonte: Prprio Autor


Com a realizao de pedidos o usurio pode visualizar grficos de quais seus
lanches e bebidas mais pedidos, atravs do histrico de pedidos, armazenado na base de
dados do sistema.
103

A Figura 41 representa a tela de grfico de lanches mais pedidos, possuindo as


mesmas caractersticas da tela das bebidas mais pedidos, mudando apenas os dados
apresentados.
FIGURA 41 - Tela de Grficos de Lanches mais Pedidos Portal Web

Fonte: Prprio Autor


Caso o usurio possua alguma dvida, sugesto ou reclamao o mesmo pode
entrar em contato com o administrador do sistema, acessando a tela de contato, onde atravs
de um simples formulrio enviado um e-mail ao administrador do sistema.
A Figura 42 representa o formulrio de solicitao de contato.

FIGURA 42 - Tela de Contato Portal Web

Fonte: Prprio Autor


104

5.5.2 Prottipo do aplicativo Android para realizao dos pedidos

No prottipo do aplicativo Android a tela inicial bastante simples e intuitiva,


possuindo apenas duas opes visveis, que possuem o objetivo de buscar a localizao do
usurio (cliente) para realizao da busca de estabelecimentos para sua respectiva
localizao.
A Figura 43 representa a interface inicial onde o usurio pode escolher se quer
informar sua localizao via GPS ou via Cep.
FIGURA 43 - Interface Inicial Prottipo aplicativo Android

Fonte: Prprio Autor


Para o usurio (cliente) conseguir efetuar o pedido de lanche o mesmo deve
informar qual seu usurio e senha no sistema, a partir do menu de configuraes.
A Figura 44 demonstra a tela de informao de usurio e senha, onde o cliente
deve preenche-la antes de efetuar o envio do seu pedido.
FIGURA 44 - Tela de informao de usurio e senha Prottipo aplicativo Android

Fonte: Prprio Autor


105

Aps o usurio (cliente) informar o Cep ou buscar sua informao de localizao


via GPS, o sistema apresentar a seguinte interface para o usurio.
A Figura 45 representa a tela de preenchimento do nmero e observaes da
localizao do usurio (cliente), aps a captura de sua localizao, apresentando a rua e a
cidade do endereo.

FIGURA 45 - Tela de preenchimento do nmero e observaes de localizao Prottipo aplicativo


Android

Fonte: Prprio Autor

Aps a verificao de localizao do usurio (cliente), o sistema apresentar uma


lista de estabelecimentos disponveis para determinada regio, apresentando suas avaliaes
e informaes de tempo aproximado de entrega.
A Figura 46 representa a tela de apresentao de empresas disponveis de acordo
a localizao informada.
106

FIGURA 46 - Tela de apresentao de empresa disponveis Prottipo aplicativo Android

Fonte: Prprio Autor

A partir da escolha do estabelecimento a ser efetuado o pedido de lanche, o sistema


listar o cardpio do mesmo, organizando os itens do cardpio por grupos, para maior
facilidade do usurio (cliente) em identificar e escolher quais os produtos desejados, alm,
de informar menu superior o valor total do pedido corrente, presente no carrinho de compras.
A Figura 47 representa a tela de cardpio de determinada empresa, sendo um
layout padro, mudando apenas o nome da empresa e os itens do cardpio de uma para outra.
107

FIGURA 47 - Tela de apresentao de cardpio de determinada empresa Prottipo aplicativo


Android

Fonte: Prprio Autor

Ao selecionar um lanche no cardpio disponvel na empresa, o usurio (cliente)


pode adicionar o mesmo em seu carrinho, porm, se existir alguns dos ingredientes do
lanche, o usurio pode desmarcar quais os ingredientes no desejados, para que na realizao
do lanche, no seja includo no lanche.
A Figura 48 representa a tela de desmarcao de ingredientes, onde o usurio
(cliente) por exemplo, deseja que em seu Chesse Egg no seja includo presunto.
108

FIGURA 48 - Tela de desmarcao de ingredientes de lanche Prottipo aplicativo Android

Fonte: Prprio Autor


Ao clicar no cone com um carrinho de compras vermelho, presente nas outras
telas do sistema (visualizao do cardpio e do lanche a ser adicionado no carrinho), o
sistema carrega uma simples pgina, listando todos os lanches e bebidas presentes no
carrinho, informando seu valor unitrio e total do pedido.
A Figura 49 representa a tela de carrinho de compras, onde existe a possibilidade
de visualizao dos itens presentes no carrinho, dando a possibilidade de aumentar/diminuir
o nmero de unidades de cada item e tambm podendo confirmar o pedido, clicando no
boto de enviar

.
109

FIGURA 49 - Tela de carrinho de compras Prottipo aplicativo Android

Fonte: Prprio Autor

5.6 Concluso

Neste captulo primeiramente foram apresentados e explicadas as principais


tecnologias e frameworks utilizados durante o desenvolvimento deste trabalho de concluso
de curso, que auxiliaram em muito a realizao das atividades e funcionalidades.
Em seguida, foi explanado os principais cdigos fontes de mtodos e classes
responsveis pela parte de gesto e monitoramento dos pedidos de lanches, gesto dos
cardpios como um todo, por parte do Portal Web e a escolha de filtros, empresas, itens e
realizao dos pedidos de lanches por parte do aplicativo Android.
Aps isso, foram apresentadas as principais interfaces do sistema em ambos os
mdulos, separadas por tpicos, com suas respectivas descries e caractersticas.
110

6 CONSIDERAES FINAIS

Este trabalho de concluso de curso teve como objetivo principal criar um


prottipo de um aplicativo Android para pedidos de lanches e um Portal e Aplicativo para
Gesto e Monitoramento.
No desenvolvimento deste projeto foi necessrio realizar o estudo sobre
tecnologias destinadas a desenvolvimento web e mvel, onde foi identificado que as
tecnologias em conjunto com componentes externos e padres de desenvolvimento esto
aptos a possibilitar e gerao, controle e monitoramento de pedidos, atravs de dois mdulos
divididos em: Aplicativo Android e Portal Web
Atualmente notrio o crescimento na utilizao da internet no mundo todo, com
isso, gerando milhares de visitas a um Portal Web, sendo de agrado do pblico em geral,
alm, de que por no ter requisitos de sistema operacional para seu pleno funcionamento, as
empresas optam por utilizar os mesmos para facilitao de suas atividades em diversos
ambientes de trabalho.
A utilizao dos dispositivos mveis cresce aceleradamente a partir da qualidade
e agilidade, alm da grande diversidade de smartphones e tablets para todos os gostos, tudo
isso, porque as pessoas procuram utilizar equipamentos e recursos que lhe tragam agilidade,
conforto transparncias na realizao de suas atividades.
Como a demanda de pedidos as empresas, torna-se muito difcil as mesmas
gerenciarem seus produtos, clientes, pedidos e estatsticas, alm dos clientes possurem
alguns obstculos para realizao de seus pedidos, como j citados no decorrer deste
trabalho.
O objetivo deste trabalho de vem encontro justamente para que se no acabar com
estes problemas, ou ao menos melhor-los consideravelmente, por parte das empresas um
portal gerenciador de pedidos, controle de produtos, alm da possibilidade de gerao de
relatrios e avaliaes sobre a mesma e por parte dos clientes um aplicativo Android que
possibilite ao mesmo visualizar os cardpios e realizar seus pedidos, de acordo com a
empresa desejada.
111

Para chegar a este objetivo foi necessrio pesquisar sobre tecnologias web e movl,
at o ponto de aprender formas e tcnicas para desenvolvimento de um portal web e
aplicao mvel, rpida, com boa usabilidade e principalmente de qualidade. Porm a etapa
de desenvolvimento do portal web foi a mais complicada, devido a grande complexidade de
linguagens para deixar com o portal com mais interatividade e tambm por no tido
experincia alguma em desenvolvimento web anteriormente ao desenvolvimento deste
projeto.
Durante o desenvolvimento foi necessria a utilizao dos componentes grficos
Telerik e jQuery UI para desenvolvimento do portal web e a plataforma Android SDK para
desenvolvimento do aplicativo mvel, de forma mais simplificada, alm de ser, mais
sofisticada e de qualidade.
Em relao aos trs objetivos especficos, pode-se afirmar, que os mesmos foram
100% atingidos, o primeiro foi, atravs do desenvolvimento de um aplicativo mvel para
realizao de pedidos, o segundo atravs do desenvolvimento de um portal Web para gesto
e monitoramento e o terceiro est envolvido na arquitetura do projeto e base de dados onde
as informaes esto plenamente organizadas e distribudas, sendo cadastradas pelo portal
Web e apresentadas no aplicativo mvel.
Dentre as limitaes do aplicativo mvel, o que se pode destacar que o mesmo
depende de um Web Service para seu pleno funcionamento, caso este, encontra-se off-line,
o aplicativo se torna inoperante.
Sugere-se para trabalhos futuros a criao de novas funcionalidades como:
realizao de pedidos via um portal web, criao de um aplicativo mvel para outros
sistemas operacionais dos smartphones, tais como: iOS e Windows Phone.
112

REFERENCIAS BIBLIOGRAFICAS

ABRASEL. 74% dos brasileiros preferem fast-food a restaurantes tradicionais.


14/12/2011. Disponvel em
<http://www.abrasel.com.br/index.php/atualidade/noticias/946-141211-74-dos-brasileiros-
preferem-fast-food-a-restaurantes-tradicionais.html> Acessado em 02 de Fevereiro de
2013.

ADRENALINE. Comrcio eletrnico deve crescer 25% em 2013. 04/03/2013.


Disponvel em <http://adrenaline.uol.com.br/internet/noticias/15808/comercio -eletronico-
deve-crescer-25-em-2013.html>. Acessado em 1 de Maio de 2013.

AGNCIA DIGITAL. Brasil tem 99 milhes de computadores em uso. 30/08/2012.


Disponvel em:http://www.diarioonline.com.br/noticia-197517-brasil-tem-99-milhoes-de-
computadores-em-uso.html. Acessado em 25 de Agosto de 2012.

AGNCIA SEBRAE. Setor de alimentos cresce e demanda por mais capacitaes.


22/08/2008. Disponvel em
<http://www.agenciasebrae.com.br/noticia/7621520/comercio/setor-de-alimentos-cresce-e-
demanda-por-mais-capacitacoes/?indice=590>. Acessado em 3 de Fevereiro de 2013.

ALECRIM, Emerson. Criptografia. Disponvel em


<http://www.infowester.com/criptografia.php>. 11/07/2009. Acessado em 1 de Maio de
2013.

LVARES, Dbora. 2 franquias so abertas por hora no Brasil. 08/03/2012. Disponvel


em <http://exame.abril.com.br/pme/album-de-fotos/6-franquias-sao-abertas-por-hora-no-
brasil-veja-setores-mais-promissores>. Acessado em 21 de Maro de 2013.

ALVAREZ, Miguel Angel. O que .NET. Disponvel em


<http://www.criarweb.com/artigos/226.php>. 27/10/04. Acessado em 2 de Maio de 2013.

ANDROID, Developer. Get the Android SDK. Disponvel em


<http://developer.android.com/sdk/>. Acessado em 12 de Maio de 2013.

AUGUSTO, Danilo. O que JSON, como e quando utilizar?. Disponvel em


<http://www.tidbits.com.br/o-que-e-json-como-e-quando-utilizar>. Acessado em 17 de
Maio de 2013.

BAPTISTELLA, Adriano Jos. Abordando a arquitetura MVC, e Design Patterns:


Observer, Composite, Strategy. Disponvel em
<http://www.linhadecodigo.com.br/artigo/2367/Abordando-a-arquitetura-MVC-e-Design-
Patterns-Observer-Composite-Strategy.aspx>. Acessado em 14 de Maio de 2013.

BARROS, Thiago. Android domina mercado brasileiro; Windows Phone mais


113

expressivo que iPhone. 10/09/2012. Disponvel em


<http://www.techtudo.com.br/noticias/noticia/2012/09/android-domina-mercado-
brasileiro-windows-phone-mais-expressivo-que-iphone.html>. Acessado em 23 de Maro
2013.

BASHA, S. Jeelani; CABLE, Scott; GALBRAITH, Ben; HENDRICKS, Mack; IRANI,


Romin; MILBERY, James; MODI, Tarak; TOST, Andre; TOUSSAINT, Alex.
Professional java web services. Birmingham: Wrox Press, 2002.

BERNARDES, L. Como funciona o e-commerce?, As cifras do e-commerce. Revista


InfoExame. Agosto de 2006.

BEZERRA, Eduardo. Princpios de Anlise e Projeto de Sistemas com UML. Rio de


Janeiro: Campus, 2006. 250p.(livro)

BOOCH, G., et. al. UML - Guia Do Usurio - 2 Edio. Rio de Janeiro: Campus, 2006.

BOOTH, D. Web Service Architecture. Disponvel em


<http://www.w3.org/TR/2006/REC-xml-20060816/#sec-intro>. 26/09/2006. Acessado em
5 de Maio de 2013.

BUD, Andrew. Comprar pelo celular j um sucesso no Brasil . 27/08/2012. Disponvel


em:http://marcaemarketing.wordpress.com/2011/07/25/comprar-pelo-celular-ja-e-um-
sucesso-no-brasil/. Acessado em 27 de Agosto de 2012.

CAELUM. Eclipse IDE. Disponvel em <http://www.caelum.com.br/apostila-java-


orientacao-objetos/eclipse-ide/>. Acessado em 19 de Maio de 2013.

CARNEIRO, Mariana. Alimentao fora de casa cresce 15% em dez anos. 22/09/2012.
Disponvel em: <http://www1.folha.uol.com.br/fsp/mercado/67574-alimentacao-fora-de-
casa-cresce-15-em-dez-anos.shtml>. Acessado em 23 de Maro de 2013.

CASTRO, Wellington C. E-commerce - Vantagens para consumidores e para as


empresas. Disponvel em <http://www.oficinadanet.com.br/artigo/e-commerce/e-
commerce--vantagens-para-consumidores-e-para-as-empresas>. 03/10/2011. Acessado em
29 de Maro de 2013.

COCKBURN, A. Writing Effective Use Cases. Disponvel em:


<http://www2.dis.ulpgc.es/~jsanchez/MDS/EffectiveUseCases.pdf>. Acessado em 15 de
Maio de 2013.

CONSUMIDOR. Cdigo do Consumidor. LEI N 8.078, DE 11 DE SETEMBRO DE


1990. Disponvel em http://www.planalto.gov.br/ccivil_03/Leis/L8078.htm. Acessado 27
em Maio de 2013.

DCIO, Otvio C. Guia de consulta rpida: XML. So Paulo: Novatec, 2000.

DICIO. Mobilidade. Disponvel em <http://www.dicio.com.br/mobilidade/>. Acessado


em 13 de Maio de 2013.

ECOMMERCENEWS. Pesquisa global comprova que o Mobile Commerce j


114

sucesso no Brasil. Disponvel em


<http://www.ecommercenews.com.br/noticias/pesquisas-noticias/pesquisa-global-
comprova-que-o-mobile-commerce-ja-e-sucesso-no-brasil>. Acessado em 18 de Maio de
2013.

EMLIO. Criando uma pequena aplicao usando NHibernate Parte 1. Disponvel em


<http://emilio2hd.com.br/criando-uma-pequena-aplicacao-usando-nhibernate-parte-1/>.
13/12/2010. Acessado em 13 de Maio de 2013.

FARIA, Alessandro de Oliveira. Instalando o Android SDK na plataforma Linux.


Disponvel em <http://www.linhadecodigo.com.br/artigo/2811/instalando-o-android-sdk-
na-plataforma-linux.aspx>. Acessado em 13 de Maio de 2013.

FAST COMPRAS. Vantagens competitivas para o comrcio eletrnico. Disponvel em


<http://www.fastcompras.com.br/blog/archives/513>. 09/01/2011. Acessado em 28 de
Maro de 2013.

FRANCHISE, Rizzo. Balano dos Setores - Alimentao Fast Food. Disponvel em


<http://www.rizzofranchise.com.br/?pag=franchise_news&cat=1&id=335>. Acessado em
20 de Maio de 2013.

FROZZA, Angelo Augusto. PROGRAMAO PARA DISPOSITIVOS MVEIS.


Instituto Federal de Educao, Cincia e Tecnologia Catarinense, 2012. 21p. (artigo)

G1. Mundo ter mesmo nmero de celulares quanto de pessoas em 2013. Disponvel
em <http://g1.globo.com/tecnologia/noticia/2013/02/mundo-tera-mesmo-numero-de-
celulares-quanto-pessoas-em-2013.html>. Acessado em 13 de Maio de 2013.

G1. Vendas do comrcio eletrnico do Brasil devem crescer 24% em 2013 . Disponvel
em <http://g1.globo.com/tecnologia/noticia/2013/03/vendas-do-comercio-eletronico-do-
brasil-devem-crescer-24-em-2013.html>. 20/03/2013. Acessado em 30 de Maro de 2013.

GAMA, Alexandre. Introduo: JSON. Disponvel em


<http://www.devmedia.com.br/introducao-json/23166>. Acessado em 16 de Maio de 2013.

GTA, UFRG. XML - Definio. Disponvel em


<http://www.gta.ufrj.br/grad/00_2/xml/definicao.htm>. Acessado em 16 de Maio de 2013.

GUEDES, Gilleanes T.A. UML 2 Guia de Consulta Rpida Segunda Edio. So


Paulo: Novatec Editora Ltda, Novembro de 2005.

HIRT, Alan. Pro SQL Server 2008: Failover Clustering. New York, NY: Apress, 2010.

IDGNOW, UOL. Chega a 640 milhes o nmero de dispositivos iOS e Android em


uso. 29/08/2012. Disponvel em <http://idgnow.uol.com.br/mobilidade/2012/08/28/chega-
a-640-milhoes-o-numero-de-dispositivos-ios-e-android-em-uso/> Acessado em 25 de
Maro de 2013.

JNIOR, Altamiro Silva. Pagamento em dinheiro chega a 91% em compra de menor


valor. Disponvel em <http://economia.estadao.com.br/noticias/suas-contas-setor-
financeiro,pagamento-em-dinheiro-chega-a-91-em-compra-de-menor-valor,86249,0.htm>.
115

29/11/2011. Acessado em 01 de Maio de 2013.

KREGER, H. Web Services Conceptual Architecture (WSCA 1.0), IBM Software


Group, 2001.

LECHETA, Ricardo R. Google Android: aprenda a criar aplicaes para dispositivos


mveis com o Android SDK. Ed. Novatec. 2 ed. So Paulo, 2010.

LEE, Valentino; SCHNEIDER, Heather; SCHELL, Robbie. Aplicaes mveis:


arquitetura, projeto e desenvolvimento. Traduo Amaury Bentes & Deborah Rdiger.
So Paulo: Pearson Education do Brasil, 2005.

LOGISTA ONLINE. Comrcio Eletrnico. Disponvel em


<http://www.lojistaonline.com.br/wtk/pagina/al_faq?id=3>. Acessado em 28 de Maio de
2013.

LOPES, Camilo. Serie 2:Web Service, Aplicao & Benefcios. Disponvel em


<http://blog.camilolopes.com.br/serie-2-web-service-aplicacao-beneficios/>. 13/10/2008.
Acessado em 13 de Maio de 2013.

MACORATTI, Jos Carlos. Padres de Projeto : O modelo MVC - Model View


Controller. Disponvel em <http://www.macoratti.net/vbn_mvc.htm>. Acessado em 14 de
Maio de 2013.

MENDONA, Aderval. Mobilidade em anlise. Disponvel em


<http://www.devmedia.com.br/mobilidade-em-analise/3309>. Acessado em 27 de Maro
de 2013.

MENNDEZ, Andrs Igncio Martnez. Uma ferramenta de apoio ao desenvolvimento


de Web Services. Dissertao de Mestrado, Universidade Federal de Campina Grande,
curso de Ps-Graduao em Informtica, 2002. 97 p.

MEYER, Reto. Professional Android 2 Application Development. Indianapolis, Wiley


Publishing, 2010.

MICROSOFT. Guia de Introduo ao Visual Studio. Disponvel em


<http://msdn.microsoft.com/pt-br/vstudio/ff431702>. Acessado em 18 de Maio de 2013.

MONTEIRO, Antnio. Escolha seu .com. 1. Ed So Paulo: Brasport, 2005

OFICINADANET. SQL Server. Disponvel em:


<http://www.oficinadanet.com.br/artigo/501/sql_server>. Acesso em: 01/05/2011.

OFICINADANET. O que WebServices. Disponvel em


<http://www.oficinadanet.com.br/artigo/447/o_que_e_web_service>. 29 -08-2007.
Acessado em 15 de Maio de 2013.

O'HIGGINS, Niall. Android SDK on Ubuntu. 27/01/2010. Disponvel em


<http://niallohiggins.com/2010/01/27/android-sdk-on-ubuntu/>. Acessado em 23 de Maio
de 2013.
116

PALMEIRA, Thiago V. V. Conhecendo o Eclipse - Uma apresentao detalhada da


IDE. Disponvel em <http://www.devmedia.com.br/conhecendo-o-eclipse-uma-
apresentacao-detalhada-da-ide/25589>. Acessado em 20 de Maio de 2013.

PEREIRA, Gisele Floriano, Desenvolvimento do Sistema Web do Observatrio


Astronmico da UFSC. 2006. 124 f. Graduao (Bacharel) - Curso de Sistemas
deInformao, Universidade Federal De Santa Catarina, Florianpolis, 2006. Cap. 3.
Disponvel em:
<http://projetos.inf.ufsc.br/arquivos_projetos/projeto_513/monografia_gfp.pdf>. Acessado
em 11 de Maio de 2013.

PORTAL DO FRANCHASING. O criador do fast-food no Brasil. 04/2012. Disponvel


em
<http://www.portaldofranchising.com.br/site/content/revista/interna.asp?Largura Tela=144
0&CodA=158&CodAf=525&CodC=4>. Acessado em 22 de Maio de 2013.

PRADO, Leandro. Comeando com FluentNHibernate. Disponvel em


<http://www.leandroprado.com.br/2012/01/comecando-com-fluent-nhibernate/>.
04/01/2012. Acessado 15 de Maio de 2013.

PRADO, Srgio. Introduo ao funcionamento interno do Android. 15/08/2011.


Disponvel em <http://www.sergioprado.org/2011/08/15/introducao -aofuncionamento-
interno-do-android/>. Acessado em 29 de Maio de 2013.

KRANIERI, Brbara. Veja o que ORM e os frameworks disponveis para .NET.


Disponvel em <http://www.princiweb.com.br/blog/programacao/veja-o-que-e-orm-e-os-
frameworks-disponiveis-para-net/>. 16/04/2013. Acessado em 14 de Maio de 2013.

RECKZIEGEL, Mauricio. Entendendo os WebServices. Disponvel em


<http://imasters.com.br/artigo/4245/web-services/entendendo-os-webservices/>.
23/06/2006. Acessado em 12 de Maio de 2013.

ROMAGNOLO, Cesar Augusto. O que Criptografia. Disponvel em


<http://www.oficinadanet.com.br/artigo/443/o_que_e_criptografia>. 02/05/2013.
Acessado em 20 de Maro de 2013.

SAMPAIO, Cleuton. Web 2.0 e mashups: Reinventando a Internet. Brasport, 2007.

SARDINHA, Claudia. Como funciona o PayPal?. Disponvel em


<http://www.techtudo.com.br/dicas-e-tutoriais/noticia/2012/01/como-funciona-o-
paypal.html>. 23/01/2012. Acessado em 20 de Maro de 2013.

SHOPPEREXPERIENCE. Pesquisa indita da Shopper Experience revela opinio do


brasileiro sobre as redes de fast-food. Disponvel em
<http://www.shopperexperience.com.br/DaVinci/arquivos/PressShopper_FastFood_V1.pd
f>. Acessado em 16 de Maio de 2013.

SILVINO, Antonio Rubens Silva. Liquigs marcou presena no Conarec 2012

Liquigs marcou presena no Conarec 2012. 28/08/2012. Disponvel


em:http://www.liquigas.com.br/wps/portal/!ut/p/c0/04_SB8K8xLLM9MSSzPy8xBz9CP0
117

os3hvPwMjIw93IwMDFzcjA6OgoADLQA8XQ-
cAE_2CbEdFABkXeDQ!/?PC_7_KN022HG20OVI40270TOD3A1OE7_WCM_CONTE
XT=/wps/wcm/connect/Web%20Content/liquigas/menu/comunicacao/noticias/liquigas+m
arcou+presenca+no+conarec+2012. Acessado em 28 de Agosto de 2012.

STRICKLAND, Jonathan. Como funciona o Android (Google Phone). 16/09/2009.


Disponvel em <http://informatica.hsw.uol.com.br/google-phone2.htm>. Acessado em 29
de Maio 2013.

SUN. Java BluePrints: Model-View-Controller. Apresenta uma descrio sobre a


arquitetura MVC. Disponvel em: <http://java.sun.com/blueprints/patterns/MVC-
detailed.html>. Acessado em 12 de Maio de 2013.

TEMPLEMAN, J.; VITTER, D. Visual Studio .NET: The .NET Framework Black
Book. Scottsdale, Arizona: Coriolis, 2007.

TISELVAGEM. Desenvolvendo para Android: Arquitetura Android. Disponvel em


<http://www.tiselvagem.com.br/geral/desenvolvendo-para-android-arquitetura-android/>.
Acessado em 20 de Maio de 2013.

TURTSCHI, Adrian. C#.NET: guia do desenvolvedor web. 2. Ed. So Paulo: Alta


Books, 2004. 517p.

VISA. Pagamentos eletrnicos estimulam crescimento econmico no Brasil.


Disponvel em <http://www.visa.com.br/conteudo.asp?pg=1584>. 13/03/2013. Acessado
em 3 de Maio de 2013.

W3. Extensible Markup Language (XML). Disponvel em <http://www.w3.org/XML/>.


Acessado em 15 de Maio de 2013.

WAZLAWICK, Raul Sidnei. Anlise e projeto de sistemas de informao orientados a


objetos. 2. Ed. Rio de Janeiro: Elsevier, Editora Campus, 2011.

WIKIPEDIA. Fast-food no Brasil. 29/04/2012. Disponvel


em<http://pt.wikipedia.org/wiki/Fast-food_no_Brasil> Acessado em 20 de Maio de 2013.

FARIA, Alessandro de Oliveira. Instalando o Android SDK na plataforma Linux.


Disponvel em <http://www.linhadecodigo.com.br/artigo/2811/instalando -o-android-sdk-
na-plataforma-linux.aspx>. Acessado em 13 de Maio de 2013.

TISELVAGEM. Desenvolvendo para Android: Arquitetura Android. Disponvel em


<http://www.tiselvagem.com.br/geral/desenvolvendo-para-android-arquitetura-android/>.
Acessado em 20 de Maio de 2013.

LEE, Valentino; SCHNEIDER, Heather; SCHELL, Robbie. Aplicaes mveis:


arquitetura, projeto e desenvolvimento. Traduo Amaury Bentes & Deborah Rdiger.
So Paulo: Pearson Education do Brasil, 2005.
118

APNDICES

APNDICE A - ARTIGO ............................................................................................... 119


119

APNDICE A ARTIGO

Prottipo de um Aplicativo Android para Pedidos de Lanches e


um Portal Web para Gesto e Monitoramento
Sergio Antonio Fontana Junior, Alexandre Rech

Sistemas de Informao Universidade do Planalto Catarinense (UNIPLAC)

88500-000 Lages SC Brasil

sergiofontana1903@gmail.com, rech@gmail.com
Abstract. Nowadays people want and choose to make use of services that bring greater ease,
flexibility and quality in their activities in general. When a person wishes to make a request for
food, often by the same meets with difficulties for reasons of traffic congestion, busy telephone
lines and high flow of people competing with the same desires. Therefore, the objective of this
work is the development of the implementation of a prototype mobile application on the Android
platform, to make orders of snacks by the client and a Web portal for the analysis, management
and monitoring and aid in decision making, by employees of the company.
Resumo. Atualmente as pessoas desejam e optam por usufruir de servios que lhe tragam mais
facilidade, flexibilidade e qualidade em suas atividades em geral. Quando uma pessoa deseja
realizar um pedido alimentcio, por muitas vezes a mesma encontra-se com dificuldades por
questes de transito, congestionamento, linhas telefnicas ocupadas e alto fluxo de pessoas
concorrendo com as mesmas vontades. Com isso o objetivo deste trabalho consiste no
desenvolvimento de na implementao de um prottipo de aplicativo mvel na plataforma
Android, para realizao de pedidos de lanches por parte do cliente e um portal Web para a
anlise, gesto e monitoramento e auxlio na tomada de deciso, por parte dos funcionrios
da empresa.

1. Introduo
Nos ltimos anos o crescimento de empreendimentos como restaurantes, bares,
lanchonetes e outros estabelecimentos de produo de alimentos tem sido maior que a capacidade
de atendimento da Agncia Nacional de Vigilncia Sanitria (Anvisa) e de instituies que
qualificam esse tipo de atividade (AGNCIA SEBRAE, 2008).
Com o aumento do nmero de estabelecimentos alimentcios, aumenta o nmero de opes
e possibilidades de escolha do cliente de acordo com sua vontade no momento, mesmo no tendo
muitas formas para realizao de seus pedidos (celulares, telefones e computadores), sendo os
celulares, os campees no quesito crescimento atualmente.
Conforme a reportagem publicada por G1 (2013), de acordo com as estimativas sobre a
penetrao do servio de telefonia mvel no planeta, at o fim de 2013, o mundo ter quase sete
bilhes de linhas ativas. Isso representa praticamente um celular por pessoa, mesmo que a taxa
utilizao seja muito maior em determinados locais e menor em outros.
120

O nmero de usurios domsticos com computador no Brasil ultrapassa 99 milhes e o


nmero de usurio com celulares chega a incrvel marca de 87% presente dos lares brasileiros,
perdendo apenas para a televiso (AGNCIA BRASIL, 2012).
Segundo SHOPPER EXPERIENCE (2011), foi realizada uma pesquisa sobre a opinio
sobre as empresas de fast-food no Brasil onde foi conduzida com 5.815 pessoas entre 18 e 55 anos
em todo o pas revela os hbitos de consumo e preferncias dos clientes de alimentao rpida. O
estudo mostra que a preferncia pelo fast-food em detrimento do restaurante tradicional se d, para
74% dos entrevistados, pela convenincia, rapidez e agilidade na refeio.
Tendo em vista o alto nmero de tecnologias atualmente disponveis no mercado, chegou-
se concluso que o ramo alimentcio um mercado com grande potencial de crescimento, que por
muitas vezes, carece de formas para realizao pedidos, causando dificuldades para o clientes tais
como: tempo de espera, linhas ocupadas, trnsito e incomodo, alm tambm da falta de
conhecimento por parte da empresa sobre os hbitos e preferncias dos clientes.
Com base nestas caractersticas e evidncias, a proposta deste trabalho o desenvolvimento
de um sistema de gesto de pedidos de lanches, capaz de aproximar o cliente do estabelecimento,
evitando toda a burocracia do negcio, atravs de um prtico e completo software, capaz de oferecer
ofertas aos clientes e diferentes formas de pagamento, alm de auxiliar as empresas na gesto dos
pedidos, possibilitando maior controle e auxilio na tomada de deciso.

2. Android e os Pedidos de Lanches no Brasil


Desenvolvida pela Shopper Experience, com a pesquisa Fast-Food no Brasil, ao
questionar quais so os trs fatores mais importantes para a escolha de um fast-food, a pesquisa
Fast-Food no Brasil aponta que 56% dos consumidores costumam creditar como fator mais
importante para a escolha o sabor da comida; e 27% consideram mais importante a higiene do
local. Na hora de escolher o restaurante fast-food, o fator preo pesa pouco: apenas 3% dos
entrevistados consideraram esse quesito importante. Fila, visual da loja e apresentao dos
funcionrios tambm no pesam muito: apenas 1% dos entrevistados considerou cada um desses
tpicos importante no momento da escolha, segundo a pesquisa (ABRASEL, 2011).
As franquias de redes de Fast-Foods aumentaram sua participao no mercado brasileiro
em 2011 e passaram a representar 8% do Produto Interno Bruto Nacional (PIB) o faturamento
foi de 286 bilhes de reais, segundo pesquisa realizada consultoria Rizzo Franchise (LVARES,
2012).
Segundo Carneiro (2012), segundo dados da Abia (Associao Brasileira da Indstria de
Alimentos), o setor de servios de alimentao faturou R$ 235 bilhes em 2011, com crescimento
de 16% em relao a 2010. Na ltima dcada, os servios de alimentao cresceram em mdia
15% ao ano no Brasil, e o varejo de produtos alimentcios, 12%.
Dentre as formas de pedidos disponveis no mercado, pode-se citar o pedido indo ao local,
a mais convencional e primitiva, pedidos via telefone que por muitas vezes encontra-se com as
linhas ocupadas e a melhor e atual que a realizao de pedidos via Internet atravs de apenas um
celular, possuindo acesso total a diversos estabelecimentos juntamente com seus cardpios e
promoes atravs de um nico aplicativo.
A gesto dos pedidos por parte dos estabelecimentos geralmente realizada com a
comanda de papel, possuindo tambm, comanda em posse do cliente, do caixa do estabelecimento
e softwares, alm de Portal de Gesto e Estatsticas na Web para os administradores das Empresas,
que a maior inovao tecnolgica devido sua agilidade, qualidade e transparncia do servio
sendo disponibilizado, devido a central de pedidos online que possibilita as empresas que possuem
filiais podem acompanhar avaliar e analisar a evoluo de suas filiais em tempo real e a gerao de
121

relatrios que fazem uma grande diferena para os estabelecimentos, por possuir informaes
detalhadas e minuciosas sobre os gostos e preferncias dos clientes.
3. Comrcio Eletrnico e Ofertas On-Line
Segundo LOGISTA ONLINE (2013), o comrcio eletrnico ou e-commerce a compra e
venda de mercadorias ou servios por meio da Internet, onde as chamadas Lojas Virtuais oferecem
seus produtos e formas de pagamento online. O comrcio eletrnico um meio facilitador dos
negcios, tornando o processo de venda fcil, seguro, rpido e transparente, reduzindo os custos
das empresas que atuam neste segmento e estimulando a competitividade.
As vendas no comrcio eletrnico brasileiro devem atingir R$ 28 bilhes neste ano,
quando o segmento pode superar 50 milhes de consumidores, conforme projees traadas pela
empresa especializada em dados do setor, e-bit (G1, 2013).
Em 2012, foi realizado ao longo do ano 66,7 milhes de pedidos, um volume 24,2% maior
do que o registrado no ano anterior. Conforme a e-bit, 42,2 milhes de pessoas j fizeram, ao
menos, uma compra on-line no Brasil. O tquete mdio em 2012 fechou em R$ 342 (G1, 2013).
Sobre os principais benefcios disponibilizados para as empresas, segundo Castro (2011),
so custos mais baixos para alcanar um pblico maior, aberto 24 horas por dia, novos mtodos
de distribuio, contato direto com o cliente, mais informaes sobre os consumidores e marketing
personalizado.
O e-commerce traz grandes benefcios para os clientes, para os consumidores e tambm
para os fornecedores. Os grandes ganhos para os consumidores proporcionar compras mais
eficientes, oferecendo um maior leque de escolhas, preos mais baixos e um alto nvel de servios
personalizados. Tambm oferece novos tipos de produtos e servios com novas maneiras de
adquiri-los (CASTRO, 2011).
Dentre as formas de pagamento utilizadas no comrcio eletrnico, podem ser destacadas, o
dinheiro, que no momento da entrega do pedido realizado o pagamento feito em dinheiro vivo,
boleto bancrio, que aps ser pago o pedido entregue, carto de crdito/dbito, um dos mais
utilizados mundialmente, alm do Pay-Pal e PagSeguro que so plataformas de pagamento online.
Os cardpios e ofertas no ramo alimentcio so divididos em 3 mdulos, um cardpio
online personalizado, que as prprias empresas montam seus cardpios de forma totalmente
exclusiva, possuindo um design limpo e personalizvel, o segundo o mdulo de agendamento de
pedidos on-line, responsvel por aproximar empresa-cliente atravs de um portal web ou aplicao
mvel para realizao de pedidos de forma instantnea, e por ltimo o mdulo para ofertas e
promoes atualizadas em tempo real, que atravs de um aplicativo mvel ou portal web,
apresente quais so as principais promoes e ofertas de diversas empresas ao mesmo tempo.
4. Modelagem do sistema
4.1 Viso Geral
O objetivo do sistema possibilitar a realizao de pedidos de lanches por parte dos clientes
e a gesto dos pedidos por parte das empresas. Dentre estas caractersticas foram divididos em 2
mdulos, sendo o aplicativo mvel e o portal web.
4.2 Requisitos
Para a construo deste sistema, foram nescessrias as implementaes dos seguintes
requisitos funcionais e no funcionais, apresentados abaixo.
RF 001 Permitir empresas enviar feed-back para o Administrador
RF 002 Validar usurio e senha
RF 003 Permitir o filtro de informaes
122

RF 004 Verificar conexo com o WebService


RF 005 Verificar conexo com a Internet
RF 006 Validar Cep
RF 007 Validar token de acesso do usurio
RF 008 Processar Informaes de Localizao
RF 009 Aprovar/Cancelar Pedidos
RF 010 Enviar Pedido
RF 011 Gerar relatrios de bebidas e lanches mais pedidos

RNF 001 - Trafegar informaes com o WebService no formato Json


RNF 002 - Mdulos restritos a tipos especficos de usurios
RNF 003 - Funcionar em todas as verses do Android
RNF 004 Validar Informaes Digitadas
4.3 Casos de Uso
Abaixo sero apresentados todos os casos de uso necessrios para a criao deste sistema.

4.3 Mdulo Aplicativo Android


Este mdulo compreende um aplicativo mvel na plataforma Android para utilizao do
cliente, para visualizaes dos cardpios de todas as empresas cadastradas, realizao de pedidos e
possibilidade de avaliaes dos servios prestados por parte da empresa.
Na Figura 1 apresentada a baixo, so mostrados todos os casos de uso do mdulo do
aplicativo Android.

Figura 1. Viso Geral Casos de Uso Mdulo Aplicativo Android


123

4.3 Mdulo Portal Web


Este mdulo compreende em um Portal Web para utilizao das empresas, para cadastro de
seus produtos (itens do cardpio), para avaliao dos pedidos, visualizao de relatrios e
avaliaes realizadas pelos clientes, para que atravs disso os mesmos possam tomar decises.
Na Figura 2 apresentada a baixo, so mostrados todos os casos de uso do mdulo do Portal
Web.

Figura 2. Viso Geral Casos de Uso Mdulo Portal Web


5. Implementao do Sistema

Para implementao do sistema foram necessrias a utilizao de bibliotecas e tecnologias


externas, dentre elas: Telerik, AutoMapper, nHibernate e Json .NET, que serviram para facilitar e
engrandecer a estrutura, performance e qualidade deste projeto.
No Quadro 1 mostra o mtodo para criao da sesso do nHibernate, utilizando a dll
FluentNHibernate.dll, que quem faz toda a criao do contexto da transao para acesso ao banco
de dados, na qual foi utilizado durante todo o desenvolvimento deste projeto e testes ps-
implementao.
124

Quadro 1. Criao da Sesso nHibernate

A apresentao e manipulao de registros durante o desenvolvimento deste


projeto foi realizada atravs de grids, para a implementao destas foi utilizada o componente
grfico Telerik. No Quadro 2 apresentado um trecho de cdigo onde utilizado estes
recursos.
Quadro 2. Trecho de Cdigo do Componente Telerik

O transporte de dados entre da aplicao mobile feito atravs do formato Json, um


formato leve e compacto, foi utilizado a dll Newtonsoft.Json.dll, conforme o Quadro 3, sobre
o mtodo SendCrossTalkToWebService, utilizando-os dos mtodos desta dll.
125

Quadro 3. Cdigo fonte do mtodo SendCrossTalkToWebService

O Quadro 4 apresenta o mtodo para busca de endereo via GPS, que atravs da api
do google, consegue exatamente qual a localizao do cliente.
Quadro 4. Cdigo fonte do mtodo GetAddressByGPS

O Quadro 5 mostra o mtodo GetSnacksByEnterprise que busca de lanches de


determinada empresa atravs de uma chamada ao WebService, onde o mesmo atravs do Id
da empresa, buscas todos os lanches, separa em grupos e retorna em formato Json.
126

Quadro 5. Cdigo fonte do mtodo GetSnacksByEnterpri se

6. Apresentao do Sistema
O sistema foi dividido em 2 mdulos, onde sero apresentadas as principais telas do
sistema.
6.1 Aplicativo Android
No prottipo do aplicativo Android a tela inicial bastante simples e intuitiva, possuindo
apenas duas opes visveis, que possuem o objetivo de buscar a localizao do usurio (cliente)
para realizao da busca de estabelecimentos para sua respectiva localizao.
A Figura 3 representa a interface inicial onde o usurio pode escolher se quer informar sua
localizao via GPS ou via Cep.

Figura 3. Interface Inicial Aplicativo Android


127

Aps a verificao de localizao do usurio (cliente), o sistema apresentar uma lista de


estabelecimentos disponveis para determinada regio, apresentando suas avaliaes e
informaes de tempo aproximado de entrega.
A Figura 4 representa a tela de apresentao de empresas disponveis de acordo a
localizao informada.

Figura 4. Tela de Apresentao de Empresas Disponveis

A partir da escolha do estabelecimento a ser efetuado o pedido de lanche, o sistema listar


o cardpio do mesmo, organizando os itens do cardpio por grupos, para maior facilidade do
usurio (cliente) em identificar e escolher quais os produtos desejados, alm, de informar menu
superior o valor total do pedido corrente, presente no carrinho de compras.
A Figura 5 representa a tela de cardpio de determinada empresa, sendo um layout padro,
mudando apenas o nome da empresa e os itens do cardpio de uma para outra.
128

Figura 5. Tela de Cardpio de Determinada Empresa

6.1 Portal Web

Primeiramente para usurio (funcionrio da empresa) possuir acesso ao sistema, o mesmo


necessita informar suas credencias para conseguir acesso ao sistema.
A Figura 6 representa o formulrio de login do usurio ao sistema, no qual, com a insero
das credenciais possibilita o acesso a central administrativa.

Figura 6. Tela de Central de Pedidos


129

Atravs do acesso a central administrativa, o usurio pode acessar a central de pedidos,


onde na mesma possvel verificar informaes dos pedidos e informaes de entrega do usurio
emissor do mesmo.
A Figura 7 representa a tela da central de pedidos em aberto, onde o usurio, em tempo
real, visualiza todos os pedidos que esto em aberto, podendo confirmar ou cancelar os mesmos.

Figura 7. Tela de Central de Pedidos

O usurio pode manipular os lanches e vincular os ingredientes includos nos lanches, para
que na realizao de um pedido, o cliente possa escolher quais os ingredientes no so de seu
gosto.
A Figura 8 representa a tela de cadastros de Lanches, onde o usurio pode realizar as aes
de Crud, manipulando seus lanches juntamente com seus ingredientes vinculados.

Figura 8. Tela de Cadastro de Lanches


Com a realizao de pedidos o usurio pode visualizar grficos de quais seus lanches e
bebidas mais pedidos, atravs do histrico de pedidos, armazenado na base de dados do sistema.
130

A Figura 9 representa a tela de grfico de lanches mais pedidos, possuindo as mesmas


caractersticas da tela das bebidas mais pedidos, mudando apenas os dados apresentados.

Figura 9. Tela de Grficos de Lanches mais Pedidos

7.0 Concluso

Este trabalho de concluso de curso teve como objetivo principal criar um prottipo de um
aplicativo Android para pedidos de lanches e um Portal e Aplicativo para Gesto e
Monitoramento.
Atualmente a utilizao da internet, seja para visualizao de um portal web ou para a
utilizao de um aplicativo mvel, vem crescendo a nveis altssimos, sendo um mercado com
grande potencial econmico.
Como a demanda de pedidos as empresas, torna-se muito difcil as mesmas gerenciarem
seus produtos, clientes, pedidos e estatsticas, alm dos clientes possurem alguns obstculos para
realizao de seus pedidos, como j citados no decorrer deste trabalho.
O objetivo deste trabalho de vem encontro justamente para que se no acabar com estes
problemas, ou ao menos melhor-los consideravelmente, por parte das empresas um portal
gerenciador de pedidos, controle de produtos, alm da possibilidade de gerao de relatrios e
avaliaes sobre a mesma e por parte dos clientes um aplicativo Android que possibilite ao mesmo
visualizar os cardpios e realizar seus pedidos, de acordo com a empresa desejada.
Para chegar a este objetivo foi necessrio pesquisar sobre tecnologias web e movl, at o
ponto de aprender formas e tcnicas para desenvolvimento de um portal web e aplicao mvel,
rpida, com boa usabilidade e principalmente de qualidade. Porm a etapa de desenvolvimento do
portal web foi a mais complicada, devido a grande complexidade de linguagens para deixar com o
portal com mais interatividade e tambm por no tido experincia alguma em desenvolvimento
web anteriormente ao desenvolvimento deste projeto.
8.0 Referncias
ABRASEL. 74% dos brasileiros preferem fast-food a restaurantes tradicionais.
14/12/2011. Disponvel em <http://www.abrasel.com.br/index.php/atualidade/noticias/946-
141211-74-dos-brasileiros-preferem- fast- food-a-restaurantes-tradicionais.html> Acessado em 02
de Fevereiro de 2013.
131

AGNCIA DIGITAL. Brasil tem 99 milhes de computadores em uso. 30/08/2012.


Disponvel em:http://www.diarioonline.com.br/noticia-197517-brasil-tem-99-milhoes-de-
computadores-em-uso.html. Acessado em 25 de Agosto de 2012.

AGNCIA SEBRAE. Setor de alimentos cresce e demanda por mais capacitaes.


22/08/2008. Disponvel em <http://www.agenciasebrae.com.br/noticia/7621520/comercio/setor-
de-alimentos-cresce-e-demanda-por-mais-capacitacoes/?indice=590>. Acessado em 3 de
Fevereiro de 2013.
LVARES, Dbora. 2 franquias so abertas por hora no Brasil. 08/03/2012. Disponvel
em <http://exame.abril.com.br/pme/album-de-fotos/6-franquias-sao-abertas-por-hora- no-brasil-
veja-setores-mais-promissores>. Acessado em 21 de Maro de 2013.
CARNEIRO, Mariana. Alimentao fora de casa cresce 15% em dez anos. 22/09/2012.
Disponvel em: <http://www1.folha.uol.com.br/fsp/mercado/67574-alimentacao- fora-de-casa-
cresce-15-em-dez-anos.shtml>. Acessado em 23 de Maro de 2013.
CASTRO, Wellington C. E-commerce - Vantagens para consumidores e para as
empresas. Disponvel em <http://www.oficinadanet.com.br/artigo/e-commerce/e-commerce--
vantagens-para-consumidores-e-para-as-empresas>. 03/10/2011. Acessado em 29 de Maro de
2013.
G1. Mundo ter mesmo nmero de celulares quanto de pessoas em 2013. Disponvel
em <http://g1.globo.com/tecnologia/noticia/2013/02/mundo-tera- mesmo-numero-de-celulares-
quanto-pessoas-em-2013.html>. Acessado em 13 de Maio de 2013.
LOGISTA ONLINE. Comrcio Eletrnico. Disponvel em
<http://www.lojistaonline.com.br/wtk/pagina/al_faq?id=3>. Acessado em 28 de Maio de 2013.
SHOPPEREXPERIENCE. Pesquisa indita da Shopper Experience revela opinio do
brasileiro sobre as redes de fast-food. Disponvel em
<http://www.shopperexperience.com.br/DaVinci/arquivos/PressShopper_FastFood_V1.pdf>.
Acessado em 16 de Maio de 2013.