Você está na página 1de 10

Umaaplicaoparacontroledepedidosemrestaurantespara

PocketPC
Felipe J acinto M. Aben-Athar, J os Roberto P. da Silva J unior, Fabio C. Salame Silva
Instituto de Estudos Superiores da Amaznia (IESAM)
66055-260 Belm PA Brasil
{f el i pej ma, j r pr adoj uni or }@gmai l . com, f cs@pr of . i esam- pa. edu. br

Abstract. Currently, there are more than one billion mobile computerized devices in
service around the world, such as cell phones and palmtops that are capable of executing
sophisticated software applications. Among the software development platforms available
for this kind of device, one of them has been capturing the public attention on the last two
years because of its compatibility and integration with the worlds most popular desktop
operating system: the Windows Mobile platform. This work describes the development of a
Pocket PC/Windows Mobile application designed to serve as a register tool for the orders
meals in a restaurant. The software intends to demonstrate the potential of mobile
computing as well as to show the features of one of the most popular software
development tools in this area.
Resumo. Atualmente existem mais de um bilho de dispositivos computacionais mveis no
mundo, como telefones celulares e palmtops com capacidade para executar aplicaes de
software sofisticadas. Dentre as plataformas de programao para estes dispositivos uma
chama a ateno por ser amplamente compatvel com o sistema operacional mais popular
do mundo: a plataforma Windows Mobile. Este artigo descreve a implementao de uma
aplicao do tipo Pocket PC/Windows Mobile para controle de pedidos em restaurantes.
O software destina-se a ilustrar o potencial de uso da computao mvel e as
caractersticas de uma das tecnologias de desenvolvimento mais populares.
1. Introduo
Desde que a Apple anunciou o Newton no longnquo ano de 1993, e popularizou a sigla PDA
(Assistente Pessoal Digital ou Personal Digital Assistant), muita coisa mudou. A nova gerao de
dispositivos handhelds, assim tambm denominados, possui telas de excelente qualidade,
microprocessadores velozes, executam programas complexos de escritrio, executam arquivos de
msica (MP3), gravam voz, rodam jogos e fotografam. (GRECO, 2000).
Um novo tipo de dispositivo surgiu da fuso entre PDAs e celulares, os chamados
SmartPhones, que combinam o sistema operacional e aplicativos desenvolvidos para o mercado de
handhelds com a tecnologia de comunicao de um telefone celular comum, originando aparelhos
hbridos que otimizam a produtividade do usurio.
Com o barateamento contnuo dos microprocessadores e dos chips de memria, os PDAs e
Smartphones se tornaram mais acessveis do ponto de vista dos custos de aquisio e manuteno, o
que motiva seu aproveitamento em diversas aplicaes comerciais.
Como acontece em todas as reas do setor de tecnologia da informao, o desenvolvimento
de plataformas de software importante para o barateamento e a conseqente popularizao dos
aplicativos destinados determinada rea. A vantagem de se ter plataforma de software que as
aplicaes no precisam ser reescritas para diferentes tipos de aparelhos necessitam apenas de
leves adaptaes para satisfazer as necessidades de um aparelho especfico. Com a computao



mvel no diferente e trs padres majoritrios se impem atualmente no panorama mundial, a
saber: a plataforma Symbian, o BREW e o Windows Mobile.
Symbian o nome dado a um projeto da Nokia, Motorola, Ericsson e pela fabricante inglesa
de sistemas embarcados Psion, que originalmente desenvolveu o primeiro sistema operacional de 32
bits para handhelds, o EPOC32. (IIDA, 2007)
O objetivo da iniciativa era desenvolver uma verso do EPOC32 especfica para aparelhos
celulares, o produto resultante foi chamado de Symbian OS. Trata-se de um sistema operacional 32
bits multitarefa robusto, desenhado especialmente para o ambiente sem fio e para as restries dos
telefones celulares. De 1999 at 2005 a Panasonic, Sony Ericsson, Siemens e Samsung juntaram-se
ao grupo, e em 2004 juntos adquiriram a Psion, e investiram cerca de $100 milhes de dlares no
grupo. Atualmente a Nokia detm a maior parte do capital da Symbian com 47,9%, seguida pelas
empresas Ericsson com 15,6%, Sony Ericsson com 13,1%, Panasonic com 10,5%, Siemens com
8,4% e Samsung com 4,5%. (WIKIPEDIA.a, 2007).
A plataforma Symbian dirigida para o desenvolvimento de aplicaes compromissadas
com padres abertos, principalmente os definidos pela IETF ( Internet Engineering Task Force) e
W3C (World Wide Web Consortium). Suporta o desenvolvimento principalmente em C++e J ava,
facilitado pelo uso de kits de desenvolvimento liberados pelos scios da iniciativa.
A plataforma BREW Binary Runtime Environmente for Wireless, (ambiente binrio de
tempo de execuo para aplicativos sem fio), da Qualcomm, oferece uma soluo completa para
configurao de dispositivos e desenvolvimento, distribuio, faturamento e pagamento de
aplicativos. (WIKIPEDIA.b, 2007).
O BREW est presente em todos os chips CDMA fabricados pela Qualcomm e
comercialmente foi lanado por algumas operadoras no mundo, como a Verizon, nos Estados
Unidos e a VIVO no Brasil.
A grande questo em torno da plataforma que o custo de desenvolvimento no BREW
mais alto, pois toda aplicao tem que ser testada e certificada pela Qualcomm para garantir que
no se introduza na rede aplicaes mal intencionadas ou simplesmente mal feitas e com isso
ponha-se em risco toda a credibilidade da plataforma BREW. O custo inicial para o desenvolvedor
de cerca de US$ 400,00 apenas para adquirir um pacote de testes que inclui 100 requisies para
testar sua aplicao, depois da aplicao ser testada necessrio comprar uma assinatura digital da
Qualcomm para certificar a aplicao (WIKIPEDIA.b, 2007). Esse custo inicial alto para
programadores hobbistas, por exemplo acabou por comprometer a popularidade da plataforma.
Alm disso, o BREW est restrito a celulares CDMA que contam hoje com apenas 13% do mercado
mundial, segundo dados contabilizados at o primeiro trimestre de 2007. (GSMWorld, 2007).
J a plataforma Windows Mobile caracterizada pela utilizao de um dispositivo de
hardware padro chamado de Pocket PC, que um PDA preparado para executar exclusivamente o
sistema operacional Windows Mobile. Esse sistema, apresentado em 2003, traz a interface que
praticamente todos os usurios de computadores pessoais e empresariais esto acostumados
(Windows). Aplicativos como o: Word, Excel e PowerPoint, Internet Explorer, Media Player,
Terminal Server Client, Live Messenger, so fornecidos em verses customizadas especificamente
para utilizao na plataforma mvel. A grande vantagem dessa plataforma a integrao com o
ambiente de escritrio comum a maioria dos usurios de PCs. (DALUPPO, 2004).
A ferramenta mais utilizada para desenvolver aplicaes para Pocket PC o Visual Studio
.NET, pois contem todos os requisitos para o desenvolvimento, debug e deploy. E no precisa do
necessariamente de um Pocket PC (hardware), pois o Visual Studio .NET dispe de um emulador.
Neste trabalho iremos focalizar a plataforma Visual Studio 2005 e nas suas tecnologias relacionadas
ao desenvolvimento de software para computao desktop e mvel: C#.
A linguagem C# considerada uma poderosa linguagem orientada a objetos, fornecida pela
Microsoft, mas padronizada pelo instituto americano nacional de padres (ANSI). uma linguagem
que sofreu muita influncia de suas predecessor as mais recentes, notadamente do Delphi e J ava,
agregando assim o que h de melhor atualmente em termos de flexibilidade de codificao.



Diante do exposto, considera-se relevante pesquisar as tecnologias existentes para o
desenvolvimento de aplicaes para dispositivos mveis, uma vez que o mercado de software
voltado ao setor de aplicaes mveis est amadurecendo rapidamente e o desenvolvedor tem
importncia decisiva nesse processo.
Assim, este trabalho tem por objetivo conhecer os conceitos, tecnologias e ferramentas
orientadas para o desenvolvimento de aplicaes para dispositivos mveis.
Em face da extenso das tecnologias mencionadas alhures e do escopo e amplitude deste
artigo, faz-se mister escolher uma plataforma apenas para aprofundar conhecimentos, assim este
trabalho optou por focalizar seus esforos no contexto da plataforma Windows Mobile, em razo da
notoriedade do sistema Windows e pelo crescimento dos aplicativos comerciais ligados a essa
plataforma.
Alm desta seo introdutria, este artigo est dividido em mais cinco sees: A segunda
seo descreve o cenrio da aplicao que se tomou como base para coleta de requisitos; a terceira
seo apresenta as fases de desenvolvimento do prottipo; a quarta seo contm uma descrio
interativa do funcionamento do programa; a quinta seo menciona os testes conduzidos para
validar a aplicao. Finalmente a seo seis apresenta as consideraes finais e sugestes de
trabalhos futuros.
2. Descrio do estudo de caso
O Software batizado como DUTY, se constitui em uma aplicao destinada a restaurantes, bares e
lanchonetes, e compreendem uma aplicao Atendente (utilizada no Pocket PC) e outras duas
aplicaes Windows, batizadas de Cozinha e Caixa, funcionando de forma sincronizada com o
fim de evitar erros de preenchimento de pedidos e demora no atendimento. A figura 1 demonstra a
estrutura de nossa aplicao.

Figura 2 - Estrutura da aplicao
2.1 Requisitos de hardware e software do ambiente
A estrutura bsica de hardware e software necessria para a implantao e execuo de um sistema
que tem como objeto uma aplicao mvel para o ambiente Windows a seguinte: Um Pocket PC,
que um PDA projetado para executar o sistema operacional Windows Mobile, a implantao do
Microsoft .NET Compact Framework 2.0, para rodar o aplicativo no Pocket PC; Um ou mais
computadores de mesa que hospedaro o sistema gerenciador de banco de dados, caso o aplicativo
seja projetado para fazer uso de uma base de dados servidora; a instalao do .NET Framework 2.0
no lado servidor; Finalmente, o Pocket PC tem que possuir capacidade para se conectar sem fio a
uma rede, tipicamente essa capacidade se traduz em disponibilidade de conexo bluetooth,
GSM/GPRS/Edge (acesso por rede celular) ou IEEE 802.11.x (Wlan).
No caso de uso projetado, dois PCs necessitam ter o Microsoft .NET Framework 2.0 instalado, sob
o qual os aplicativos Caixa e Cozinha sero executados; o computador servidor requer o
Windows 2000 Server com o framework .NET 2.0 ativado ou Windows 2003 Server; SQL Server



2005 Express Edition; por fim, o servidor http, o IIS (Internet Information Services) dever estar em
execuo pois este o meio de comunicao entre os servios fornecidos pelo framework .NET e
uma rede tipo TCP/IP .
Sero necessrios ainda os seguintes dispositivos: Um Pocket PC e um Ponto de Acesso para redes
sem fio, que ser utilizado para a comunicao entre o Pocket PC e o servidor de aplicao.
2.2 Ambiente de desenvolvimento
As ferramentas utilizadas para desenvolver as aplicaes para o Pocket PC e o Windows, foram o
Microsoft Visual Studio 2005, o sistema gerenciador de banco de dados SQL 2005 Express Edition,
Microsoft .NET Framework 2.0. O ambiente de desenvolvimento rpido (IDE Integrated
Development Environment) do Visual Studio .NET possui um completo emulador de um Pocket
PC, no sendo necessria, num primeiro momento, a presena fsica de um PDA com Windows
Mobile para proceder ao desenvolvimento e testes da aplicao. A linguagem escolhida para acionar
o framework .NET foi a C#, em funo da similitude com J ava e C++, linguagens nas quais os
autores esto familiarizados.
3. Desenvolvimento do prottipo
O aplicativo Duty, possui o seguinte fluxo geral de execuo:

O software atendente cadastra o pedido que ser encaminhado a cozinha.
A cozinha poder visualizar o pedido feito e assim que liberado, enviar essa informao
ao caixa, para ser devidamente contabilizado.
O caixa ter acesso a todos os pedidos entregues, para quando solicitado, realizar o fechamento
da conta e liberar a mesa para consumo.
3.1 Descrio dos casos de uso
Um caso de uso uma descrio narrativa de um processo no dominio do sistema,ou seja, um
documento narrativo que descreve a sequencia de eventos utilizada por um ator do sistema afim de
finalizar uma tarefa.E o ator uma entidade externa ao sitema que participa de pelo menos um de
seus caso de uso (LARMAN, 2000). O diagrama geral de casos de uso do aplicativo proposto
encontra-se na figura 2.

Figura 3 - Diagrama de Casos de Uso do Duty
3.1.1 Especificao do Caso de Uso Cadastra pedido.
Finalidade: Receber o pedido do cliente e transferir ao aplicativo Cozinha.
Atores: Atendente
Pr-condies: J devem existir dados dos produtos no banco de dados.
Fluxo Principal:
1. exibida no PDA a tela do aplicativo.
2. O atendente deve receber os pedidos dos clientes, selecionando a mesa, o produto e se for
necessrio na aplicao contm um campo para observao.



3. O atendente clica na opo Cadastrar para realizar o pedido do produto selecionado.
4. O sistema envia o pedido ao aplicativo Cozinha.

3.1.2 Especificao do Caso de Uso Libera Pedido.
Finalidade: Receber os pedidos efetuados pelo aplicativo Atendente, e liberar o pedido quando pronto,
enviando tambm para o aplicativo Caixa para contabilizar a conta da mesa.
Atores: Cozinha
Pr-condies: Pedidos terem sidos realizados pelo aplicativo Atendente
Fluxo Principal :
exibida no Computador a tela do aplicativo Cozinha.
O funcionrio confere os pedidos, produto e observao, de acordo com a ordem de chegada.
Aps o pedido estar pronto para ser liberado, o funcionrio seleciona o item e clica no boto
Liberar, assim tirando o pedido da lista e enviar para o aplicativo Caixa para
contabilizar a conta.

3.1.3 Especificao do Caso de Uso Expede Conta e Libera Mesa.
Finalidade: Receber os pedidos liberados pelo aplicativo Cozinha, contabilizando e depois liberando a
mesa aps o pagamento.
Atores: Caixa
Pr-condies: Pedidos terem sido liberados pelo aplicativo Cozinha
Fluxo Principal:
exibida no Computador a tela do aplicativo Caixa'
O funcionrio verificar a conta da mesa selecionada.
Com o pagamento da conta, o funcionrio pressionar o boto Efetuar Pagamento para liberar
a mesa.

3.2 Estrutura dinmica e esttica do Aplicativo
A estrutura do aplicativo, esta referenciada atravs do diagrama de classes e de seqncia,
mostrados abaixo.

3.2.1 Diagrama de Classes
um diagrama que exibe a estrutura de classes do aplicativo com seus relacionamentos.
No diagrama da figura 2, a classe Central est ligada s classes wsProduto, wsPedido e
wsMesa. A classe frmListaPedidosCozinha est ligada a classe wsPedidos. J a classe
frmListaPedidosCaixa est ligada as classes wsMesa e wsPedido.





Figura 4 - Diagrama de Classe

3.2.2 Diagramas de Seqncia
Um diagrama de seqncia da fase de projeto de uma aplicao ilustra a interao atravs de
mensagens entre as instancias do diagrama de classes (LARMAN,2000). O diagrama de seqncia
feito para os principais casos de uso. A seguir na figura 3, temos o diagrama para o Caso de Uso
Cadastrar Pedido.

Figura 5 - Diagrama de Seqncia Garom cadastra pedido
A figura 4, ilustra o diagrama para o Caso de Uso Liberar Pedido


Figura 6 - Diagrama de Seqncia Cozinha recebe pedido




Finalmente a figura 5, exibe a seqncia para o Caso de Uso Expede Conta

Figura 7 - Diagrama de Seqncia Caixa calcula a conta e libera mesa
3.3 Esquemas do Banco de Dados
A aplicao utiliza como sistema gerenciador de banco de dados o SQL Server Express Edition,
verso gratuita do SGBD SQL Server da Microsoft (MICROSOFT, 2007). O banco constitudo de
trs tabelas como mostra a figura abaixo:

Figura 8 - Diagrama do Banco de Dados
Na tabela tb_mesas o campo descrio contm a identificao da mesa e no campo
status informa se a mesa j pagou a conta. J na tabela tb_pedidos o campo observacao
informar alguma observao sobre o pedido e o campo status indica se o pedido foi gerado
(valor 0), est pronto (valor 1) ou foi pago (valor 2). E na tabela tb_produtos o campo descrio
contm o produto e no campo preco o preo do respectivo produto.
3.4 Diagrama de Componentes
O diagrama de componentes mostra os elementos reutilizveis do software e sua interdependncia.
Um componente formado por um conjunto de classes que se encontram nele implementadas. Um
componente, assim como as classes que ele possui, dependem funcionalmente das classes de outro
componente. O diagrama de componentes mostra esta dependncia. No diagrama de componentes
tambm possvel mostrar a configurao de um sistema de software mostrando, graficamente, a
dependncia entre os diversos arquivos que compem o sistema. As relaes de dependncia so
usadas nos diagramas de componentes para indicar os diversos arquivos que compe o sistema. Na
figura 8 mostra nosso diagrama de componentes.




Figura 9 - Diagrama de Componentes
4. Descrio interativa do software
Esta seo ilustra o funcionamento do software atravs de imagens que retratam as telas da aplicao.
4.1. Tela do aplicativo Atendente (PocketPC)


Figura 10 - Tela do aplicativo Atendente (PocketPC)
O Atendente realiza os pedidos acionando o caso de uso Cadastra Pedido que consiste em
selecionar a mesa e produto, sendo possvel adicionar uma observao ou descrio ao pedido, por
exemplo: carne no ponto ou copo sem gelo e com limo. Quando o atendente pressiona o boto
Cadastrar o pedido enviado cozinha. O aplicativo tambm oferece ao atendente a opo de
verificar o preo do produto bastando selecionar a aba Lista de Preos que exibir o preo dos
produtos armazenados no banco de dados.
4.2. Tela do aplicativo Cozinha





Figura 11 - Tela do aplicativo Cozinha
O aplicativo Cozinha mostrado na figura 9, responsvel por receber os pedidos realizados pelo
atendente e quando o pedido ficar pronto o funcionrio da cozinha libera o pedido pressionando o
boto Liberar, onde ser retirado o pedido da lista e enviado ao aplicativo Caixa para ser
contabilizado.
4.3 Tela do aplicativo Caixa


Figura 12 - Tela do aplicativo Caixa
O aplicativo Caixa contm a lista de mesas, que ao selecionarmos uma mesa mostra os
pedidos e seus preos, no campo Total da Mesa mostra o valor total dos pedidos da mesa
selecionada. Quando o boto Efetuar Pagamento pressionado a mesa selecionada liberada e a
torna disponvel novamente para utilizao.
5. Testes
A metodologia de testes utilizada foi a baseada em casos de uso. Preliminarmente, o banco de dados
foi preenchido com dados de mesas e produtos que so necessrios para os aplicativos rodarem de
maneira correta.
Para simular um ambiente real foram utilizados quatro computadores tipo PC configurados,
com todos os programas necessrios instalados: Windows 2003 Server com o framework .NET 2.0
ativado, SQL Server 2005 Express Edition, Servidor HTTP (IIS), esses softwares so necessrios
para rodar o servidor que hospedar o banco de dados da aplicao, o segundo computador
utilizando o Visual Studio emulou a aplicao Atendente, e os outros dois computadores rodando
os aplicativos Cozinha e Caixa, nesses dois computadores necessrio que esteja instalado o
framework .NET 2.0. A comunicao foi feita atravs de rede sem fio (801.11b), o acesso ao banco
de dados e a comunicao entre os trs aplicativos funcionou de maneira correta e satisfatria. No
foi notada nenhuma lentido ou perda de dados.




6. Consideraes finais e consideraes para trabalhos futuros
Os aplicativos desenvolvidos com base no paradigma de computao mvel so recentes, mas vem
experimentando uma crescente aceitao.
Neste trabalho apresentamos uma aplicao escrita para o paradigma de computao mvel
compreendida por trs aplicativos: Atendente (PocketPC), Caixa (Windows) e Cozinha (Windows).
O objetivo de projeto de nossa aplicao agilizar o atendimento de bares ou restaurantes,
tornando-o mais eficaz, com menos erros ou demoras nos pedidos, facilidade e rapidez na
transferncia dos pedidos para preparao dos mesmos. A aplicao funciona da seguinte forma: o
aplicativo Atendente (Pocket PC), seleciona a mesa que ser atendida e o produto desejado,
descrevendo ou no uma observao. O componente Cozinha recebe os pedidos por ordem de
cadastro e o libera. A aplicao Caixa mostra todos pedidos de acordo com a mesa e calcula o
total, aps o pagamento liberando a mesa subsequentemente. Para estabelecer a comunicao
utilizamos uma rede sem fio (801.11b/g), para os aplicativos acessaram o Web Service que contm
as classes utilizadas pelos aplicativos. Para demonstrar a aplicao, conduzimos e executamos um
estudo de caso.
Como sugesto de trabalhos futuros para avanar o desenvolvimento do aplicativo, poder-
se-ia pensar na identificao do garom a fim de gerar receita de gorjetas automaticamente, na
gerao de relatrios dirios por garom e por mesa e ainda um sistema do tipo push que avisaria do
momento em que os pedidos ficassem prontos.
7. Referncias
DALUPPO, Fbio; MATHEUS, Vanclei; SANTOS, Wallace. Desenvolvendo com C#. Porto
Alegre: Bookman, 2004.
FERNANDES, Alexandre; TARIFA, Shaud; FARIAS, J os Antonio Leal. Desenvolvendo
aplicaes para Pocket PC e Smartphones para Windows Mobile 5.0 no Visual Studio 2005.
WebMobile, Graja: DevMedia Group, ano 01, edio 05, p.66-73, out./nov. 2005.
GRECO, M. Nasce a Internet sem fio. In Info Exame. Ed. 170, So Paulo: Editora Abril, Maio
2000. Disponvel em: www.infoexame.com.br.
GSMWorld. Subscriber statistics end Q1 2007. Disponvel em <<
http://www.gsmworld.com/news/statistics/pdf/gsma_stats_q1_07.pdf=>>. Acesso em
25/11/2007.
HADDAD, Renato; Smartphone com .NET. WebMobile, Graja: DevMedia Group, ano 01, edio
02, p.34-44, fev./mar. 2005.
IIDA, Renato. Desenvolvimento C++para Symbian OS: Introduo programao em Symbian
C++. Disponvel em <<
http://www.devmedia.com.br/articles/viewcomp.asp?comp=2730&hl=>>. Acesso em
25/11/2007.
LARMAN, Craig; Utilizando UML e Padres: uma introduo anlise e ao projeto
orientados a objetos / Craig Larman; trad. Luiz A. Meirelles Salgado. Porto Alegre:
Bookman, 2000.
MARTINS, Eduard E.; Desenvolvendo uma aplicao mvel com .NET. WebMobile, Graja:
DevMedia Group, ano 02, edio 08, p.68-77, abr./maio. 2006.
SHARP, J onh. Microsoft Visual C#2005: passo a passo. Porto Alegre: Bookman, 2007.
WIKIPEDIA a, 2007. Symbian OS. Disponvel em <<http://en.wikipedia.org/wiki/Symbian>>.
Acesso em 25/11/2007.
WIKIPEDIA b, 2007. BREW . Disponvel em <<http://en.wikipedia.org/wiki/BREW>>. Acesso
em 25/11/2007.

Você também pode gostar