universidade de santo amaro faculdade de sistema de informação

Propaganda
UNIVERSIDADE DE SANTO AMARO
FACULDADE DE SISTEMA DE INFORMAÇÃOBACHARELADO
DESENVOLVIMENTO DE APLICATIVO PARA DISPOSITIVO MÓVEL
UTILIZANDO MEIOS DE COMUNICAÇÃO
ANDRE ALOISE
ALEXANDRE DEGOUY
LEANDRO AUGUSTO
RAFAEL FERREIRA
RUDGE RENAN
SÃO PAULO
2008
ANDRE ALOISE
ALEXANDRE DEGOUY
LEANDRO AUGUSTO
RAFAEL FERREIRA
RUDGE RENAN
DESENVOLVIMENTO DE APLICATIVO PARA DISPOSITIVO MÓVEL
UTILIZANDO MEIOS DE COMUNICAÇÃO
Monografia apresentada à Faculdade de
Sistema de Informação da Universidade
de Santo Amaro – UNISA, como parte dos
requisitos para conclusão do curso de
Bacharelado em Sistema de Informação.
Orientador: Prof. Eugênio Nassu
SÃO PAULO
2008
2
SUMÁRIO
Dedicatória ............................................................................................ 4
Agradecimentos ................................................................................... 5
Resumo ................................................................................................. 7
Abstract ................................................................................................. 8
1. Introdução ....................................................................................... 8
1.1.
1.2.
Objetivos ...................................................................................................... 9
Estruturas do Trabalho ............................................................................... 9
2. Comunicação para Dispositivos Móveis .................................... 10
2.1. Tecnologias de Comunicação Sem Fio ................................................... 11
2.1.1. Bluetooth ............................................................................................ 12
2.1.1.1.
Vantagens.................................................................................... 14
2.1.1.2.
Desvantagens ............................................................................. 14
2.1.2. Wireless .............................................................................................. 15
2.1.2.1.
Frequency Hopping Spread Spectrum...................................... 17
2.1.2.2.
Direct Sequence Spread Spectrum ........................................... 18
2.1.2.3.
Modos de Operação ................................................................... 18
2.1.2.4.
Vantagens.................................................................................... 19
2.1.2.5.
Desvantagens ............................................................................. 19
2.2. Desenvolvimento de Aplicativo ............................................................... 20
2.2.1. UML ..................................................................................................... 20
2.2.1.1.
Diagrama de Caso de Uso.......................................................... 21
2.2.1.2.
Diagrama de Classes .................................................................. 22
2.2.1.3.
Diagrama de Seqüência ............................................................. 23
2.2.2. Java ..................................................................................................... 23
2.2.2.1.
J2ME ............................................................................................ 25
2.2.2.2.
J2EE ............................................................................................. 26
2.2.2.2.1. Servlet...................................................................................... 26
2.2.2.2.2. JSP ........................................................................................... 27
2.2.3. Banco de Dados ................................................................................. 28
2.2.3.1.
SQL .............................................................................................. 31
3. Implementação das Tecnologias e Desenvolvimento ............... 32
3.1. Wireless ..................................................................................................... 32
3.2. UML ............................................................................................................ 33
3.2.1. Caso de Uso ....................................................................................... 33
3.2.2. Diagrama de Atividades .................................................................... 34
3.2.3. Diagrama de Classe ........................................................................... 36
3.2.4. Diagrama de Sequência .................................................................... 36
3.3. J2EE ........................................................................................................... 36
3.3.1. Arquitetura MVC .................................................................................... 36
3.4. Mysql .......................................................................................................... 39
4. Conclusão ..................................................................................... 40
4.1.
4.2.
Dificuldades Encontradas ........................................................................ 40
Trabalhos Futuros..................................................................................... 40
5. Referência bibliográfica ............................................................... 41
3
Dedicatória
Agradecimento
4
Agradecimentos
Agradeço a Deus e aos nossos pais, pela vida.
Gostaríamos de agradecer imensamente a todos que contribuíram para este
trabalho. Agradecemos às nossas famílias, pelo apoio, compreensão e incentivo,
não só durante o curso, mas em todos os momentos importantes de nossas vidas.
Agradecemos também ao nosso orientador Professor Eugenio Nassu e
amigos em comum que formamos ao longo do curso, e a todos os nossos Mestres
que contribuíram para a nossa formação acadêmica, pessoal e profissional.
Por fim agradecemos a todos os nossos amigos, namoradas ou esposas que
contribuíram de todas as formas para a realização deste trabalho com apoio,
incentivos e compreensão.
Que a força do medo que tenhamos não nos impeça de ver o que ansiamos...
Que a arte nos aponte uma resposta mesmo que ela não saiba
e que ninguém a tente complicar
pois é preciso simplicidade pra fazê-la florescer.
{Porque metade de nós é a criação e na outra habita o criador.}
(adaptado de Metade, de Oswaldo Montenegro.
...Porque na natureza, tudo se transforma.)
5
6
Resumo
Proposta: Este trabalho tem como objetivo desenvolver uma solução voltada
à área escolar, facilitando o desenvolvimento e interação do professor com o aluno
na sala de aula através do diário de aula eletrônico.
Hoje identificamos que essa possibilidade é possível com meios de
comunicação
portáteis
como
celulares
smartphones.
Utilizando
meios
de
comunicação usando ondas de rádio. Método de pesquisa: os dados serão
coletados utilizando um dispositivo móvel, onde serão enviados a um servidor com
os dados coletados. Essa possibilidade só será possível dentro do projeto com o
desenvolvimento de aplicações em Java. Resultado: com os dados coletados que
foram enviados ao servidor, usando esse dispositivo móvel o próprio professor terá
informações sobre a presença dos alunos a sua aula e até mesmo o aluno terá
acesso as suas próprias informações sobre a presença de aula no mês e aulas que
compareceu nos meses das aulas no período escolar. Fator principal: A elaboração
desse projeto afirma que a portabilidade usando dispositivos móveis, tem grande
ganho no desenvolvimento do aluno e o professor dando confiabilidade nas
informações obtidas na sala de aula.
7
Abstract
Proposal: The objective of this work is to develop a solution that will make the
interaction between teachers and students easier in class, through an electronic
class diary which can be developed during class.
Today we identified that these kind of method is possible, through portable
communicators’ such as smart phone. Or by using radio waves communicators.
Research method: A mobile modem will collect all of the data, the data will
then be sent to a server were all the collected data will be stored. This project will
need to be developed on java.
Results: By using the mobile modem the teacher will be able to access the
collected data stored in the server, which will provide him information on student’s
presence in his classes during the year. These information can also be accessed by
students so that they can monitor their presence in school.
Principal Fact: The elaboration of this project proves that: by using portable
students and teachers will develop their performance in school, and the dates’ will be
more trustful and accurate.
1. Introdução
Conforme Barros, Santos, Ramalho (2003) com o crescimento da tecnologia de telefonia
celular, estes dispositivos, que antes eram centrados na transmissão de voz,
8
passaram cada vez mais a focar seus objetivos em processamento e transmissão de
dados. Rodar aplicações, tirar fotos, receber e enviar emails ou navegar na web
estão se tornando atividades comuns aos celulares atuais. Devido ao seu grande
poder de conectividade e a sua mobilidade.
Do mesmo modo como acontece com software para computadores pessoais,
nos últimos anos uma tendência que vêm se confirmando é o desenvolvimento de
aplicativos para dispositivos móveis, os quais estão se difundindo de forma rápida
em todo o mundo.
A busca pela portabilidade faz com que haja o crescimento do mercado no
desenvolvimento de novos aparelhos que possuem comunicação ágil rápida.
Quando se fala de Wi-Fi e Bluetooth que são meios de comunicação de
dados bastante conhecidos surge certa confusão nas pessoas. Muita gente acha
que as duas coisas têm o mesmo propósito ou, até mesmo, que são a mesma coisa.
Na verdade, as duas tecnologias têm propósitos totalmente diferentes um do outro.
1.1. Objetivos
Objetivo desse trabalho é demonstrar a implementação de um projeto com
intuito de criar um diário de controle de classe utilizando tecnologias e ferramentas
que tornem possíveis essa aplicação dentro do sistema educacional focando o seu
uso primeiramente na da sala de aula. O aumento da disponibilidade das tecnologias
sem fio trouxe ao mercado a facilidade de se trabalhar com diversos dispositivos
moveis demonstrando aos seus usuários a sua enorme abrangência possibilitando o
uso nos mais diferentes ambientes.
1.2. Estruturas do Trabalho
Esse trabalho se encontra dividido em quatro capitulo:
No primeiro capitulo, encontra-se a introdução, objetivo a ser alcançado no
desenvolvimento do projeto. No segundo capitulo é apresentado a fundamentação
9
teórica, demonstrando as tecnologias disponíveis para a utilização em dispositivos
moveis dentre elas bluetooth , wireless e JAVA, padronização de modelagem de
sistemas, conceitos de repositórios. O terceiro capítulo aborda o desenvolvimento do
trabalho,apresentando os requisitos, especificação e artefatos gerados durante a
especificação do projeto, ferramentas utilizadas na especificação, desenvolvimento e
execução
do
protótipo,resultados
e
problemas
encontrados
durante
o
desenvolvimento. E finalmente no quarto capítulo trata das considerações finais
sobre o trabalho e sugestões para trabalhos futuros.
2. Comunicação para Dispositivos Móveis
Dispositivos móveis são aparelhos que têm como principal característica
possibilitar seu uso, mesmo com a mobilidade de quem o utiliza. Dentre estes, os
que mais vêm tendo destaque atualmente são os celulares, pois além de fornecerem
serviços de comunicação, implementam uma série de funcionalidades adicionais,
como jogos, bate-papo, agenda, além de muitos aplicativos com objetivos
específicos para cada usuário (Bernal, 2002).
Segundo Cesar Costa, sistemas de comunicação de dados desempenham um
papel muito importante da sociedade brasileira e mundial, o cenário atual aponta que
esse setor se tornará ainda mais importante nos próximos anos. Por comunicação
de dados entendemos uma cadeia de comunicação constituída basicamente porte
três elementos: fonte de informação, sistema de comunicação e destino, conforme
ilustrado na figura abaixo.
Fonte de
informação
Sistema de
Comunicação
Destino
10
Figura 1. Cadeia de comunicação
Pode-se dizer que informação ou mensagem é qualquer sinal que contenha um
dado que se deseja transferir da fonte par ao destino. A fonte de informação é a
origem da informação a ser transmitida. Costuma apresentar-se na forma de sons,
imagens e texto. Um exemplo, a voz humana é uma fonte de informação, um
computador, celular.
O Sistema de comunicação é o conjunto de equipamentos e materiais, elétricos e
eletrônicos, necessários para compor um esquema físico, perfeitamente definido,
com o objetivo de estabelecer enlaces de comunicação (links) entre, pelo mesmo,
dois distantes, preservando ao máximo as características originais da informação.
Por exemplo, sistema de telefonia, as redes de computadores na internet, etc.
O destino é onde a informação será utilizada. Por exemplo, celular num sistema
móvel de telefonia, terminal de computador na internet.
2.1. Tecnologias de Comunicação Sem Fio
Segundo Tanembaum
(1997), a busca por novas tecnologias de
comunicação entre os dispositivos móveis vem crescendo consideravelmente nos
últimos anos. Dentre outras, possibilitar o acesso contínuo a esses dispositivos de
qualquer lugar é uma das principais preocupações dos desenvolvedores, com o
intuito de tornar o uso viável. Como o próprio nome diz, comunicação sem fio nada
mais é do que a troca de informações entre dispositivos sem a necessidade de uma
conexão física entre os mesmos. Isso se dá de várias formas, variando de acordo
com o dispositivo que está sendo utilizado, bem como com as tecnologias por ele.
Segundo Loureiro (2003), dispositivos computacionais moveis não são
simples organizadores pessoais. Com o desenvolvimento tecnológico de fabricação
de circuitos integrados que ocorreu, principalmente, durante a última década, tem
sido possível a fabricação de dispositivos computacionais que possuem um novo
paradigma: paradigma mobilidade. Esse paradigma está mudando a forma de
11
trabalharmos, comunicarmos, divertirmos e estudamos e fazemos atividades quando
estamos em movimentação ou não desejamos ficar “presos” a uma infra-estrutura
fixa de comunicação de dados. Computação móvel esta se tornando uma área
madura e parece destinada a tornar o paradigma computacional dominante no futuro
com dispositivos moveis, handhelds, PDA’s(Personal Digital Assistants), celulares e
dispositivos com interface com GPS (Global Positioning System). Dentre as diversas
infra-estruturas de comunicação sem fios existentes, as mais utilizadas são a
comunicação celular de segunda geração chamada 2G (baseada nos padrões
TDMA, CDMA e GSM) geração 2,5G que é uma solução intermediaria baseada em
pacotes, a 3G, redes locais baseadas em padrão IEEE 802.11, redes pessoais
baseadas no Bluetooth.
2.1.1. Bluetooth
Bluetooth é um padrão proposto pelo Bluetooth SIG (Special Interest Group)
[Bluetooth Special Interest Group], que é um consórcio das maiores empresas de
telecomunicações e computação do mundo. O padrão opera na faixa ISM (Industrial,
Scientific, and Medical) de 2,4 GHz e tem como princípio propor uma tecnologia de
baixo custo para conectividade sem fio. Inicialmente o padrão foi projetado como
uma solução para substituição de cabos usados na comunicação de periféricos
(figura 2) por comunicação via rádio. No entanto, ele permite a conexão entre
diferentes tipos de dispositivos possibilitando a formação de redes ad-hoc (figura 2).
A estrutura básica de comunicação no Bluetooth é chamada de piconet. A
piconet tem a característica de ser uma rede onde um nodo central, definido como
mestre se comunica ativamente com os outros nodos chamados de escravos,
formando uma topologia em estrela, com no máximo sete elementos. Piconets
podem se conectar entre si formando scatternets (figura 2).
O pequeno alcance de comunicação dos dispositivos faz com que essas
piconets possuam a característica de formarem pequenas redes pessoais,
conhecidas como PAN – Personal Área Network.
Algumas das principais diferenças entre o Bluetooth e outros tipos de redes
sem fio são:
12

_ Redes formadas basicamente de dispositivos com baixa capacidade
e pouca energia;

_ As conexões entre dois dispositivos possuem diversos estados, com
o objetivo de economizar energia e gerenciar a formação de outras
piconets;

_ Formação espontânea de piconets, possibilitando modificações
constantes em sua topologia. Essas modificações não são apenas em
função da mobilidade, como normalmente acontece nas redes sem
fio;

_ As scatternets possuem pequenos diâmetros, sendo formadas por
menos do que 10 piconets, pois o Bluetooth prevê que as PAN’s
façam comunicação entre usuários e dispositivos;

O estabelecimento da conexão entre dois nodos passa por um
procedimento de identificação e sincronização que necessita de uma
temporização para ocorrer efetivamente.
Outro ponto é a maneira que o canal entre o mestre e o escravo é tratado. A
comunicação de rádio do Bluetooth usa um esquema de salto de freqüência
(frequency hopping) para permitir uma comunicação robusta em ambientes com
muita interferência e uma comunicação mais segura e personalizada, com um
número mínimo de colisões quando comparado com outros padrões. A
especificação define dois sistemas de salto de freqüência, um que trabalha sobre 73
freqüências diferentes, e outro sobre 23. Durante a comunicação, é utilizado o TDD
(Time Division Duplex), que possibilita o suporte a comunicação duplex. A seqüência
do salto de freqüência é definida pelo identificador único do mestre na rede, um
número gerado de forma similar ao especificado pelo IEEE802, e o TDD é
controlado por um relógio que se encontra no mestre, o que faz com que todos os
nodos que se comunicam com o mestre passem por um processo de identificação e
sincronização.
13
Figura 2– Tipos de redes formadas entre dispositivos Bluetooth
2.1.1.1.

Vantagens
Baixar o custo dos circuitos necessários para adição das
características de comunicação móvel em dispositivos portáteis para
computação;

A tecnologia implementa a interconexão independente da
características ou natureza do dispositivo;

A tecnologia pode ser facilmente integrada aos protocolos de
comunicação, por exemplo, TCP/IP;

Baixo consumo de energia;

Fácil de usar habilita o produto a não precisar instalar de drives,
sendo usá-lo e configurá-lo;

Banda de Radio (ISM) não paga, diferentemente da banda GSM,
por exemplo, que é necessário firmar um contrato para utilização;

O Bluetooth suporta comunicação tanto por voz quanto por
dados, sendo útil nas mais diversas aplicações;
2.1.1.2.
Desvantagens
14

O número máximo de dispositivos que podem se conectar ao
mesmo tempo é limitado, principalmente se compararmos com a rede
cabeada;

O alcance é bastante curto, por isso uma rede pode ser apenas

A taxa de transferência de dados inviabiliza muitas das
local;
aplicações multimídia atuais;
2.1.2. Wireless
A implementação mais comum na topologia sem fio é que utilizam RF
(radiofreqüência), baseada no padrão IEEE (Institute of Electrical and Electronic
Engineers) 802.11b, que utiliza a faixa de 2.4 GHz do espectro de freqüências.
Devido ao crescimento da computação móvel, surgiu a necessidade de novos
meios de transmissão de dados. Interligar as redes de dois prédios, adicionar novos
usuários e equipamentos a rede e permitir a comunicação onde há dificuldade
impossibilidade da passagem de cabos tornou-se possível com o surgimento das
Redes Locais Sem Fio (Wireless LAN).
Essas redes possibilitam o uso de computadores e envio de dados em
qualquer lugar, dentro da cobertura da rede, com uma conexão confiável, flexível, de
alto desempenho, e sem a necessidade de estar conectado a rede através de cabos.
O transporte de dados por meio de rede wireless envolve três elementos
físicos distintos: sinais de rádio, o formato de dados e a estrutura de redes.
Cada um desses elementos é independente dos outros dois, portanto é
necessário definir os três quando se cria uma nova rede.
No que se refere ao modelo de referência da camada OSI, o sinal de rádio
opera na camada física, enquanto o formato de dados controla várias das camadas
mais elevadas
15
As redes sem fio não visam competir ou substituir as redes cabeadas, mas
sim complementá-las, permitir a visualização rápida dos dados independente da
localização do usuário. Os dados são transmitidos pelo ar ou espaço livre que se
constituem de meios naturais para propagação de sinais eletromagnéticos, provendo
uma interconexão completa, e permitindo uma grande flexibilidade na localização
das estações.
A única diferença entre uma rede sem fio e uma rede tradicional é o meio
físico, e justamente para padronizar o acesso ao meio físico sem fio e permitir a
interoperabilidade entre fabricantes, o IEEE (Institute of Eletrical and Electronic
Engineers) aprovou a norma IEEE 802.11 que regulamenta redes sem fio, operando
na faixa de 2,4 GHz.
A rede sem fio suporta os principais tipos de protocolos em frames Ethernet:
TCP/IP, IPX, NETBEUI. A velocidade varia de 1 a 11 Mbps e a distância chega a 70
km.
Segundo essa norma a unidade básica das redes sem fio é a célula – área
de cobertura conhecida como BSS (Basic Service Set). O alcance de uma célula
depende da força dos sinais de radiofreqüência, das paredes e outros fatores físicos.
Uma célula básica é composta por um ponto de acesso e as estações a ele
associadas. Em uma área que compreenda vários pontos de acesso conectados à
mesma rede, as áreas de cobertura das várias células são ditas sobrepostas. A
cobertura sobreposta é importante, pois permite aos usuários com estações de
trabalho portáteis movimentarem-se livremente entre as células sem que ocorra
perda da conexão. Essa liberdade de movimento é
denominada roaming e é transparente ao usuário.
Como no padrão Ethernet, a 802.11 possui um protocolo de Controle de
Acesso ao Meio (MAC, CSMA/CD). Existem, basicamente, quatro possíveis tipos de
tecnologias de transmissão empregadas na construção de redes locais sem fio, são
elas:

· Infravermelho:
A maior vantagem do infravermelho é sua habilidade em carregar uma
grande largura banda, podendo atingir até 16 Mbps, operando na faixa de 100 THz.
16
O infravermelho pode ser facilmente obstruído, a luz não passa objetos sólidos e
opacos como parede e pode receber interferência de iluminação do ambiente.

· Rádio Microondas
A tecnologia de microondas não é exatamente uma tecnologia de LAN. Seu
principal uso é interconectar rede locais em diferentes prédios. Devem ser usados
aparatos para microondas (microwave dish-aparato com formato de uma Atena
parabólica) em ambos os lados da conexão. As "microwave dishes" devem ter
visada direta (estar na mesma linha de visão) para transmitir e coletar os sinais do
microondas.

· Laser
Os sinais a lazer são os mais comumente utilizados para conexões ponto-aponto de longa distância, como interligação de duas LAN’s em prédios separados,
por exemplo.
Os sistemas baseados em tecnologias lazer necessitam de visada direta
entre os pontos para poder operar, isto é, o receptor deve estar na mesma linha do
transmissor para haver comunicação entre os pontos de conexão.
Os sistemas wireless a laser estão sujeitos a interferências climáticas, como
chuvas nevoeiros que podem interromper a transmissão.

· Spread Spectrum
É a tecnologia de transmissão mais utilizada por ser menos sensível a
interferências do meio, e atravessar obstáculos com mais facilidade que sistemas
que utilizam microondas, por fazer uso de freqüências menores, portanto mais fáceis
de ultrapassar paredes, por exemplo.
A função fundamental dos sistemas Spread Spectrum é aumentar a largura
de banda passante (bandwidth).
Existem dois tipos de técnicas Spread Spectrum:

· Frequency Hopping Spread Spectrum (FHSS – “Freqüência
Saltadora”)

· Direct Sequence Spread Spectrum (DSSS – “Sequenciamento
Direto”)
2.1.2.1.
Frequency Hopping Spread Spectrum
17
Nesta técnica, o transmissor envia o sinal sobre uma série aparentemente
randômica de freqüências de rádio. Um receptor, “saltando” entre tais freqüências
em sintonia com o transmissor, capta o sinal. A mensagem é totalmente recebida
apenas se a série de freqüências é conhecida, ou seja, apenas o receptor que
conhecer as freqüências nas quais o transmissor “saltará” para enviar o sinal,
poderá receber os dados com sucesso, onde o receptor contém o mesmo algoritmo
do transmissor.
2.1.2.2.
Direct Sequence Spread Spectrum
Já nesta tecnologia, os transmissores enviam o sinal com a adição de bits
redundantes de dados chamados “chips”, ou seja, com um falso ruído, garantindo a
resistência a interferências. São adicionados pelo menos dez chips para cada bit de
dado. Um receptor precisa conhecer o código de difusão de um transmissor para
poder decifrar os dados corretamente. Uma vez que o receptor tenha captado todos
os sinais de dados, ele usa um correlator, baseado no código de difusão, para
remover os chips e truncar o sinal ao tamanho original.
O código de difusão é o que permite que diversos sistemas de Direct
Sequence operem em uma mesma área sem um interferir no outro.
2.1.2.3.
Modos de Operação
As WLAN’s suportam dois modos de operação: infra-estrutura e peer-topeer. O modo de infra-estrutura usa a tecnologia de redes celulares onde cada
célula de rádio é controlada por um access point cobrindo uma determinada área
geográfica. Neste módulo, o equipamento móvel comunica-se com outros
equipamentos ou com a rede de cabos através do access point. Esse modo é
normalmente usado em aplicações comerciais, tanto para ambientes fechados ou
em áreas abertas, para assegurar a cobertura em grandes áreas os equipamentos
móveis podem se comunicar uns com os outros.
18
O modo de operação peer-to-peer é um tipo de topologia ad-hoc onde os
terminais remotos fazem troca de dados sem necessidade de um access point.
2.1.2.4.
Vantagens
• Mobilidade -. sistemas de redes locais sem fio podem providenciar aos
usuários acesso à informação em tempo real em qualquer lugar de suas
organizações.
• Instalação rápida e simples -. instalar uma rede local sem fio pode ser
rápido e fácil, além de eliminar a necessidade de atravessar cabos através de
paredes e andares.
• Flexibilidade - tecnologia sem fio permite que as redes cheguem aonde
cabos não podem ir.
• Custo Reduzido-. enquanto que o custo inicial de uma rede local sem fio
pode ser maior que de uma rede local fixa, a instalação e o ciclo de vida são
significantemente mais baixos.
• Escalabilidade -. Redes locais sem fio podem ser configuradas segundo
diversas topologias de acordo com as necessidades. Configurações podem ser
mudadas facilmente e a distäncia entre as estações adaptadas desde poucos
usuários até centenas. Segurança o sistema WEP suporta encriptação Wired
Equivalente Privacy (WEP) com chave de até 128 bits. Todo o tráfego de rede passa
por uma VPN (Virtual Private Network) utilizando o protocolo IPSec (IP Secure) com
chave de 1024 bits, garantindo proteção à rede contra ataques externos.Interligação
entre matriz e filiais com a VPN (Rede Privada Virtual) é possível conectar matriz a
filiais através da Internet, de forma segura, garantindo autenticação, privacidade e
integridade.
2.1.2.5.
Desvantagens
19
Custo de implantação - Adaptadores Ethernet de alta velocidade são, em
geral, 10 vezes mais baratos que adaptadores para redes sem fio. A implementação
de redes sem fio reduz significativamente os custos mensais de telecomunicações o
que proporciona uma rápida recuperação do capital investido nestes equipamentos.
Soluções proprietárias - Devido ao lento procedimento de padronização,
muitas empresas precisam apresentar soluções proprietárias, oferecendo funções
padronizadas mais características adicionais (tipicamente uma taxa de transmissão
mais rápida utilizando uma tecnologia de codificação patenteada). Porém, estas
características adicionais funcionam apenas em um ambiente homogêneo, isto é,
quando adaptadores do mesmo fabricante são utilizados em todos os nós da rede.
Restrições - Todos os produtos sem fio precisam respeitar os regulamentos
locais. Várias instituições governamentais e não-governamentais regulam e
restringem a operação das faixas de freqüência para que a interferência seja
minimizada. Um grande empecilho para o uso deste equipamentos é necessidade
de visada direta entre os pontos.
Segurança e privacidade – pelo fato de que a comunicação sem fio pode ser
capturada a qualquer receptor sintonizado na mesma freqüência da comunicação ,
torna-se necessário que exista um mecanismo adicional de segurança na
implementação desta topologia tal como criptografia da comunicação. A interferência
proveniente de dois pontos, outros dispositivos que atuam na mesma banda de
espectro e obstáculos tais como paredes ou naturais, tal como montes.
2.2.
Desenvolvimento de Aplicativo
2.2.1. UML
20
De acordo Booch; Rumbaug; Ivar (2003), UML (Unified Modeling Language) é
uma linguagem padrão para elaboração da estrutura de projetos de software. A UML
poderá ser empregada para a visualização, a especificação, a construção e a
documentação de artefatos que façam uso de sistemas complexos de software.
A UML é adequada para modelagem de sistemas cuja abrangência poderá
incluir sistemas de informação corporativos a serem distribuídas aplicações
baseadas em web e até sistemas complexos embutidos de tempo real. È uma
linguagem muito expressiva, abrangendo todas as visões necessárias ao
desenvolvimento e implantação desses sistemas. Apesar de sua expressividade,
não é difícil compreender e usar a UML. Aprender a aplicar a UML de maneira
efetiva tem inicio com a formação de um modelo conceitual da linguagem, o que
pressupõe e o entendimento de três princípios elementos: os blocos de construção
da UML, as regras que determinam como esses blocos de construção deverão ser
combinados e alguns mecanismos básicos que se aplicam a toda a linguagem.
A UML é apenas uma linguagem e, portanto, é somente uma parte de um
método para desenvolvimento de software. A UML é independente do processo
apesar de ser perfeitamente utilizada em processo orientado a casos de usos,
centrado na arquitetura, iterativo e incremental.
2.2.1.1.
Diagrama de Caso de Uso
21
Diagrama de caso de uso é utilizado para facilitar a comunicação com os
futuros usuários dos sistema é importante para determinar os recursos necessários
para especificação do que o sistema deve ser .
O caso de uso escrito no ponto de vista dos atores (o ator é uma entidade
externa que interage com o sistema), como um grupo de atividades que produz
resultados concretos. Eles representam a interface externa do sistema especificando
um conjunto de exigências do que o sistema deverá fazer.
É importante lembrar que as regras básicas para a utilização do caso de uso
levando em consideração que um relacionamento tem que estar ligado no mínimo a
um ator que possui um iniciador (um ator principal) e cada caso de uso liga a um
resultado com valor relevante. (Booch; Rumbaug; Ivar, 2003)
2.2.1.2.
Diagrama de Classes
Diagramas de classes são os digramas encontrados com maior freqüência na
modelagem de sistemas orientados á objetos. Um digrama de classes mostra um
conjunto de classes, interfaces e colaborações e seus relacionamentos.
Os diagramas são importantes não só para visualização, especificação e a
documentação de modelos estruturais, mas também para a construção de sistemas
executáveis por intermédio de engenharia de produção reversa.
(Booch;
Rumbaug;Ivar, 2003)
Segundo Cleuton (2007) diagrama de classe é uma visão estática de um
modelo de objetos. Como um modelo relacional (entidade relacionamento) ele
descreve as entidades, neste caso, classes, e os relacionamentos entre elas.
22
2.2.1.3.
Diagrama de Seqüência
Segundo Alexandre (2007), diagrama de seqüencia UML tem como objetivo
determinar uma seqüencia de eventos que ocorrem em um determinado processo,
listando quais métodos devem ser disparados entre os atores e objetos envolvidos,
bem com a ordem com os quis estes devem ocorrer. Este digrama complementa o
diagrama de caso de uso, visto estar baseado neste último mostrando assim a
interação do ponto de vista dos sistema entre um ator e uma determinada finalidade.
O diagrama de seqüência permite também refinar o diagrama de classes, já que as
classes necessárias se fazem presente nas seqüências de interações.
2.2.2. Java
Segundo M. Johnson (2007), a tecnologia Java, que foi desenvolvida e
disponibilizada pela Sun em 1994, tornou-se muito popular desde então. O sucesso
dessa tecnologia é muito grande no meio empresarial e acadêmico. Profissionais de
desenvolvimento fazem cursos e provas de certificações que comprovem sua
proficiência na linguagem. O sucesso dessa linguagem se deve a facilidade de ser
utilizada em diversas plataformas (desktops, servidores, etc.).
A Sun desenvolveu a tecnologia Java com o intuito de criar um tipo de
linguagem de programação “universal”, a qual poderia ser executada em qualquer
tipo de sistema computacional para diversos tipos de hardware. Para isso, a
linguagem Java, quando compilada, gera um bytecode, que é lido por interpretador
conhecido como Maquina Virtual Java (Java Virtual Machine-JVM). Este traduz, em
tempo de execução, as instruções para uma linguagem de maquina compatível com
o tipo de processador utilizado.
Assim, pode-se utilizar um único código fonte e executar mesmo bytecode em
diversos sistemas operacionais diferentes, desde que possuam uma JVM. Então,
teoricamente, seria utilizar este bytecode gerado em dispositivos moveis, pois eles
também podem ter uma JVM instalada. Veremos adiante que isso é possível em
razão das muitas diferenças entre os sistemas de grande poder de processamento
(como servidores e computadores desktop) e os dispositivos de computação móvel
de pouco poder computacional, como telefones celulares. A plataforma Java definida
23
pela Sun Microsystems é atualmente dividida em quatro grandes grupos (veja a
figura). J2SE (Java 2 Standard Edition) é o grupo principal, destinado a
computadores pessoais domésticos (end-user). J2EE (Java 2 Enterprise Edition) é
mais abrangente que a J2SE, sendo destinada a aplicações do lado do servidor.
J2ME (Java 2 Micro Edition) tem o objetivo de disponibilizar aplicativos Java em
dispositivos portáteis, como PDA´s, pagers e celulares. Finalmente, JavaCard é uma
tecnologia destinada a rodar em smart-cards e outros dispositivos extremamente
limitados.(Murukami, 2003).
Figura 3- Plataforma Java
24
2.2.2.1.
J2ME
Segundo Abreu (2006) J2ME é o ambiente de desenvolvimento para
dispositivos móveis ou portáteis, como telephones celulares e palmtops. A
plataforma J2ME contém configurações e bibliotecas trabalhadas especialmente
para a atuação em dispositivos portáteis para auxiliar nas limitações de
processamento e memória.
Para rodar nestes dispositivos, a linguagem precisaria ser bastante
simplificada e otimizada, removendo os componentes que não estão presentes ou
não são utilizados nestes dispositivos. Sua arquitetura foi dividia em três camadas: a
máquina virtual propriamente dita, os perfis e as configurações.
A máquina virtual de J2ME é a KVM – Kilobyte Virtual Machine, e é a base
da arquitetura, devendo ser implementada para cada dispositivo, criando uma
camada de software que abstrai o sistema operacional e garante a portabilidade.
Sobre a máquina virtual são definidas as configurações, que são um
conjunto mínimo de classes que provêem as funcionalidades básicas para as
categorias de dispositivos. Pode-se relacionar 2 configurações:
• CLDC – Connected Limited Device Configuration, projetada para
dispositivos com conexões de rede intermitentes, processadores mais lentos e
memória limitada, como os telefones celulares e alguns PDA’s;
• CDC – Connected Device Configuration, configuração para dispositivos
com mais memória e poder de processamento, e uma conexão com uma maior
largura de banda, como set-top boxes, sistemas de telemetria de veículos e PDA’s
mais poderosos.
Sobre a configuração, são definidos os perfis, API’s de alto-nível que
disponibiliza um ambiente de execução completo e direcionado para os dispositivos
alvo. O perfil utilizado para telefones celulares é o MIDP – Mobile Information Device
Profile. Este perfil provê as principais funcionalidades requeridas pelas aplicações
25
para celulares, como interface com o usuário, conectividade, manipulação de
arquivos e gerenciamento da aplicação em geral. (Barros; Santos; Ramalho, 2003).
2.2.2.2.
J2EE
Segundo Abreu (2006), J2EE (Java 2 Enterprise Edition) é a plataforma Java
voltada a servidores de aplicação, redes e Internet. Alem disso, aplicações que
utilizam o modelo J2EE têm como característica a necessidade de suportar
simultaneamente uma grande quantidade de usuários. A plataforma J2EE contem
uma serie de especificações, cada uma com funcionalidades distintas, por exemplo,
JDBC(Java
Database
Connectivity),
JSP(Java
Server
Pages)
,
Servlets,
EJB(Enterprise Java Beans), entre outros.
2.2.2.2.1. Servlet
No início da Internet, todas as páginas eram compostas por arquivos HTML.
Isso logo representou um problema, pois páginas desse tipo possuem uma
capacidade limitada de interação com o usuário. Para resolver esse problema,
surgiram os scripts CGI. Scripts CGI são programas que rodam no servidor e
montam uma página dinamicamente. Isso permite, por exemplo, que o resultado de
uma busca em um banco de dados seja mostrada numa página de internet.
Java Servlets é a tecnologia Java desenvolvida para substituir a
programação CGI. Um servlet é um programa Java rodando no servidor que monta
uma página de Internet dinamicamente. As vantagens dos servlets sobre a
programação CGI são:
·
Servlets são mais eficientes que programas CGI. Um processo CGI é
iniciado no servidor toda vez que é feita uma solicitação http. No caso de um servlet,
a máquina virtual Java permanece rodando durante todo o tempo. Durante uma
solicitação http, somente um novo thread Java é criado, o que é muito mais rápido
do que iniciar um processo CGI.
·
A linguagem Java é bastante conhecida, tornando o aprendizado de
Java Servlets fácil e rápido.
26
·
Java Servlets possui uma ampla biblioteca de recursos, permitindo
entre outras coisas, manipulação de cookies, sessões, cabeçalhos http de maneira
simples.
·
Praticamente todos os servidores para Internet possuem suporte a
Java Servlets (Murukami, 2003).
A seguir é apresentado um exemplo de Java Servlet (adaptado de
http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/):
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWWW extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
"Transitional//EN\">\n" +
"<HTML>\n" +
"<HEAD><TITLE>Hello WWW</TITLE></HEAD>\n" +
"<BODY>\n" +
"<H1>Hello WWW</H1>\n" +
"</BODY></HTML>");
}
}
2.2.2.2.2. JSP
Java servlets resolvem o problema de criar páginas dinâmicas. Entretanto,
as páginas criadas por servlets são produzidas dentro do código, através de uma
série de comandos do tipo “println”. Isso torna difícil a produção do layout da página.
Usualmente, o layout de uma página de internet deve ser feito por diagramadores e
artistas gráficos, e não por programadores. Assim, seria mais adequado se
houvesse um jeito de separar código e interface.
Para tentar solucionar esse problema, a Sun criou a tecnologia de Java
Server Pages (JSP). Uma página JSP é semelhante a uma página HTML, acrescida
de algumas linhas de código Java. O código Java é inserido dentro de tags
especiais. As páginas JSP produzidas são instaladas no servidor como se fossem
27
páginas HTML. Durante o primeiro acesso à página, o servidor converte a página
JSP em um servlet. Linhas de código HTML são convertidas em comandos “println”,
enquanto que linhas de código Java são inseridas no código do servlet. O servlet
assim produzido é então utilizado para atender às requisições http. A seguir, é
apresentado um exemplo de página em JSP.
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Contador JSP</TITLE>
</HEAD>
<BODY>
<!—- Declaração -->
<%! int n = 0; %>
<!—- Scriplet -->
<% n = n + 1; %>
<!—- Expressão -->
Essa página foi acessada <%= n %> vezes.
</BODY>
</HTML>
O código JSP permite o uso de vários tipos diferentes de tags (como foi
mostrado no exemplo acima). Além disso, é permitida a criação de bibliotecas de
tags próprias. São as chamadas taglib´s. A Sun padronizou uma taglib padrão
chamada STL (Standard TagLib). A implementação mais importante dessa taglib é a
da Apache. (Murukami, 2003).
2.2.3.
Banco de Dados
Os sistemas de gerenciamento de banco de dados estão em constante
evolução, deixando de ser somente uma mera aplicação para gerenciamento de
banco de dados para se tornar se tornar parte central de um importante ambiente de
computação moderna.
Este como ensino torna-se fundamental para os cursos de ciências da
computação.
28
O SGBD ou sistema de gerenciamento de banco de dados é constituído por
um conjunto de dados associados a um conjunto de programas a fim de efetuar o
processamento e busca desses dados.
O principal objetivo de um SGBD é proporcionar um ambiente tanto
conveniente quanto eficiente para a o armazenamento e para a parte de
recuperação de informações, dos dados dentro do banco de dados.
O SGBD é um sistema que beneficia devido os dados serem mais abstratos
possíveis. Isso proporciona ao usuário buscas e consultas mais consistentes e o
ocultamento dos detalhes destes dados.
A abstração dos dados ajuda a omitir a complexidade da estrutura do banco
de dados a fim de ajudar pessoas com pouco conhecimento e que depende de
efetuar buscas dentro do banco, isso se deve ao analista fazer o nivelamento do
acesso dessas pessoas.
Existem alguns níveis de complexidade dentro dos SGBD’s:

- Nível físico: é o mais baixo nível de abstração que descreve como
esses dados estão de fato armazenados;

- Nível lógico: este é o nível médio de abstração que descreve quais
dados estão armazenados no banco e quais os inter-relacionamentos
entre eles;

- Nível de visão: é o mais alto nível de abstração que descreve
apenas parte do banco de dados. A despeito das estruturas simples
do nível lógico, alguma complexidade permanece devido ao tamanho
dos bancos de dados;
Os bancos de dados mudam através do tempo à medida que informações
são inseridas ou apagadas. A coleção de informações armazenadas no banco de
dados em um determinado momento é chamada de instancia.
O projeto geral do banco de dados é chamado de esquema de banco de
dados. Os esquemas não mudam com freqüência.
29
Existem vários tipos de modelos para banco de dados, eis alguns exemplos:

- Modelo de dados: é um conjunto de ferramentas conceituais
usadas para a descrição de dados, relacionamentos entre dados,
semântica de dados e regras de consistências.

- Modelos lógicos com base em objetos: os modelos lógicos com
base em objetos são usados na descrição de dados a nível lógico e
de visões. São caracterizados por dispor de recursos de
estruturação mais flexíveis e por viabilizar a especificação mais
explicita das restrições de dados.
O modelo de entidade de relacionamento tem por base a percepção do
mundo real, consistindo em um conjunto de objetos básico chamado entidade, e se,
existir relacionamento entre elas é chamada entidades.
O modelo pretende primeiramente servir ao desenvolvimento de um projeto
de banco de dados. Foi desenvolvido para facilitar o projeto de banco de dados e
para facilitar a especificação do “esquema da empresa”. Esse esquema representa
toda a estrutura lógica do banco de dados. Esta estrutura completa pode ser
expressa graficamente pelo diagrama de E-R (Entidade de relacionamento).
Uma entidade é um objeto que existe e é distinguível de outros objetos.
Podemos obter uma distinção por meio da associação de cada entidade a um
conjunto de atributos que descreve esse objeto. Um relacionamento é uma
associação entre algumas entidades. A coleção de todas as entidades do mesmo
tipo é chamada de conjunto de entidades e a coleção de todos os relacionamentos
do mesmo tipo é um conjunto de relacionamentos.
Uma tarefa importante de um banco de dados é especificar como as
entidades e os relacionamentos são diferenciados. Conceitualmente, entidades e
relacionamentos individuais são distintos na perspectiva do banco de dados,
entretanto essas diferenças precisam ser expressas em termos de seus atributos.
Para fazer tais distinções, estabelecemos as chaves primárias de cada
conjunto de entidades. A chave primária é um conjunto de um ou mais atributos que,
30
tomados coletivamente, nos permitem identificar de modo único uma entidade dentro
de seu conjunto, assim como um relacionamento dentro de um conjunto de
relacionamentos.
Um conjunto de entidades que não possui atributos suficientes para formar
uma chave primária é chamado de conjunto de entidades fracas. Um conjunto de
entidades que tem uma chave primária é chamado de conjunto de entidades fortes.
Vários recursos oferecidos pelo modelo E-R proporcionam aos projetistas de
banco de dados numerosas opções para a escolha da melhor representação da
empresa que está sendo modelada.
Conceitos e objetos podem, em certos casos, ser representados por
entidades, relacionamentos e atributos.
Um banco de dados representado por um diagrama E-R pode ser
representado por uma coleção de tabelas. Para cada conjunto de entidades e para
cada conjunto de relacionamentos em um banco de dados há uma única tabela, que
recebe o nome do conjunto de entidades ou do relacionamento correspondente.
Cada tabela possui um numero de colunas, também elas com um único
nome. A conversão da representação do banco de dados de um diagrama E-R para
a forma de tabelas é a base para a derivação do diagrama bem sucedido para um
banco de dados relacional. (Silberschatz; F. Korth; Sudarshan, 1999).
2.2.3.1.
SQL
SQL tem representado o padrão para linguagem de banco de dados relacionais.
Existem diversas versões de SQL. A versão original foi desenvolvida pela IBM no
Laboratório de Pesquisa de San José (hoje o Centro de Pesquisa Almaden). Essa
linguagem, originalmente chamada de Sequel foi implementada como parte do
projeto do Sistema R no início dos anos 70. Desde então, a linguagem Sequel foi
evoluindo e seu nome foi mudado para SQL (Structured Query Language –
31
Linguagem de Consulta Estruturada). Inúmeros produtos dão suporte atualmente
para a linguagem SQL. (Silberschatz; F. Korth; Sudarshan, 1999).
3. Implementação das Tecnologias e Desenvolvimento
3.1. Wireless
A tecnologia wireless foi abordada no projeto, seguindo informações
obtidas por (Tanembaum, 1997) enfatizando a importância e as facilidades
das tecnologias sem fio. Seguindo as informações obtidas por (Loureiro,
2003), wireless se diferencia pela facilidade de implantação ampla usabilidade
dentro da arquitetura a qual irá será implantada a facilidade de implantação
desse sistema monstra algumas vantagens desse sistema, podemos destacar
alguns pontos importantes da tecnologia wireless para a tecnologia Bluetooth:

Escabilidade- redes locais sem fio podem ser
configuradas segundo diversas topologias de acordo com as
necessidades. Configurações podem ser mudadas facilmente e
a distância entre as estações adaptadas desde poucos
usuários até centenas. A tecnologia sem fio aborda facilidades
de comunicação utilizando os padrões e protocolos de
comunicação, seguindo as normas do IEEE para dispositivos
de comunicação de redes.

Segurança- o sistema WEP suporta encriptação
Wired Equivalente Privacy (WEP) com chave de até 128 bits.
Todo o tráfego de rede passa por uma VPN (Virtual Private
Network) utilizando o protocolo IPSec (IP Secure) com chave
de 1024 bits, garantindo proteção à rede contra ataques
externos.
A tecnologia Bluetooth apresenta suas desvantagens se comparada
diretamente a tecnologia wireless destaca-se algumas:

Limitação a quantidade de usuários
32

Trafego de informações

Distancia entre o receptor e o emissor no trafego
das informações via radio.
O meio de transmissão usado traz benefícios para a implementação
do projeto a qual os dispositivos irão ter acesso trazendo a facilidade da
comunicação e rapidez ao seu receptor venha ter a utilização de um serviço
rápido, seguro e cômodo para quem venha utilizá-lo isso pensando nos
usuários a ferramenta para consulta as suas informações.
Para
o
ambiente
corporativo
destaca-se
pela
eficiência
de
implantação de um projeto que apresenta ser pequeno sendo usado apenas
para consulta ao diário de sala, mas futuramente poderá ser expandido
abrangendo uma infraestrutura maior com vários usuários usufruindo de
consultas instantâneas ao sistema que suporte uma grande quantidade de
dispositivos móveis consultando
esse sistema utilizando o serviço de rede
sem fio.
3.2. UML
3.2.1. Caso de Uso
Diário de Classe Eletrônico
33
Figura 4
3.2.2. Diagrama de Atividades
Acessar o Sistema Diário de Classe Eletrônico
Figura 5
34
Fazer a Chamada
Figura 6
35
3.2.3. Diagrama de Classe
3.2.4. Diagrama de Sequência
3.3. J2EE
Conforme pesquisa realizada, foram levantadas as diversas tecnologias
disponíveis para o desenvolvimento de aplicativos para dispositivos móveis e os
diversos dispositivos com suas respectivas configurações e tecnologias que
suportam. Conseguimos analisar essas informações e identificamos que com a
tecnologia J2EE a abrangência e diversidade são bem maiores se comparada a
JME. Com isso conseguimos levantar as dificuldades e facilidades de se
desenvolver com as duas plataformas e assim desenvolver um projeto que
implemente a tecnologia J2EE que conforme a comparação das pesquisas se
torna mais .
3.3.1. Arquitetura MVC
O aplicativo foi desenvolvido utilizando a arquitetura MVC de desenvolvimento
J2EE. Coforme a
36
VIEW
CONTROLLER
MODEL
SERVLET
BROWSER
JSP
NEGÓCIO
DAO
Action
JSP
Action
ControladorServlet.java
JSP
JSP
Action
BANCO
DE
DADOS
Action
Figura 7
37
38
3.4. Mysql
Figura 8
39
4. Conclusão
Com a implementação do DCE, foi possível perceber a importância de um
Aplicativo para controle de presença em sala de aula. De acordo com a proposta de
desenvolvimento, foram cobertos todos os requisitos do desenvolvimento do
aplicativo, que incluíam todo o gerenciamento gráfico e de ferramenta, bem como
restrições de desempenho, modularização e reusabilidade. A arquitetura do DCE é
muito simples facilitando o desenvolvimento, a performance do aplicativo é
extremamente satisfatória, não impactando na usabilidade da ferramenta.
4.1. Dificuldades Encontradas
Algumas dificuldades foram encontradas no desenvolvimento do aplicativo. Apesar
de existirem vários documentos sobre o desenvolvimento de aplicações em Java –
J2EE, comparações, padrões de projeto sendo sua API bastante extensa e não
possui uma documentação abrangente.
A complexidade do desenvolvimento de um aplicativo para a área escolar também
foi um desafio. A necessidade de prover uma solução geral e ao mesmo tempo
otimizada, associada as restrições dos diferentes navegadores dos diversos
dispositivos mobiles aumentaram com padrões distintos a dificuldade do
desenvolvimento deste aplicativo.
4.2. Trabalhos Futuros
Como continuação deste trabalho, pode-se extender este aplicativo para
implementar os módulos que ainda não são suportados:
- Implementar um controle de notas, para poder gerenciar notas de trabalhos e notas
de provas.
- Implementar na ferramenta, a formula para calculo da aprovação dos alunos.
- Implementar um gerenciador de relatório para extração de dados presenciais.
40
5. Referência bibliográfica
Abreu, M.E; DTM@JVM: Reuso Dinâmico de Traços em uma maquina Virtual Java. Data
2006, 93 f. Dissertação (Mestrado em Ciência, Engenharia e Sistemas de Informação),
Universidade Federal do Rio de Janeiro, Rio de Janeiro, 2006. Disponível em
<http://teses.ufrj.br/COPPE_M/EduardoMelioneAbreu.pdf> Acesso em 26-10-2008.
Barros, T. G. F; Santos, Dr. A. L. M; Ramalho, Dr. G. L; (2003) “Symbg(r)af – Symbian
Games Framework” Disponível em <http://www.cin.ufpe.br/~tg/2003-1/tgfb.pdf> Acessado
em 05-11-2008.
Bernal, P.S.M; Comunicações Móveis: Tecnologias e Aplicações. 1ª. Ed. São Paulo: Érica,
2002.
Booch, G; Rumbaug, J.; Ivar; J; (2003) UML Unified Modeling Language: Guia do Usuário.
Rio de Janeiro: Campus, 2003. Capítulos. (2, 8, 17,18), pag.(13, 217, 241).
Loureiro, A. A. F; Comunicação sem Fio e Computação Móvel. In: Mini curso – Congresso
da Sociedade Brasileira de Computação, Campinas, 2003. Disponível em
<http://www.dcc.ufmg.br/~loureiro/cm/docs/jai03.pdf > Acesso em10/06/2008.
M. JOHNSON, Thienne; Java para Dispositivos Móveis: Desenvolvendo Aplicações com
J2ME. 1ª Ed. São Paulo: Novatec, 2007 capítulo. (2), pags. (25, 26)
Melo, A. A; Nascimento, M. G. F. P; PHP Profissional: Aprenda a desenvolver sistemas
profissionais orientados a objetos com padrões de projeto. São Paulo. Novatec, 2007.
capítulo. (7), pag. (184).
Murakami, Alexandre; MobMed. In: Trabalho de Formatura Supervisionado
Monografia - Inovando a Prática Médica Através de Sistemas Móveis de
Informação,Universidade de São Paulo
São Paulo, 2003. Disponível em
<http://www.linux.ime.usp.br/~cef/mac49903/monografias/murakami/monografia.html#_Toc5
8295564>Acesso em 05-11-2008.
Tanembaum, A. S; Redes de Computadores, LIVRO: Redes de Computadores Rio de
Janeiro: Campus, 1997. Tradução da terceira edição pag. (923).
Sampaio, C; Aplicações corporativas, Guia do Java Enterprise Edition 5: Desenvolvendo
aplicações corporativas. 1ªEd. Rio de Janeiro: Brasport, 2007 capítulo. (5), pag. (23).
Silberschatz, A; Korth, H.F; Sudarshan, S; Sistema de Banco de Dados Livro: Sistema de
Banco de Dados. 3ªEd. São Paulo: Markron Books, 1999.
Bluetooth
http://www.students.ic.unicamp.br/~ra007293/bluetooth/bluetooth.html. Acessado em 06-072008.
http://www2.eletronica.org/artigos/eletronica-digital/bluetooth.
41
Acesso em 06-07-2008.
http://www.devmedia.com.br/articles/viewcomp.asp?comp=7808&hl=
Acesso em 07-07-2008.
Wireless
http://www.italbrasnet.com.br/tecnologia_de_produtos_wireless.html.
Acesso em 15-07-2008.
http://www.iweb.com.br/iweb/pdfs/20031008-wireless-01.pdf.
Acesso em 15-07-2008.
http://www.logicengenharia.com.br/mcamara/ALUNOS/Sem_fio.PDF
Acesso em 17-07-2008.
42
Download