Computação Móvel
Com o crescimento do uso de computadores portáteis e de redes sem fio, surgiu a necessidade de desenvolver aplicativos e soluções específicas que pudessem atender a demanda desta área. Esta tendência ficou conhecida como Computação Móvel.

A Computação Móvel apresenta muitas aplicações interessantes nas áreas de negócios, comércio eletrônico, telecomunicação, entretenimento, situações de emergência, medicina, entre outras. O usuário tem mobilidade, isto é, não precisa manter-se numa posição fixa, e as redes sem fio possibilitam a comunicação destes usuários com sistemas de software ou outros usuários.

A aplicação da computação móvel já faz parte de nosso dia-a-dia. O número de equipamentos no mundo conectados a redes sem fio já tinha chegado a 700 milhões em 2001 e hoje em dia deve ultrapassar 1 bilhão[eRV00]. Os gráficos abaixo mostram o cenário da computação móvel atualmente.



Isso se explica pelas vantagens que o serviço oferece: acesso da informação de qualquer lugar e a qualquer hora, interação em qualquer lugar e em movimento, menor custo de infra-estrutura, queda do custo de equipamentos móveis e aumento da capacidade dos mesmos.

A versatilidade de comunicação também é um dos motivos do crescimento desta área. Usuários podem comunicar-se com muito mais flexibilidade do que com celulares e pagers. [tcmc]
A combinação entre redes de comunicação e dispositivos móveis será capaz de gerar produtos e serviços como softwares colaborativos para suportar encontros virtuais assim como adaptar a luminosidade e temperatura ambiente de acordo com o gosto das pessoas presentes. [tcmc]

Mas para usufruir desses serviços e dos benefícios da computação móvel, os usuários não precisam utilizar necessariamente interfaces sem fio. É possível conectar-se a redes fixas existentes no local onde se está, utilizando a interface com fio.

Na área de telemedicina já existem várias aplicações desenvolvidas com base na computação móvel. Um exemplo de aplicação é a versão para PDA do Treatment Guidelines [tre]. Este software possibilita o acesso de especialistas clínicos a uma lista de doenças e às drogas recomendadas para seu tratamento.

A computação móvel apresenta uma série de novas possibilidades. Na área de saúde, a mobilidade e a flexibilidade têm efeito direto na qualidade do atendimento ao paciente. Médicos em pronto-socorros ou em atendimento de urgência (fora de hospitais e clínicas) podem ter acesso às informações do paciente e ao histórico de saúde (se é diabético, sofre de doenças do coração, sofreu transplantes, etc.). Assim, será possível realizar um atendimento mais eficiente evitando complicações futuras.

Mas não há só benefícios na computação móvel: há problemas também. Entre eles, a heterogeneidade das tecnologias sem fio, a segurança e a instabilidade das conexões de rede.

Segundo M. Satyanarayanan [fcmc] , atualmente a computação móvel é caracterizada por 4 obstáculos:
  • Elementos móveis são pobres em recursos comparados aos elementos estáticos.
    Isto porque o tamanho e o peso acabam penalizando recursos computacionais como velocidade de processamento e capacidade de disco;


  • Mobilidade é inerentemente mais perigosa.
    A possibilidade de que seu equipamento seja roubado ou danificado é maior do que sua estação de trabalho;


  • A conexão móvel é variável em performance e confiabilidade.
    Dependendo do lugar onde se está, uma frequência diferente de banda (bandwidth) é oferecida. Isso reflete a heterogeneidade e a instabilidade das conexões de rede;


  • Dispositivos móveis têm energia finita.
    As baterias precisam ser carregadas frequentemente.


Tudo isso dificulta o desenvolvimento e manutenção de aplicações robustas para dispositivos móveis.

Há diversas iniciativas para tornar o desenvolvimento de aplicações para equipamentos móveis mais simples e acessível a desenvolvedores. A pesquisa e o desenvolvimento de dispositivos com maior capacidade é uma delas.

Outra iniciativa importante é a tentativa de tornar os dispositivos mais homogêneos. Uma delas é o J2ME. O J2ME (Java 2 Platform Micro Edition) [Muc02], fornece um ambiente flexível para aplicações para dispositivos móveis tais como telefones celulares e PDAs. Assim como o J2SE (Java 2 Platform Standard Edition), o J2ME inclui a máquina virtual e um conjunto de APIs desenvolvidas pela JCP (Java Community Process).

A arquitetura do J2ME foi projetada de forma a atender a maioria dos dispositivos do mercado. Além de utilizar as configurações existentes, é possível adicionar classes para domínios e funcionalidades específicas em dispositivos específicos.