SlideShare uma empresa Scribd logo
1 de 10
Baixar para ler offline
Uma aplicação para controle de pedidos em restaurantes para 
Pocket PC 
Felipe Jacinto M. Aben-Athar, José Roberto P. da Silva Junior, Fabio C. Salame Silva
Instituto de Estudos Superiores da Amazônia (IESAM)
66055-260 – Belém – PA– Brasil
{felipejma,jrpradojunior}@gmail.com, fcs@prof.iesam-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 world’s 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 bilhão de dispositivos computacionais móveis no
mundo, como telefones celulares e palmtops com capacidade para executar aplicações de
software sofisticadas. Dentre as plataformas de programação para estes dispositivos uma
chama a atenção por ser amplamente compatível com o sistema operacional mais popular
do mundo: a plataforma Windows Mobile. Este artigo descreve a implementação de uma
aplicação do tipo Pocket PC/Windows Mobile para controle de pedidos em restaurantes.
O software destina-se a ilustrar o potencial de uso da computação móvel e as
características de uma das tecnologias de desenvolvimento mais populares.
1. Introdução
Desde que a Apple anunciou o Newton no longínquo ano de 1993, e popularizou a sigla PDA
(Assistente Pessoal Digital ou Personal Digital Assistant), muita coisa mudou. A nova geração de
dispositivos handhelds, assim também denominados, possui telas de excelente qualidade,
microprocessadores velozes, executam programas complexos de escritório, executam arquivos de
música (MP3), gravam voz, rodam jogos e fotografam. (GRECO, 2000).
Um novo tipo de dispositivo surgiu da fusão entre PDA’s e celulares, os chamados
SmartPhones, que combinam o sistema operacional e aplicativos desenvolvidos para o mercado de
handhelds com a tecnologia de comunicação de um telefone celular comum, originando aparelhos
híbridos que otimizam a produtividade do usuário.
Com o barateamento contínuo dos microprocessadores e dos chips de memória, os PDA’s e
Smartphones se tornaram mais acessíveis do ponto de vista dos custos de aquisição e manutenção, o
que motiva seu aproveitamento em diversas aplicações comerciais.
Como acontece em todas as áreas do setor de tecnologia da informação, o desenvolvimento
de plataformas de software é importante para o barateamento e a conseqüente popularização dos
aplicativos destinados à determinada área. A vantagem de se ter plataforma de software é que as
aplicações não precisam ser reescritas para diferentes tipos de aparelhos – necessitam apenas de
leves adaptações para satisfazer as necessidades de um aparelho específico. Com a computação
móvel não é diferente e três padrões majoritários se impõem 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 versão do EPOC32 específica 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 restrições 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 milhões de dólares no
grupo. Atualmente a Nokia detém 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 aplicações compromissadas
com padrões abertos, principalmente os definidos pela IETF ( Internet Engineering Task Force) e
W3C (World Wide Web Consortium). Suporta o desenvolvimento principalmente em C++ e Java,
facilitado pelo uso de kits de desenvolvimento liberados pelos sócios da iniciativa.
A plataforma BREW – Binary Runtime Environmente for Wireless, (ambiente binário de
tempo de execução para aplicativos sem fio), da Qualcomm, oferece uma solução completa para
configuração de dispositivos e desenvolvimento, distribuição, faturamento e pagamento de
aplicativos. (WIKIPEDIA.b, 2007).
O BREW está presente em todos os chips CDMA fabricados pela Qualcomm e
comercialmente foi lançado por algumas operadoras no mundo, como a Verizon, nos Estados
Unidos e a VIVO no Brasil.
A grande questão em torno da plataforma é que o custo de desenvolvimento no BREW é
mais alto, pois toda aplicação tem que ser testada e certificada pela Qualcomm para garantir que
não se introduza na rede aplicações 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 requisições para
testar sua aplicação, depois da aplicação ser testada é necessário comprar uma assinatura digital da
Qualcomm para certificar a aplicação (WIKIPEDIA.b, 2007). Esse custo inicial – alto para
programadores hobbistas, por exemplo – acabou por comprometer a popularidade da plataforma.
Além 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 utilização de um dispositivo de
hardware padrão 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 usuários de computadores pessoais e empresariais estão acostumados
(Windows). Aplicativos como o: Word, Excel e PowerPoint, Internet Explorer, Media Player,
Terminal Server Client, Live Messenger, são fornecidos em versões customizadas especificamente
para utilização na plataforma móvel. A grande vantagem dessa plataforma é a integração com o
ambiente de escritório comum a maioria dos usuários de PC´s. (DALUPPO, 2004).
A ferramenta mais utilizada para desenvolver aplicações para Pocket PC é o Visual Studio
.NET, pois contem todos os requisitos para o desenvolvimento, debug e deploy. E não precisa do
necessariamente de um Pocket PC (hardware), pois o Visual Studio .NET dispõe de um emulador.
Neste trabalho iremos focalizar a plataforma Visual Studio 2005 e nas suas tecnologias relacionadas
ao desenvolvimento de software para computação desktop e móvel: C#.
A linguagem C# é considerada uma poderosa linguagem orientada a objetos, fornecida pela
Microsoft, mas padronizada pelo instituto americano nacional de padrões (ANSI). É uma linguagem
que sofreu muita influência de suas predecessor as mais recentes, notadamente do Delphi e Java,
agregando assim o que há de melhor atualmente em termos de flexibilidade de codificação.
Diante do exposto, considera-se relevante pesquisar as tecnologias existentes para o
desenvolvimento de aplicações para dispositivos móveis, uma vez que o mercado de software
voltado ao setor de aplicações móveis está amadurecendo rapidamente e o desenvolvedor tem
importância decisiva nesse processo.
Assim, este trabalho tem por objetivo conhecer os conceitos, tecnologias e ferramentas
orientadas para o desenvolvimento de aplicações para dispositivos móveis.
Em face da extensão 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 esforços no contexto da plataforma Windows Mobile, em razão da
notoriedade do sistema Windows e pelo crescimento dos aplicativos comerciais ligados a essa
plataforma.
Além desta seção introdutória, este artigo está dividido em mais cinco seções: A segunda
seção descreve o cenário da aplicação que se tomou como base para coleta de requisitos; a terceira
seção apresenta as fases de desenvolvimento do protótipo; a quarta seção contém uma descrição
interativa do funcionamento do programa; a quinta seção menciona os testes conduzidos para
validar a aplicação. Finalmente a seção seis apresenta as considerações finais e sugestões de
trabalhos futuros.
2. Descrição do estudo de caso
O Software batizado como “DUTY”, se constitui em uma aplicação destinada a restaurantes, bares e
lanchonetes, e compreendem uma aplicação “Atendente” (utilizada no Pocket PC) e outras duas
aplicações 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 aplicação.
Figura 2 - Estrutura da aplicação
2.1 Requisitos de hardware e software do ambiente
A estrutura básica de hardware e software necessária para a implantação e execução de um sistema
que tem como objeto uma aplicação móvel para o ambiente Windows é a seguinte: Um Pocket PC,
que é um PDA projetado para executar o sistema operacional Windows Mobile, a implantação do
Microsoft .NET Compact Framework 2.0, para rodar o aplicativo no Pocket PC; Um ou mais
computadores de mesa que hospedarão o sistema gerenciador de banco de dados, caso o aplicativo
seja projetado para fazer uso de uma base de dados servidora; a instalação 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 conexão bluetooth,
GSM/GPRS/Edge (acesso por rede celular) ou IEEE 802.11.x (Wlan).
No caso de uso projetado, dois PC’s necessitam ter o Microsoft .NET Framework 2.0 instalado, sob
o qual os aplicativos ‘Caixa’ e ‘Cozinha’ serão 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
execução pois é este o meio de comunicação entre os serviços fornecidos pelo framework .NET e
uma rede tipo TCP/IP .
Serão necessários ainda os seguintes dispositivos: Um Pocket PC e um Ponto de Acesso para redes
sem fio, que será utilizado para a comunicação entre o Pocket PC e o servidor de aplicação.
2.2 Ambiente de desenvolvimento
As ferramentas utilizadas para desenvolver as aplicações 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 rápido (IDE – Integrated
Development Environment) do Visual Studio .NET possui um completo emulador de um Pocket
PC, não sendo necessária, num primeiro momento, a presença física de um PDA com Windows
Mobile para proceder ao desenvolvimento e testes da aplicação. A linguagem escolhida para acionar
o framework .NET foi a C#, em função da similitude com Java e C++, linguagens nas quais os
autores estão familiarizados.
3. Desenvolvimento do protótipo
O aplicativo Duty, possui o seguinte fluxo geral de execução:
O software atendente cadastra o pedido que será encaminhado a cozinha.
A cozinha poderá visualizar o pedido feito e assim que liberado, enviará essa informação
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 Descrição dos casos de uso
Um caso de uso é uma descrição 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 Especificação do Caso de Uso – Cadastra pedido.
Finalidade: Receber o pedido do cliente e transferir ao aplicativo Cozinha.
Atores: Atendente
Pré-condições: 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
necessário na aplicação contém um campo para observação.
3. O atendente clica na opção ‘Cadastrar’ para realizar o pedido do produto selecionado.
4. O sistema envia o pedido ao aplicativo ‘Cozinha’.
3.1.2 Especificação do Caso de Uso – Libera Pedido.
Finalidade: Receber os pedidos efetuados pelo aplicativo ‘Atendente’, e liberar o pedido quando pronto,
enviando também para o aplicativo ‘Caixa’ para contabilizar a conta da mesa.
Atores: Cozinha
Pré-condições: Pedidos terem sidos realizados pelo aplicativo ‘Atendente’
Fluxo Principal :
É exibida no Computador a tela do aplicativo ‘Cozinha’.
O funcionário confere os pedidos, produto e observação, de acordo com a ordem de chegada.
Após o pedido estar pronto para ser liberado, o funcionário seleciona o item e clica no botão
‘Liberar’, assim tirando o pedido da lista e enviará para o aplicativo ‘Caixa’ para
contabilizar a conta.
3.1.3 Especificação do Caso de Uso – Expede Conta e Libera Mesa.
Finalidade: Receber os pedidos liberados pelo aplicativo ‘Cozinha’, contabilizando e depois liberando a
mesa após o pagamento.
Atores: Caixa
Pré-condições: Pedidos terem sido liberados pelo aplicativo ‘Cozinha’
Fluxo Principal:
É exibida no Computador a tela do aplicativo ‘Caixa'
O funcionário verificará a conta da mesa selecionada.
Com o pagamento da conta, o funcionário pressionará o botão ‘Efetuar Pagamento’ para liberar
a mesa.
3.2 Estrutura dinâmica e estática do Aplicativo
A estrutura do aplicativo, esta referenciada através do diagrama de classes e de seqüência,
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 Seqüência
Um diagrama de seqüência da fase de projeto de uma aplicação ilustra a interação através de
mensagens entre as instancias do diagrama de classes (LARMAN,2000). O diagrama de seqüência é
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 Seqüência – Garçom cadastra pedido
A figura 4, ilustra o diagrama para o Caso de Uso – Liberar Pedido
Figura 6 - Diagrama de Seqüência – Cozinha recebe pedido
Finalmente a figura 5, exibe a seqüência para o Caso de Uso – Expede Conta
Figura 7 - Diagrama de Seqüência – Caixa calcula a conta e libera mesa
3.3 Esquemas do Banco de Dados
A aplicação utiliza como sistema gerenciador de banco de dados o SQL Server Express Edition,
versão gratuita do SGBD SQL Server da Microsoft (MICROSOFT, 2007). O banco é constituído de
três tabelas como mostra a figura abaixo:
Figura 8 - Diagrama do Banco de Dados
Na tabela tb_mesas o campo “descrição” contém a identificação da mesa e no campo
“status” informa se a mesa já pagou a conta. Já na tabela tb_pedidos o campo “observacao”
informará alguma observação 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 “descrição”
contém o produto e no campo “preco” o preço do respectivo produto.
3.4 Diagrama de Componentes
O diagrama de componentes mostra os elementos reutilizáveis do software e sua interdependência.
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 dependência. No diagrama de componentes
também é possível mostrar a configuração de um sistema de software mostrando, graficamente, a
dependência entre os diversos arquivos que compõem o sistema. As relações de dependência são
usadas nos diagramas de componentes para indicar os diversos arquivos que compõe o sistema. Na
figura 8 mostra nosso diagrama de componentes.
Figura 9 - Diagrama de Componentes
4. Descrição interativa do software
Esta seção ilustra o funcionamento do software através de imagens que retratam as telas da aplicação.
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 possível adicionar uma observação ou descrição ao pedido, por
exemplo: carne no ponto ou copo sem gelo e com limão. Quando o atendente pressiona o botão
“Cadastrar” o pedido é enviado à cozinha. O aplicativo também oferece ao atendente a opção de
verificar o preço do produto bastando selecionar a aba “Lista de Preços” que exibirá o preço 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, é responsável por receber os pedidos realizados pelo
atendente e quando o pedido ficar “pronto” o funcionário da cozinha libera o pedido pressionando o
botão “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” contém a lista de mesas, que ao selecionarmos uma mesa mostra os
pedidos e seus preços, no campo Total da Mesa mostra o valor total dos pedidos da mesa
selecionada. Quando o botão Efetuar Pagamento é pressionado a mesa selecionada é liberada e a
torna disponível novamente para utilização.
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 são necessários para os aplicativos rodarem de
maneira correta.
Para simular um ambiente real foram utilizados quatro computadores tipo PC configurados,
com todos os programas necessários instalados: Windows 2003 Server com o framework .NET 2.0
ativado, SQL Server 2005 Express Edition, Servidor HTTP (IIS), esses softwares são necessários
para rodar o servidor que hospedará o banco de dados da aplicação, o segundo computador
utilizando o Visual Studio emulou a aplicação “Atendente”, e os outros dois computadores rodando
os aplicativos “Cozinha” e “Caixa”, nesses dois computadores é necessário que esteja instalado o
framework .NET 2.0. A comunicação foi feita através de rede sem fio (801.11b), o acesso ao banco
de dados e a comunicação entre os três aplicativos funcionou de maneira correta e satisfatória. Não
foi notada nenhuma lentidão ou perda de dados.
6. Considerações finais e considerações para trabalhos futuros
Os aplicativos desenvolvidos com base no paradigma de computação móvel são recentes, mas vem
experimentando uma crescente aceitação.
Neste trabalho apresentamos uma aplicação escrita para o paradigma de computação móvel
compreendida por três aplicativos: Atendente (PocketPC), Caixa (Windows) e Cozinha (Windows).
O objetivo de projeto de nossa aplicação é agilizar o atendimento de bares ou restaurantes,
tornando-o mais eficaz, com menos erros ou demoras nos pedidos, facilidade e rapidez na
transferência dos pedidos para preparação dos mesmos. A aplicação funciona da seguinte forma: o
aplicativo “Atendente” (Pocket PC), seleciona a mesa que será atendida e o produto desejado,
descrevendo ou não uma observação. O componente “Cozinha” recebe os pedidos por ordem de
cadastro e o libera. A aplicação “Caixa” mostra todos pedidos de acordo com a mesa e calcula o
total, após o pagamento liberando a mesa subsequentemente. Para estabelecer a comunicação
utilizamos uma rede sem fio (801.11b/g), para os aplicativos acessaram o Web Service que contém
as classes utilizadas pelos aplicativos. Para demonstrar a aplicação, conduzimos e executamos um
estudo de caso.
Como sugestão de trabalhos futuros para avançar o desenvolvimento do aplicativo, poder-
se-ia pensar na identificação do garçom a fim de gerar receita de gorjetas automaticamente, na
geração de relatórios diários por garçom e por mesa e ainda um sistema do tipo push que avisaria do
momento em que os pedidos ficassem prontos.
7. Referências
DALUPPO, Fábio; MATHEUS, Vanclei; SANTOS, Wallace. Desenvolvendo com C#. Porto
Alegre: Bookman, 2004.
FERNANDES, Alexandre; TARIFA, Shaud; FARIAS, José Antonio Leal. Desenvolvendo
aplicações para Pocket PC e Smartphones para Windows Mobile 5.0 no Visual Studio 2005.
WebMobile, Grajaú: DevMedia Group, ano 01, edição 05, p.66-73, out./nov. 2005.
GRECO, M. Nasce a Internet sem fio. In Info Exame. Ed. 170, São Paulo: Editora Abril, Maio
2000. Disponível em: www.infoexame.com.br.
GSMWorld. Subscriber statistics end Q1 2007. Disponível 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, edição
02, p.34-44, fev./mar. 2005.
IIDA, Renato. Desenvolvimento C++ para Symbian OS: Introdução à programação em Symbian
C++. Disponível em <<
http://www.devmedia.com.br/articles/viewcomp.asp?comp=2730&hl=>>. Acesso em
25/11/2007.
LARMAN, Craig; Utilizando UML e Padrões: uma introdução à análise e ao projeto
orientados a objetos / Craig Larman; trad. Luiz A. Meirelles Salgado. – Porto Alegre:
Bookman, 2000.
MARTINS, Eduard E.; Desenvolvendo uma aplicação móvel com .NET. WebMobile, Grajaú:
DevMedia Group, ano 02, edição 08, p.68-77, abr./maio. 2006.
SHARP, Jonh. Microsoft Visual C# 2005: passo a passo. Porto Alegre: Bookman, 2007.
WIKIPEDIA a, 2007. Symbian OS. Disponível em << http://en.wikipedia.org/wiki/Symbian>>.
Acesso em 25/11/2007.
WIKIPEDIA b, 2007. BREW . Disponível em << http://en.wikipedia.org/wiki/BREW>>. Acesso
em 25/11/2007.

Mais conteúdo relacionado

Mais procurados

Guerra do vietnã (trabalho de geografia)
Guerra do vietnã (trabalho de geografia)Guerra do vietnã (trabalho de geografia)
Guerra do vietnã (trabalho de geografia)Gabriel Aragão
 
A EXPANSÃO DA AMÉRICA PORTUGUESA
A EXPANSÃO DA AMÉRICA PORTUGUESAA EXPANSÃO DA AMÉRICA PORTUGUESA
A EXPANSÃO DA AMÉRICA PORTUGUESACristine Becker
 
Pilates patologias da coluna
Pilates  patologias da colunaPilates  patologias da coluna
Pilates patologias da colunaJana
 
Momentos de tensão durante a guerra fria
Momentos de tensão durante a guerra friaMomentos de tensão durante a guerra fria
Momentos de tensão durante a guerra friaSusana Simões
 
Aula06 - Arquitetura e Manutenção de Computadores
Aula06 - Arquitetura e Manutenção de ComputadoresAula06 - Arquitetura e Manutenção de Computadores
Aula06 - Arquitetura e Manutenção de ComputadoresJorge Ávila Miranda
 
Curso básico de informática
Curso básico de informáticaCurso básico de informática
Curso básico de informáticaananiasdoamaral
 
Informatica parte 4.1-inicio mouse e teclado
Informatica parte 4.1-inicio mouse e tecladoInformatica parte 4.1-inicio mouse e teclado
Informatica parte 4.1-inicio mouse e tecladoMauro Pereira
 
Aula 4 linguagens regularese automatosfinitosdeterministicos
Aula 4   linguagens regularese automatosfinitosdeterministicosAula 4   linguagens regularese automatosfinitosdeterministicos
Aula 4 linguagens regularese automatosfinitosdeterministicoswab030
 
Independência do brasil
Independência do brasilIndependência do brasil
Independência do brasilMarco Santos
 
Elaboração de cardápios
Elaboração de cardápiosElaboração de cardápios
Elaboração de cardápiosKarla Ananias
 
Aula 1 - Historia dos computadores
 Aula 1 - Historia dos computadores Aula 1 - Historia dos computadores
Aula 1 - Historia dos computadoresMaurilio Filho
 
Apostila power point 2007 básico
Apostila power point 2007   básicoApostila power point 2007   básico
Apostila power point 2007 básicoLuciana
 
a guerra do paraguai
a guerra do paraguaia guerra do paraguai
a guerra do paraguailetosgirl
 
Exercicios hardware comentado
Exercicios hardware comentadoExercicios hardware comentado
Exercicios hardware comentadocapitulocontabil
 
ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...
ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...
ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...Prof. Marcus Renato de Carvalho
 

Mais procurados (20)

Guerra do vietnã (trabalho de geografia)
Guerra do vietnã (trabalho de geografia)Guerra do vietnã (trabalho de geografia)
Guerra do vietnã (trabalho de geografia)
 
História do Futsal
História do FutsalHistória do Futsal
História do Futsal
 
Volta a calma
Volta a calmaVolta a calma
Volta a calma
 
A EXPANSÃO DA AMÉRICA PORTUGUESA
A EXPANSÃO DA AMÉRICA PORTUGUESAA EXPANSÃO DA AMÉRICA PORTUGUESA
A EXPANSÃO DA AMÉRICA PORTUGUESA
 
Pilates patologias da coluna
Pilates  patologias da colunaPilates  patologias da coluna
Pilates patologias da coluna
 
Momentos de tensão durante a guerra fria
Momentos de tensão durante a guerra friaMomentos de tensão durante a guerra fria
Momentos de tensão durante a guerra fria
 
Aula06 - Arquitetura e Manutenção de Computadores
Aula06 - Arquitetura e Manutenção de ComputadoresAula06 - Arquitetura e Manutenção de Computadores
Aula06 - Arquitetura e Manutenção de Computadores
 
Curso básico de informática
Curso básico de informáticaCurso básico de informática
Curso básico de informática
 
Guerra da coreia
Guerra da coreiaGuerra da coreia
Guerra da coreia
 
Informatica parte 4.1-inicio mouse e teclado
Informatica parte 4.1-inicio mouse e tecladoInformatica parte 4.1-inicio mouse e teclado
Informatica parte 4.1-inicio mouse e teclado
 
Aula 4 linguagens regularese automatosfinitosdeterministicos
Aula 4   linguagens regularese automatosfinitosdeterministicosAula 4   linguagens regularese automatosfinitosdeterministicos
Aula 4 linguagens regularese automatosfinitosdeterministicos
 
Natação.pptx
Natação.pptxNatação.pptx
Natação.pptx
 
Independência do brasil
Independência do brasilIndependência do brasil
Independência do brasil
 
Alimentos construtores
Alimentos construtoresAlimentos construtores
Alimentos construtores
 
Elaboração de cardápios
Elaboração de cardápiosElaboração de cardápios
Elaboração de cardápios
 
Aula 1 - Historia dos computadores
 Aula 1 - Historia dos computadores Aula 1 - Historia dos computadores
Aula 1 - Historia dos computadores
 
Apostila power point 2007 básico
Apostila power point 2007   básicoApostila power point 2007   básico
Apostila power point 2007 básico
 
a guerra do paraguai
a guerra do paraguaia guerra do paraguai
a guerra do paraguai
 
Exercicios hardware comentado
Exercicios hardware comentadoExercicios hardware comentado
Exercicios hardware comentado
 
ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...
ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...
ALIMENTAÇÃO & NUTRIÇÃO: DESMISTIFICANDO DÚVIDAS. Guia para profissionais de s...
 

Destaque

Proj uml restaurante online
Proj uml restaurante onlineProj uml restaurante online
Proj uml restaurante onlineEvandro Gf
 
Aula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniaoAula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniaoMaria Alice Jovinski
 
Análise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaAnálise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaCursoSENAC
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesRodrigo Cascarrolho
 

Destaque (9)

TRAVISSCOTT
TRAVISSCOTTTRAVISSCOTT
TRAVISSCOTT
 
Uml
UmlUml
Uml
 
Proj uml restaurante online
Proj uml restaurante onlineProj uml restaurante online
Proj uml restaurante online
 
Relatório da uml
Relatório da umlRelatório da uml
Relatório da uml
 
Aula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniaoAula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniao
 
Análise e Modelagem com UML
Análise e Modelagem com UMLAnálise e Modelagem com UML
Análise e Modelagem com UML
 
Aula diagrama de classes
Aula diagrama de classesAula diagrama de classes
Aula diagrama de classes
 
Análise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaAnálise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de Sequencia
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 

Semelhante a Desenvolvimento de aplicativo para controle de pedidos em restaurantes para Pocket PC

Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2Carlos Eugenio Torres
 
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...Eteg
 
Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...
Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...
Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...Ráfagan Abreu
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileCloves da Rocha
 
Aplicativos para dispositivos móveis
Aplicativos para dispositivos móveisAplicativos para dispositivos móveis
Aplicativos para dispositivos móveisYgor Castro
 
Introdução ao desenvolvimento para android
Introdução ao desenvolvimento para androidIntrodução ao desenvolvimento para android
Introdução ao desenvolvimento para androidHugo Ferreira
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisÉdipo Souza
 
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEISLIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEISOs Fantasmas !
 
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.Júlia Fernandes Alves
 
Desenvolvendo aplicações móveis
Desenvolvendo aplicações móveisDesenvolvendo aplicações móveis
Desenvolvendo aplicações móveiscedulio
 
Introdução ao Firefox OS
Introdução ao Firefox OSIntrodução ao Firefox OS
Introdução ao Firefox OSDavid Ruiz
 
Palestra Mobilidade - Computação móvel, dispositivos e aplicativos
Palestra Mobilidade - Computação móvel, dispositivos e aplicativosPalestra Mobilidade - Computação móvel, dispositivos e aplicativos
Palestra Mobilidade - Computação móvel, dispositivos e aplicativosCarlos Eugenio Torres
 
Middleware para TV Digital Portátil/Móvel
Middleware para TV Digital Portátil/MóvelMiddleware para TV Digital Portátil/Móvel
Middleware para TV Digital Portátil/MóvelElaine Cecília Gatto
 
Aula 01 - Apresentaçã e Conceitos.pptx
Aula 01 - Apresentaçã e Conceitos.pptxAula 01 - Apresentaçã e Conceitos.pptx
Aula 01 - Apresentaçã e Conceitos.pptxRoberto Aragy
 
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013Carlos Eugenio Torres
 
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...Eder Nogueira
 
Computacao Movel e Sem Fio
Computacao Movel e Sem FioComputacao Movel e Sem Fio
Computacao Movel e Sem FioDouglas Frari
 

Semelhante a Desenvolvimento de aplicativo para controle de pedidos em restaurantes para Pocket PC (20)

Ciclo de palestras da JFRJ - Aplicativos Móveis
Ciclo de palestras da JFRJ - Aplicativos MóveisCiclo de palestras da JFRJ - Aplicativos Móveis
Ciclo de palestras da JFRJ - Aplicativos Móveis
 
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
 
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
 
Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...
Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...
Desenvolvimento multiplataforma em ambientes de programação nativos e abstr...
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao Mobile
 
Aplicativos para dispositivos móveis
Aplicativos para dispositivos móveisAplicativos para dispositivos móveis
Aplicativos para dispositivos móveis
 
Introdução ao desenvolvimento para android
Introdução ao desenvolvimento para androidIntrodução ao desenvolvimento para android
Introdução ao desenvolvimento para android
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
 
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEISLIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
 
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
 
Desenvolvendo aplicações móveis
Desenvolvendo aplicações móveisDesenvolvendo aplicações móveis
Desenvolvendo aplicações móveis
 
Introdução ao Firefox OS
Introdução ao Firefox OSIntrodução ao Firefox OS
Introdução ao Firefox OS
 
Palestra Mobilidade - Computação móvel, dispositivos e aplicativos
Palestra Mobilidade - Computação móvel, dispositivos e aplicativosPalestra Mobilidade - Computação móvel, dispositivos e aplicativos
Palestra Mobilidade - Computação móvel, dispositivos e aplicativos
 
Middleware para TV Digital Portátil/Móvel
Middleware para TV Digital Portátil/MóvelMiddleware para TV Digital Portátil/Móvel
Middleware para TV Digital Portátil/Móvel
 
Introdução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para IphoneIntrodução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para Iphone
 
Aula 01 - Apresentaçã e Conceitos.pptx
Aula 01 - Apresentaçã e Conceitos.pptxAula 01 - Apresentaçã e Conceitos.pptx
Aula 01 - Apresentaçã e Conceitos.pptx
 
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
 
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
 
Computacao Movel e Sem Fio
Computacao Movel e Sem FioComputacao Movel e Sem Fio
Computacao Movel e Sem Fio
 
Android
AndroidAndroid
Android
 

Desenvolvimento de aplicativo para controle de pedidos em restaurantes para Pocket PC

  • 1. Uma aplicação para controle de pedidos em restaurantes para  Pocket PC  Felipe Jacinto M. Aben-Athar, José Roberto P. da Silva Junior, Fabio C. Salame Silva Instituto de Estudos Superiores da Amazônia (IESAM) 66055-260 – Belém – PA– Brasil {felipejma,jrpradojunior}@gmail.com, fcs@prof.iesam-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 world’s 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 bilhão de dispositivos computacionais móveis no mundo, como telefones celulares e palmtops com capacidade para executar aplicações de software sofisticadas. Dentre as plataformas de programação para estes dispositivos uma chama a atenção por ser amplamente compatível com o sistema operacional mais popular do mundo: a plataforma Windows Mobile. Este artigo descreve a implementação de uma aplicação do tipo Pocket PC/Windows Mobile para controle de pedidos em restaurantes. O software destina-se a ilustrar o potencial de uso da computação móvel e as características de uma das tecnologias de desenvolvimento mais populares. 1. Introdução Desde que a Apple anunciou o Newton no longínquo ano de 1993, e popularizou a sigla PDA (Assistente Pessoal Digital ou Personal Digital Assistant), muita coisa mudou. A nova geração de dispositivos handhelds, assim também denominados, possui telas de excelente qualidade, microprocessadores velozes, executam programas complexos de escritório, executam arquivos de música (MP3), gravam voz, rodam jogos e fotografam. (GRECO, 2000). Um novo tipo de dispositivo surgiu da fusão entre PDA’s e celulares, os chamados SmartPhones, que combinam o sistema operacional e aplicativos desenvolvidos para o mercado de handhelds com a tecnologia de comunicação de um telefone celular comum, originando aparelhos híbridos que otimizam a produtividade do usuário. Com o barateamento contínuo dos microprocessadores e dos chips de memória, os PDA’s e Smartphones se tornaram mais acessíveis do ponto de vista dos custos de aquisição e manutenção, o que motiva seu aproveitamento em diversas aplicações comerciais. Como acontece em todas as áreas do setor de tecnologia da informação, o desenvolvimento de plataformas de software é importante para o barateamento e a conseqüente popularização dos aplicativos destinados à determinada área. A vantagem de se ter plataforma de software é que as aplicações não precisam ser reescritas para diferentes tipos de aparelhos – necessitam apenas de leves adaptações para satisfazer as necessidades de um aparelho específico. Com a computação
  • 2. móvel não é diferente e três padrões majoritários se impõem 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 versão do EPOC32 específica 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 restrições 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 milhões de dólares no grupo. Atualmente a Nokia detém 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 aplicações compromissadas com padrões abertos, principalmente os definidos pela IETF ( Internet Engineering Task Force) e W3C (World Wide Web Consortium). Suporta o desenvolvimento principalmente em C++ e Java, facilitado pelo uso de kits de desenvolvimento liberados pelos sócios da iniciativa. A plataforma BREW – Binary Runtime Environmente for Wireless, (ambiente binário de tempo de execução para aplicativos sem fio), da Qualcomm, oferece uma solução completa para configuração de dispositivos e desenvolvimento, distribuição, faturamento e pagamento de aplicativos. (WIKIPEDIA.b, 2007). O BREW está presente em todos os chips CDMA fabricados pela Qualcomm e comercialmente foi lançado por algumas operadoras no mundo, como a Verizon, nos Estados Unidos e a VIVO no Brasil. A grande questão em torno da plataforma é que o custo de desenvolvimento no BREW é mais alto, pois toda aplicação tem que ser testada e certificada pela Qualcomm para garantir que não se introduza na rede aplicações 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 requisições para testar sua aplicação, depois da aplicação ser testada é necessário comprar uma assinatura digital da Qualcomm para certificar a aplicação (WIKIPEDIA.b, 2007). Esse custo inicial – alto para programadores hobbistas, por exemplo – acabou por comprometer a popularidade da plataforma. Além 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 utilização de um dispositivo de hardware padrão 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 usuários de computadores pessoais e empresariais estão acostumados (Windows). Aplicativos como o: Word, Excel e PowerPoint, Internet Explorer, Media Player, Terminal Server Client, Live Messenger, são fornecidos em versões customizadas especificamente para utilização na plataforma móvel. A grande vantagem dessa plataforma é a integração com o ambiente de escritório comum a maioria dos usuários de PC´s. (DALUPPO, 2004). A ferramenta mais utilizada para desenvolver aplicações para Pocket PC é o Visual Studio .NET, pois contem todos os requisitos para o desenvolvimento, debug e deploy. E não precisa do necessariamente de um Pocket PC (hardware), pois o Visual Studio .NET dispõe de um emulador. Neste trabalho iremos focalizar a plataforma Visual Studio 2005 e nas suas tecnologias relacionadas ao desenvolvimento de software para computação desktop e móvel: C#. A linguagem C# é considerada uma poderosa linguagem orientada a objetos, fornecida pela Microsoft, mas padronizada pelo instituto americano nacional de padrões (ANSI). É uma linguagem que sofreu muita influência de suas predecessor as mais recentes, notadamente do Delphi e Java, agregando assim o que há de melhor atualmente em termos de flexibilidade de codificação.
  • 3. Diante do exposto, considera-se relevante pesquisar as tecnologias existentes para o desenvolvimento de aplicações para dispositivos móveis, uma vez que o mercado de software voltado ao setor de aplicações móveis está amadurecendo rapidamente e o desenvolvedor tem importância decisiva nesse processo. Assim, este trabalho tem por objetivo conhecer os conceitos, tecnologias e ferramentas orientadas para o desenvolvimento de aplicações para dispositivos móveis. Em face da extensão 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 esforços no contexto da plataforma Windows Mobile, em razão da notoriedade do sistema Windows e pelo crescimento dos aplicativos comerciais ligados a essa plataforma. Além desta seção introdutória, este artigo está dividido em mais cinco seções: A segunda seção descreve o cenário da aplicação que se tomou como base para coleta de requisitos; a terceira seção apresenta as fases de desenvolvimento do protótipo; a quarta seção contém uma descrição interativa do funcionamento do programa; a quinta seção menciona os testes conduzidos para validar a aplicação. Finalmente a seção seis apresenta as considerações finais e sugestões de trabalhos futuros. 2. Descrição do estudo de caso O Software batizado como “DUTY”, se constitui em uma aplicação destinada a restaurantes, bares e lanchonetes, e compreendem uma aplicação “Atendente” (utilizada no Pocket PC) e outras duas aplicações 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 aplicação. Figura 2 - Estrutura da aplicação 2.1 Requisitos de hardware e software do ambiente A estrutura básica de hardware e software necessária para a implantação e execução de um sistema que tem como objeto uma aplicação móvel para o ambiente Windows é a seguinte: Um Pocket PC, que é um PDA projetado para executar o sistema operacional Windows Mobile, a implantação do Microsoft .NET Compact Framework 2.0, para rodar o aplicativo no Pocket PC; Um ou mais computadores de mesa que hospedarão o sistema gerenciador de banco de dados, caso o aplicativo seja projetado para fazer uso de uma base de dados servidora; a instalação 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 conexão bluetooth, GSM/GPRS/Edge (acesso por rede celular) ou IEEE 802.11.x (Wlan). No caso de uso projetado, dois PC’s necessitam ter o Microsoft .NET Framework 2.0 instalado, sob o qual os aplicativos ‘Caixa’ e ‘Cozinha’ serão executados; o computador servidor requer o Windows 2000 Server com o framework .NET 2.0 ativado ou Windows 2003 Server; SQL Server
  • 4. 2005 Express Edition; por fim, o servidor http, o IIS (Internet Information Services) deverá estar em execução pois é este o meio de comunicação entre os serviços fornecidos pelo framework .NET e uma rede tipo TCP/IP . Serão necessários ainda os seguintes dispositivos: Um Pocket PC e um Ponto de Acesso para redes sem fio, que será utilizado para a comunicação entre o Pocket PC e o servidor de aplicação. 2.2 Ambiente de desenvolvimento As ferramentas utilizadas para desenvolver as aplicações 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 rápido (IDE – Integrated Development Environment) do Visual Studio .NET possui um completo emulador de um Pocket PC, não sendo necessária, num primeiro momento, a presença física de um PDA com Windows Mobile para proceder ao desenvolvimento e testes da aplicação. A linguagem escolhida para acionar o framework .NET foi a C#, em função da similitude com Java e C++, linguagens nas quais os autores estão familiarizados. 3. Desenvolvimento do protótipo O aplicativo Duty, possui o seguinte fluxo geral de execução: O software atendente cadastra o pedido que será encaminhado a cozinha. A cozinha poderá visualizar o pedido feito e assim que liberado, enviará essa informação 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 Descrição dos casos de uso Um caso de uso é uma descrição 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 Especificação do Caso de Uso – Cadastra pedido. Finalidade: Receber o pedido do cliente e transferir ao aplicativo Cozinha. Atores: Atendente Pré-condições: 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 necessário na aplicação contém um campo para observação.
  • 5. 3. O atendente clica na opção ‘Cadastrar’ para realizar o pedido do produto selecionado. 4. O sistema envia o pedido ao aplicativo ‘Cozinha’. 3.1.2 Especificação do Caso de Uso – Libera Pedido. Finalidade: Receber os pedidos efetuados pelo aplicativo ‘Atendente’, e liberar o pedido quando pronto, enviando também para o aplicativo ‘Caixa’ para contabilizar a conta da mesa. Atores: Cozinha Pré-condições: Pedidos terem sidos realizados pelo aplicativo ‘Atendente’ Fluxo Principal : É exibida no Computador a tela do aplicativo ‘Cozinha’. O funcionário confere os pedidos, produto e observação, de acordo com a ordem de chegada. Após o pedido estar pronto para ser liberado, o funcionário seleciona o item e clica no botão ‘Liberar’, assim tirando o pedido da lista e enviará para o aplicativo ‘Caixa’ para contabilizar a conta. 3.1.3 Especificação do Caso de Uso – Expede Conta e Libera Mesa. Finalidade: Receber os pedidos liberados pelo aplicativo ‘Cozinha’, contabilizando e depois liberando a mesa após o pagamento. Atores: Caixa Pré-condições: Pedidos terem sido liberados pelo aplicativo ‘Cozinha’ Fluxo Principal: É exibida no Computador a tela do aplicativo ‘Caixa' O funcionário verificará a conta da mesa selecionada. Com o pagamento da conta, o funcionário pressionará o botão ‘Efetuar Pagamento’ para liberar a mesa. 3.2 Estrutura dinâmica e estática do Aplicativo A estrutura do aplicativo, esta referenciada através do diagrama de classes e de seqüência, 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.
  • 6. Figura 4 - Diagrama de Classe 3.2.2 Diagramas de Seqüência Um diagrama de seqüência da fase de projeto de uma aplicação ilustra a interação através de mensagens entre as instancias do diagrama de classes (LARMAN,2000). O diagrama de seqüência é 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 Seqüência – Garçom cadastra pedido A figura 4, ilustra o diagrama para o Caso de Uso – Liberar Pedido Figura 6 - Diagrama de Seqüência – Cozinha recebe pedido
  • 7. Finalmente a figura 5, exibe a seqüência para o Caso de Uso – Expede Conta Figura 7 - Diagrama de Seqüência – Caixa calcula a conta e libera mesa 3.3 Esquemas do Banco de Dados A aplicação utiliza como sistema gerenciador de banco de dados o SQL Server Express Edition, versão gratuita do SGBD SQL Server da Microsoft (MICROSOFT, 2007). O banco é constituído de três tabelas como mostra a figura abaixo: Figura 8 - Diagrama do Banco de Dados Na tabela tb_mesas o campo “descrição” contém a identificação da mesa e no campo “status” informa se a mesa já pagou a conta. Já na tabela tb_pedidos o campo “observacao” informará alguma observação 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 “descrição” contém o produto e no campo “preco” o preço do respectivo produto. 3.4 Diagrama de Componentes O diagrama de componentes mostra os elementos reutilizáveis do software e sua interdependência. 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 dependência. No diagrama de componentes também é possível mostrar a configuração de um sistema de software mostrando, graficamente, a dependência entre os diversos arquivos que compõem o sistema. As relações de dependência são usadas nos diagramas de componentes para indicar os diversos arquivos que compõe o sistema. Na figura 8 mostra nosso diagrama de componentes.
  • 8. Figura 9 - Diagrama de Componentes 4. Descrição interativa do software Esta seção ilustra o funcionamento do software através de imagens que retratam as telas da aplicação. 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 possível adicionar uma observação ou descrição ao pedido, por exemplo: carne no ponto ou copo sem gelo e com limão. Quando o atendente pressiona o botão “Cadastrar” o pedido é enviado à cozinha. O aplicativo também oferece ao atendente a opção de verificar o preço do produto bastando selecionar a aba “Lista de Preços” que exibirá o preço dos produtos armazenados no banco de dados. 4.2. Tela do aplicativo “Cozinha”
  • 9. Figura 11 - Tela do aplicativo Cozinha O aplicativo Cozinha mostrado na figura 9, é responsável por receber os pedidos realizados pelo atendente e quando o pedido ficar “pronto” o funcionário da cozinha libera o pedido pressionando o botão “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” contém a lista de mesas, que ao selecionarmos uma mesa mostra os pedidos e seus preços, no campo Total da Mesa mostra o valor total dos pedidos da mesa selecionada. Quando o botão Efetuar Pagamento é pressionado a mesa selecionada é liberada e a torna disponível novamente para utilização. 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 são necessários para os aplicativos rodarem de maneira correta. Para simular um ambiente real foram utilizados quatro computadores tipo PC configurados, com todos os programas necessários instalados: Windows 2003 Server com o framework .NET 2.0 ativado, SQL Server 2005 Express Edition, Servidor HTTP (IIS), esses softwares são necessários para rodar o servidor que hospedará o banco de dados da aplicação, o segundo computador utilizando o Visual Studio emulou a aplicação “Atendente”, e os outros dois computadores rodando os aplicativos “Cozinha” e “Caixa”, nesses dois computadores é necessário que esteja instalado o framework .NET 2.0. A comunicação foi feita através de rede sem fio (801.11b), o acesso ao banco de dados e a comunicação entre os três aplicativos funcionou de maneira correta e satisfatória. Não foi notada nenhuma lentidão ou perda de dados.
  • 10. 6. Considerações finais e considerações para trabalhos futuros Os aplicativos desenvolvidos com base no paradigma de computação móvel são recentes, mas vem experimentando uma crescente aceitação. Neste trabalho apresentamos uma aplicação escrita para o paradigma de computação móvel compreendida por três aplicativos: Atendente (PocketPC), Caixa (Windows) e Cozinha (Windows). O objetivo de projeto de nossa aplicação é agilizar o atendimento de bares ou restaurantes, tornando-o mais eficaz, com menos erros ou demoras nos pedidos, facilidade e rapidez na transferência dos pedidos para preparação dos mesmos. A aplicação funciona da seguinte forma: o aplicativo “Atendente” (Pocket PC), seleciona a mesa que será atendida e o produto desejado, descrevendo ou não uma observação. O componente “Cozinha” recebe os pedidos por ordem de cadastro e o libera. A aplicação “Caixa” mostra todos pedidos de acordo com a mesa e calcula o total, após o pagamento liberando a mesa subsequentemente. Para estabelecer a comunicação utilizamos uma rede sem fio (801.11b/g), para os aplicativos acessaram o Web Service que contém as classes utilizadas pelos aplicativos. Para demonstrar a aplicação, conduzimos e executamos um estudo de caso. Como sugestão de trabalhos futuros para avançar o desenvolvimento do aplicativo, poder- se-ia pensar na identificação do garçom a fim de gerar receita de gorjetas automaticamente, na geração de relatórios diários por garçom e por mesa e ainda um sistema do tipo push que avisaria do momento em que os pedidos ficassem prontos. 7. Referências DALUPPO, Fábio; MATHEUS, Vanclei; SANTOS, Wallace. Desenvolvendo com C#. Porto Alegre: Bookman, 2004. FERNANDES, Alexandre; TARIFA, Shaud; FARIAS, José Antonio Leal. Desenvolvendo aplicações para Pocket PC e Smartphones para Windows Mobile 5.0 no Visual Studio 2005. WebMobile, Grajaú: DevMedia Group, ano 01, edição 05, p.66-73, out./nov. 2005. GRECO, M. Nasce a Internet sem fio. In Info Exame. Ed. 170, São Paulo: Editora Abril, Maio 2000. Disponível em: www.infoexame.com.br. GSMWorld. Subscriber statistics end Q1 2007. Disponível 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, edição 02, p.34-44, fev./mar. 2005. IIDA, Renato. Desenvolvimento C++ para Symbian OS: Introdução à programação em Symbian C++. Disponível em << http://www.devmedia.com.br/articles/viewcomp.asp?comp=2730&hl=>>. Acesso em 25/11/2007. LARMAN, Craig; Utilizando UML e Padrões: uma introdução à análise e ao projeto orientados a objetos / Craig Larman; trad. Luiz A. Meirelles Salgado. – Porto Alegre: Bookman, 2000. MARTINS, Eduard E.; Desenvolvendo uma aplicação móvel com .NET. WebMobile, Grajaú: DevMedia Group, ano 02, edição 08, p.68-77, abr./maio. 2006. SHARP, Jonh. Microsoft Visual C# 2005: passo a passo. Porto Alegre: Bookman, 2007. WIKIPEDIA a, 2007. Symbian OS. Disponível em << http://en.wikipedia.org/wiki/Symbian>>. Acesso em 25/11/2007. WIKIPEDIA b, 2007. BREW . Disponível em << http://en.wikipedia.org/wiki/BREW>>. Acesso em 25/11/2007.