Вы находитесь на странице: 1из 10

Computao Ubqua: definio, princpios e tecnologias

Carlos Eduardo Cirilo


Departamento de Computao Universidade Federal de So Carlos Rodovia Washington Luis, km 235 CEP 13.565-905 So Carlos, SP, Brasil

carlos_cirilo@dc.ufscar.br RESUMO
A computao ubqua abrange um modelo de computao no qual usurios mveis, servios e recursos so capazes de descobrir outros usurios, servios e recursos. A idia bsica que a computao mova-se para fora das estaes de trabalho e computadores pessoais e torne-se pervasiva em nossa vida cotidiana. Uma srie de princpios e tecnologias que esto por trs desse paradigma computacional devem ser mantidos em mente para o desenvolvimento de aplicaes e dispositivos ubquos. utilizar os servios que um computador oferece independente de sua localizao fsica. Assim, tem-se um aumento da capacidade de mover fisicamente servios computacionais juntamente com o usurio em movimento, transformando a computao numa atividade que pode ser carregada para qualquer lugar. No entanto, existem certas limitaes nessa abordagem. A principal limitao da computao mvel que o dispositivo no possui a capacidade de obter de forma flexvel informaes sobre o contexto em que a computao ocorre e adapt-la adequadamente. Logo, os usurios tm de alterar manualmente as configuraes da aplicao medida que se movem, o que pode ser uma caracterstica no desejvel para boa parte os usurios [1]. J o conceito de computao pervasiva implica que o computador est embarcado ao ambiente de forma invisvel para o usurio, tendo a capacidade de obter informaes acerca do ambiente circundante e utiliz-la para controlar, configurar e ajustar a aplicao para melhor se adequar s caractersticas do ambiente. O ambiente tambm pode e deve ser capaz de detectar outros dispositivos que adentrem a ele. Dessa interao surge a capacidade de computadores agirem de forma inteligente no ambiente em que o usurio se locomove, sendo esse ambiente saturado por sensores e servios computacionais [1]. A computao pervasiva postula quatro paradigmas fundamentais [4]: Descentralizao: durante a era mainframe, computadores superpoderosos forneciam suas capacidade de processamento para terminais burros. Com o advento dos computadores pessoais (PCs), a arquitetura clienteservidor foi introduzida, deslocando o poder computacional do servidor para as estaes de trabalho clientes. A computao pervasiva deu um passo ainda maior, distribuindo responsabilidades entre uma variedade de dispositivos, cada qual com suas tarefas e funcionalidades especficas. Cada uma dessas entidades autnomas contribuem para um ambiente computacional heterogneo, cooperando-se entre si como uma comunidade mtua e estabelecendo redes dinmicas de relacionamento. Uma nova tarefa que emerge a partir dessa descentralizao a sincronizao das atualizaes de informao entre os variados dispositivos. As bases de dados presentes nos dispositivos com diferentes capacidades e recursos limitados devem se manter consistentes. Diversificao: na computao pervasiva existe um clara tendncia em adotar dispositivos que melhor se adquam aos requisitos de um determinado grupo de usurios para desempenhar uma tarefa especfica, ao invs de computador de propsito geral. Um dos maiores desafios que surgem da como gerenciar as mais dspares capacidades desses mais variados dispositivos. Cada um fornece uma plataforma com suas prprias caractersticas, o que faz com que se torne difcil prover aplicaes homogneas entre eles.

Palavras-chave

Computao ubqua, mobilidade, tecnologia embarcada, redes sem fio, tecnologias de desenvolvimento, IHC, descoberta de servios.

Nos dias atuais, com a convergncia das tecnologias de rdio, dos microprocessadores e dos dispositivos eletrnicos digitais de uso pessoal, tornou-se possvel fazer com que os dispositivos com certo poder de processamento computacional, tanto mveis quanto estacionrios, cooperem entre si para fornecer ao usurio acesso instantneo a novos servios de forma transparente. Essa caracterstica levou ao surgimento do conceito de ubiqidade na computao [1]. A computao ubqua abrange um modelo de computao no qual usurios mveis, servios e recursos so capazes de descobrir outros usurios, servios e recursos. Nesse paradigma computacional, as responsabilidades pela execuo de determinado servio necessrio para o usurio so distribudas entre uma variedade de dispositivos, cada qual com suas tarefas e funcionalidades especficas. Este artigo apresenta os principais conceitos que giram em torno da computao ubqua, apresentando sua definio, princpios e tecnologias envolvidos.

1. INTRODUO

Por ser uma rea de pesquisa emergente, algumas pessoas utilizam os termos computao pervasiva1 , computao ubqua, computao nomdica, computao mvel e tantos outros como sinnimos. Contudo, existem diferenas conceituais entre eles, conforme elucidado abaixo [2]. A computao mvel consiste em sistemas computacionais distribudos em diferentes dispositivos que comunicam-se entre si atravs de uma rede de comunicao sem fio, o que permite a mobilidade desses aparelhos [3]. O usurio, ento, capaz de
1

2. COMPUTAO UBQUA 2.1. Mobilidade e Tecnologia Embarcada

O termo pervasivo no existe no vocabulrio da lngua portuguesa. Entretanto, como tem sido amplamente adotado com termo emergente na literatura da rea em portugus, pervasivo ser usado neste texto como a traduo do ingls pervasive, cuja definio apresentada no decorrer deste trabalho.

Conectividade: mltiplos dispositivos esto de certa forma ligados uns aos outros. No h limites: eles trocam informaes entre si atravs de infravermelho, podem ser conectados com plugs, comunicam-se via rede sem fio, etc. Emails podem ser trocados entre dispositivos heterogneos. Documentos podem viajar atravs de redes e ser acessveis de qualquer lugar. Celulares GSM se beneficiam dos acordos de roaming2 internacionais, o que permite que se conectem em redes de comunicao diferentes de suas redes nativas. Um handheld pode se comunicar com um telefone celular atravs de infravermelho para sincronizar dados. Alternativamente, o mesmo handheld pode se conectar atravs da porta serial a uma Local Area Network (LAN). Num primeiro momento, isso pode parecer contrrio diversificao descrita anteriormente. Questes de especificidade de plataforma so os maiores obstculos para aplicaes e intercmbio de informaes: a capacidade de armazenamento entre os dispositivos so diferentes; processadores distintos impem diferentes restries de desempenho e uso de memria; sistemas operacionais so numerosos e freqentemente so executados em um dispositivo em particular; o tamanho e a forma dos dispositivos requerem diferentes plugs, e assim por diante. Uma abordagem para alcanar a conectividade e interoperabilidade a adoo de padres. Isso resulta em uma importante tarefa para a indstria de Tecnologia da Informao (TI): padres abertos devem ser estabelecidos e preparados para enfrentar as demandas dos mais diversos dispositivos. Padres de comunicao, linguagens de marcao e software independente de plataforma devem ser integrados para formar a base da interoperabilidade. Novos padres como WAP, UMTS, Bluetooth ou IrDA foram criados por amplas iniciativas da indstria, os quais definem os protocolos de comunicao necessrios, bem como as conexes fsicas subjacentes. Simplicidade: como mencionado anteriormente, os dispositivos pervasivos so ferramentas bastante especializada que no so elaborados para uso especfico. De um ponto de vista de usabilidade, eles devem desempenhar bem as tarefas para as quais foram designados. Isso delineia o quarto paradigma da computao ubqua: atingir a simplicidade no uso. As palavras-chave aqui so: disponibilidade, convenincia e facilidade de uso. Acesso informao e gerenciamento devem ser desempenhados sem gastar tempo significativo para aprender como usar a tecnologia. Qualquer computador de qualquer forma deve ser uma ferramenta simples e facilmente acessvel na vida diria, assim como um telefone hoje. A computao ubqua, por sua vez, integra mobilidade em larga escala com a funcionalidade da computao pervasiva, isto , qualquer dispositivo computacional, sob posse de um usurio em movimento, pode construir, dinamicamente, modelos computacionais do ambiente em que est inserido e configurar seus servios dependendo da necessidade (Figura 1). A idia bsica que a computao move-se para fora das estaes de trabalho e PCs e torna-se pervasiva no cotidiano dos indivduos. Marc Weiser, idealizador da computao ubqua,
2

visionou h um pouco mais de uma dcada que, no futuro, computadores estariam presentes nos mais comuns objetos do dia-a-dia: etiquetas de roupas, xcaras de caf, interruptores de luz, canetas, etc, de forma invisvel para o usurio. Neste mundo de Weiser, necessrio aprender a conviver com computadores, e no somente interagir com eles [5].

Computao Pervasiva

Computao Ubqua

Computao Mvel

Figura 1 - Relao entre computao pervasiva, ubqua e mvel [1]

A Tabela 1 apresenta as dimenses das computaes pervasiva, mvel e ubqua. O grau de embarcamento refere-se, de forma geral, o grau de inteligncia dos computadores, embutidos em um ambiente pervasivo, para detectar, explorar e construir dinamicamente modelos computacionais de seus ambientes:
Tabela 1- Dimenses da Computao Ubqua [2] Computao Pervasiva Baixa Alto Computao Mvel Alta Baixo Computao Ubqua Alta Alta

Mobilidade Grau de embarcamento

Termo originado no padro GSM que designa a habilidade de um usurio de uma rede em obter conectividade em reas fora da localidade geogrfica onde est registrado, ou seja, obtendo conectividade atravs de uma outra rede onde visitante. A rede que est sendo visitada pode ou no pertencer mesma operadora de telefonia celular.

Mas, quem seria responsvel pela adaptao do modelo computacional de acordo com o ambiente: a aplicao, o dispositivo, ou ambos? Existem duas abordagens opostas para projetar sistemas adaptativos: application-transparent (o dispositivo inteiramente responsvel pela adaptao) e laissezfaire (o dispositivo no prov nenhum suporte para adapatao) [6]. Obviamente, a segunda abordagem no desejvel. No entanto, a primeira abordagem tambm no o suficiente para prover adaptao adequada. Para tornar claro, considere o seguinte caso de duas aplicaes multimdia distintas: em uma o usurio est assistindo a uma conferncia usando um dispositivo mvel, e na outra o usurio est assistindo a um vdeo ao vivo recebido de um servidor remoto tambm em seu dispositivo mvel. Agora considere os seguintes cenrios: no primeiro, o usurio se move de uma rea com largura de banda suficiente para sua aplicao para outra rea onde a largura de banda disponvel insuficiente para a aplicao. No segundo cenrio, a bateria do dispositivo do usurio esgota-se rapidamente. Ambos cenrios lidam com mudanas na disponibilidade de recursos. Na abordagem application-tranparent, o dispositivo poderia se comportar da mesma maneira, seja qual for a aplicao que estiver sendo executada. Entretanto, diferentes reaes podem ser desejveis de acordo com o tipo de aplicao executada. Por exemplo, no primeiro cenrio, um dispositivo no adaptativo poderia no fazer nada e deixar a qualidade de udio e vdeo prejudicada. No segundo cenrio, o dispositivo apenas daria um alerta de bateria fraca para o usurio sem qualquer assistncia de como contornar a situao. Por outro lado, com um dispositivo adaptativo, vrios comportamentos podem ser esperados, cada qual sendo desempenhado da melhor forma de acordo com a situao. Por exemplo, no primeiro cenrio, o dispositivo poderia tentar se adaptar requisitando que o servidor diminua a qualidade de vdeo em decorrncia da menor largura de banda. No segundo cenrio, o dispositivo pode tentar conservar a bateria reduzindo o brilho da tela (alm de alertar o

usurio quanto ao baixo nvel de energia). Diante disso, em uma abordagem ainda mais adaptativa, possvel que o dispositivo interaja com a aplicao para que esta decida como se adaptar. Logo, numa abordagem application-aware, a aplicao colabora com o sistema de software subjacente, o qual lhe fornece informaes de status sobre os recursos disponveis. A aplicao utiliza essas informaes para tomar decises de como se adaptar s mudanas na disponibilidade dos recursos. Cada aplicao pode se adaptar de sua prpria maneira. A Figura 2 ilustra o espectro das estratgias de adaptao disponveis.
Application-aware (colaborao entre dispositivo e a aplicao)

Laissez-faire (nenhum suporte do dispositivo)

Application-transparent (dispositivo inteiramente responsvel)

Figura 2 Espectro das estratgias de adaptao [6]

2.2. Tecnologias de Rede Sem Fio

A conectividade um dos aspectos chave dentro da computao ubqua. Uma rede de comunicao sem fio necessria para permitir mobilidade aos dispositivos comunicantes em um ambiente de computao ubqua [3]. O conceito da comunicao de qualquer lugar e a qualquer momento o conceito das redes que oferecem servios de comunicao pessoal, como voz e dados. Os servios de Comunicao Pessoal (PCS) referem-se a sistemas celulares que operam em bandas de alta freqncia. Entretanto, os servios a serem oferecidos na computao ubqua vo alm dos servios de comunicao pessoal. Outras tecnologias sem fio de mdia e curta distncia surgiram para prover a interao entre dispositivos, de forma transparente para o usurio. Esta interao vai desde a conexo sem fio de um PC a seus perifricos, eliminando assim o cabeamento excessivo, at a conexo e comunicao entre dispositivos nos mais diversos ambientes (residncia, escritrio, cho de fbrica, sala de aula, lojas e shoppings, hotis, aeroportos, automvel, etc) para a realizao das mais diversas tarefas. Tecnologias de comunicao sem fio de curta e mdia distncia, tais como o Bluetooth, Wi-Fi e HomeRF, juntamente com as redes de longa distncia, compem uma estrutura bsica de suporte aos sistemas de computao ubqua [1]. Essas tecnologias so descritas sucintamente a seguir.

outras de forma que interferncias estejam dentro de limites tolerveis [9]. Com a evoluo da tecnologia de rdio, novas geraes de sistemas celulares tm surgido e oferecido servios multimdia mais sofisticados de comunicao pessoal. Hoje, por exemplo, os celulares de terceira gerao representam a convergncia das seguintes tecnologias: Internet (navegao web, e-mail, informaes, m-commerce), telefonia (voz, vdeo, fax etc) e mdia de difuso (TV, rdio, entretenimento e informao, servios de localizao) para o suporte a seis grande classes de servios: voz, mensagens, comutao de dados, multimdia, multimdia de alto padro e multimdia interativa de alto nvel [1]. Existem quatro grandes tipos de sistemas celulares [10]: PDC/JDC Personal Digital Cellular ou Japanese Digital Cellular. (Amplamente implantado no Japo); TDMA (D-AMPS/IS-54/IS-136) - Implantado nos EUA e Amrica do Sul; CDMA (IS-95) amplamente implantado nos EUA; GSM Global System for Mobile Communication. Padro desenvolvido na Europa e implantado amplamente no mundo todo. Uma comparao entre as geraes de sistemas celulares est resumida Tabela 2:
Tabela 2 Comparao entre as geraes de celulares [11]

2.2.1. Redes Sem Fio de Longa Distncia


WiMAX WiMAX (Worldwide Interoperability for Microwave Access) uma tecnologia de acesso de banda larga sem fio de longa distncia, baseado no padro IEEE 802.16, tipicamente oferecendo 10 Mbps em at 10 Km, embora velocidades de at 70 Mbps so alcanveis sobre 10 Km [7]. WiMAX suporta Qualidade de Servios (QoS) total, largura de banda sob demanda e orientado a conexo. Alm disso, suporta controle centralizado e oferece suporte multimdia [8]. Sistemas Celulares A tecnologia de rdio celular digital a mais interessante tecnologia para conectividade de longa distncia para dispositivos ubquos [4]. Um nico sistema celular interconecta vrias pequenas reas de cobertura de rdio, denominadas clulas. A idia bsica do sistema celular o reuso da freqncia, que permite que um mesmo conjunto de canais possa ser reutilizado em reas geogrficas diferentes, distantes o suficiente umas das

O objetivo maior das redes de longa distncia vistas acima o provimento de servios de comunicao pessoal que permitam ao usurio acessar, de forma nica, servios sofisticados de qualquer lugar do mundo e a qualquer momento. Estes servios atendem parte dos requisitos de comunicao da computao ubqua. Um outro requisito a proviso da comunicao dentro de ambientes fechados, como uma sala, de tal forma que dispositivos de um lado da sala possam se comunicar com dispositivos do outro lado [1]. DECT O DECT (Digital Enhanced Cordless Telecommunications) foi projetado pela ETSI para ser usado como um padro de conexo sem fio para telefones e outros equipamentos de escritrio. Nos Estados Unidos, o DECT algumas vezes conhecido como Personal Wireless Telecommunications (PWT) [4]. O padro DECT bem completo, abrangendo a interface com o usurio com funes como transferncia de chamada e teleconferncia, assim como a interface de ar. Ele permite interoperabilidade entre handsets DECT e estaes base [4]. Um sistema DECT composto por uma estao base e pelo menos um handset. O padro DECT define capacidade suficiente para a interface de ar para permitir conversas simultneas entre handsets internos e entre partes internas e

2.2.2. Redes Sem Fio de Curta e Mdia Distncia

externas. O conceito DECT tambm suporta outros dispositivos de escritrio, tais como aparelhos de fax e telefones sem fio [4]. Bluetooth O Bluetooth uma tecnologia para conexo sem fio de curta distncia entre dispositivos. A conexo sem fio para comunicaes locais surgiu de uma necessidade de eliminar os fios que ligam dispositivos a acessrios. A Ericsson foi uma das primeiras empresas a reconhecer essa necessidade e, a partir da, a identificar outras aplicaes com enorme potencial, tais como: um telefone mvel se comunicando com uma impressora, ou um PDA se comunicando com o PC para realizar alguma tarefa, sem qualquer configurao ou interveno manual do usurio [1]. Em 1994 a Ericsson envidou esforos com o objetivo de criar uma tecnologia de comunicao sem fio de baixo custo para telefones mveis e seus dispositivos perifricos. No ano de 1998, IBM, Toshiba, Nokia e Intel juntaram-se Ericsson para desenvolver a especificao de um padro global aberto para a conectividade sem fio entre os dispositivos de telecomunicaes e os de computao. Esta especificao foi denominada Bluetooth [1][4]. Os mais importantes pontos de projeto do Bluetooth so o baixo consumo de energia, baixo custo e a habilidade de suportar redes ad hoc de alta velocidade. Com uma taxa de dados bsica de 1 Mbps, o Bluetooth adequado para interconexo de computadores pessoais com impressoras, scanners, teclados e outros dispositivos. O canal de comunicao tambm adequado para conexes de voz em tempo real entre um headset e um telefone mvel [4]. IrDA A Associao de Dados Infravermelho IrDA (Infrared Data Association) estabeleceu vrios padres de comunicao atravs de luz infravermelha, onde o IrDA-Data e o IrMC so os mais importantes. A tecnologia infravermelha suporta apenas conexo ponto-a-ponto. Tem alcance de curta distncia, de at um metro, com ngulo estreito entre o transmissor e o receptor o cone de viso de 30. Qualquer sinal fora deste angulo no ser recebido os patrocinadores do IrDA sustentam que o IrDA dever suportar um angulo de viso de 60, o que possibilitaria suporte a um numero maior de servios, tais como: a conexo de mouse, joystick, etc., no PC. O incio da troca de dados requer que os dispositivos estejam em linha direta de viso, uma vez que os raios infravermelho no atravessam objetos slidos. Essas duas ltimas caractersticas da tecnologia infravermelha mencionadas representam as suas maiores desvantagens [1]. O IrDA uma tecnologia similar o Bluetooth no que diz respeito a comunicao de curta distncia. No entanto, existem diferenas significativas devido s caractersticas da tecnologia de transporte. Os emissores de luz infravermelha no IrDA so equipamentos direcionais, o que significa que dois dispositivos que desejam se comunicar devem estar apontados um para o outro para que a comunicao seja realizada com xito. J os transmissores de rdio no Bluetooth so dispositivos onidirecionais (que se propaga em todas as direes), o que significa que um nmero de pessoas em dado ambiente que possuem dispositivos Bluetooth podem interagir com os dispositivos umas das outras independente se o dispositivo estiver visvel em suas mos ou guardado no bolso de algum [4]. Alm da caracterstica direcional, o IrDA oferece altas taxas de dados de 4 Mbps, alm de ser um tecnologia barata (menos de $5). Tipicamente, os dispositivos que utilizam a conexo IrDA so os perifricos de computadores (modems,

impressoras, scanners, etc.), alm de PDAs, equipamentos industriais, etc [1][4].

relgios,

HomeRF A tecnologia HomeRF foi projetada tendo em mente redes pequenas de baixo trfego, em residncias e pequenos ambientes comerciais. Visa comunicao entre o PC e seus perifricos, bem como entre dispositivos inteligentes de uma residncia. Ela no projetada para a comunicao entre dispositivos portteis (outras tecnologias, como o Bluetooth, so melhores para isso), tampouco para a formao de redes ad hoc (imediatas) do tipo de rede configure-a e deixe-a [12]. Algumas verses da HomeRF suportam velocidades de at 10Mbps. As conexes so do tipo ponto-a-ponto com alcance de 25 a 60 metros. Permite diversas redes no mesmo ambiente fsico, com suporte de at 127 dispositivos por rede. Como tem alto consumo de energia, no adequada para utilizao em dispositivos portteis. No se integra facilmente a outras redes sem fio existentes. Entretanto, seu custo relativamente baixo (menos de $200 dlares por dispositivo), fcil de instalar, alm de no exigir ponto de acesso [1]. A HomeRF pode coexistir com o Bluetooth da seguinte maneira: Bluetooth para substituir o cabeamento domstico, por exemplo, entre o PC e seus perifricos e a HomeRF como rede local de interconexo, por exemplo, entre mais de um PC [1]. WiFi O Instituto dos Engenheiros Eltricos e Eletrnicos - IEEE desenvolveu uma especificao de rede local sem fio, denominada 802.11, ou ainda Wi-Fi. As redes 802.11 so rpidas, confiveis e tm alcance de at 100 metros, que pode ser ainda maior em reas abertas. Do lado negativo, exigem hardware de ponto de acesso para a interconexo entre os dispositivos da rede, que tem um custo relativamente alto (equipamentos mais sofisticados podem custar acima de $1200). Esses pontos de acesso podem ter suporte para conexes Ethernet comum, tornando a 802.11 facilmente integrvel com outras redes Ethernet com fio em uma corporao). Alm disso, no suporta servios de telefonia, sendo um padro de uso estrito para a comunicao de dados servios de voz podem ser suportados pela 802.11 quando a voz transmitida como dado, como o caso na tecnologia de voz sobre IP [1]. ZigBee ZigBee utiliza pequenos sinais de rdio digital de baixo consumo de energia baseado no padro IEEE 802.15.4 para WPAN (Wireless Personal Area Networks) como uma tcnica de sinalizao na qual um n continuamente transmite pequenos pacotes para anunciar sua presena a outras unidades mveis [8]. Os protocolos do ZigBee foram projetados para uso em aplicaes embarcadas que requerem baixas taxas de dados e baixo consumo de energia e pouca latncia. O foco real do ZibBee definir uma rede mesh de propsito geral, barata, autoorganizada que possa ser usada para controle industrial, sensoriamento embarcado, coleta de dados mdicos, alerta de fumaa e intrusos, automao de construes e automao domstica. A rede resultante ir utilizar muito pouca energia, assim dispositivos individuais devero permanecer ligados por um ano ou dois utilizando a bateria original [8]. UWB UWB (Ultra-Wideband) uma tecnologia para transmitir informao a taxas de dados que excedam 100 Mbps, distribuda sobre uma ampla largura de banda sobre curtas distncias. Essa tecnologia projetada para fornecer um uso

eficiente da escassa largura de banda de rdio enquanto permite conectividade sem fio com alta taxa de dados [8]. uma tecnologia de rede sem fio para redes de rea pessoal, conhecidas por PAN (Personal Area Network), ou seja, usando aparelhos sem fio prximo ao usurio, como por exemplo, impressoras, mouse, teclado ou MP3 Player com no mximo 10 metros de distncia [13].

Os dispositivos ubquos combinam os quatro paradigmas da computao pervasiva apresentados anteriormente: eles so fortemente descentralizados, diversificados, conectados e simples de usar [4]. Muitos dispositivos so produzidos em massa com o intuito de abranger um grande escopo de usurios. Eles fornecem solues amplamente aplicveis no domnio de uso pessoal e profissional, como email, acesso Internet, jogos, etc. Outros dispositivos esto focados em um segmento muito especfico de utilizao, como dispositivos de controle industrial aplicados em processos manufatureiros, dentre outros. Sua forma altamente customizada e executam aplicaes especficas [4]. A existncia de mltiplos dispositivos, seja para o acesso a informao, ao entretenimento, embutidos em utenslios domsticos, embarcados em ambientes inteligentes, etc, constitui-se um dos desafios da computao ubqua. Essa incrvel variedade de dispositivos pode ser estruturada em categorias, conforme segue [1][4]: Dispositivos de acesso Informao: os dispositivos de acesso informao provm comunicao entre usurios, anotao, acesso informao, etc, com o objetivo de estender as capacidades humanas, especialmente no trabalho. Dominantes nessa categoria esto os organizadores de bolso portteis chamados de Assistentes Digitais Pessoais PDAs. Eles so utilizados para carregar informaes relevantes e so aptos a se conectarem em redes inteligentes. Suas aplicaes compreendem o Gerenciamento de Informaes Pessoais (PIM), o que inclui calendrio, agenda de endereos e funcionalidades de email. Alm disso, outros dispositivos que compreender a categoria de acesso informao podem ser citados, tais como: PCs de bolso, telefones celulares, telefones de tela (convergncia do telefone com terminal de acesso Internet), smartphones, etc. Utenslios inteligentes: essa categoria abrange um amplo escopo de utenslios familiares, os quais so melhorados por embutirem mais inteligncia e conectividade usando tecnologias ubquas. No ambiente ubquo, os utenslios inteligentes interagem entre si para aumentar o conforto dos usurios, seja em casa, no carro, no escritrio, no banco, no hospital, nas ruas, nos shoppings centers, etc. Exemplos de aplicao de utenslios inteligentes incluem: otimizao do consumo de energia (aquecimento seletivo por cmodo da casa; aquecimento diferenciado por ocupao da casa; aquecimento de gua em funo do perfil dos moradores); manuteno de utenslios (diagnstico e atualizao remota de micro-cdigo em utenslios da linha branca), comunicao entre etiquetas de roupa e a mquina de lavar. Esses dispositivos podem ser acessados e operados remotamente via Web, por exemplo. Controles inteligentes: os controles inteligentes caracterizam-se por serem muito pequenos podendo ser integrados a lmpadas, interruptores, termostatos, sensores, atuadores, etc, em aplicaes que variam desde controle de segurana residencial (sensores em portas e janelas para detectar a entrada de intrusos, atuadores para

2.3. Dispositivos

acender/apagar lmpadas especficas em horrios especficos etc), a controle de comodidades para o usurio (sensores de temperatura, atuadores para ligar/desligar/programar sistemas de aquecimento/resfriamento de ambiente residencial etc.). Os controles so conectados a redes domsticas e gerenciados local ou remotamente, atravs da Web ou applets Java, em aplicaes locais. Sistemas de entretenimento: Os sistemas de entretenimento envolvem dispositivos cujo uso voltado principalmente ao lazer. Exemplos incluem: TV (via cabo, satlite, microondas), Set-top-boxes (caixa sobre a TV que promove a interface entre os provedores do servio de difuso e a TV do consumidor), Console de jogos (exemplos: Dreamcast da Sega, Playstation2 da Sony, Dolphin da Nintendo e X-box da Microsoft), cmeras digitais, brinquedos inteligentes, reprodutores de msica MP3, etc. Claro que muitos dispositivos podem oferecer uma combinao de aplicaes e, dessa maneira, se encaixarem em mais que uma dessas quatro categorias [4].

Como mencionado anteriormente, as aplicaes ubquas devem lidar com uma srie de diferentes caractersticas de hardware dos dispositivos e mudanas de ambientes [4]. Devido a restries fsicas de memria, capacidade de processamento e bateria dos dispositivos, alm da diversidade de tipos, alta latncia das redes de comunicao sem fio, dentre outros, as aplicaes para dispositivos ubquos devem ser projetadas sem perder de vista tais limitaes. Os Sistemas Operacionais, por sua vez, devem ser projetados tendo em vista as caractersticas do dispositivo e o objetivo do uso. A computao ubqua traz novos requisitos para as infra-estruturas de servio, ou middlewares, tais como: descoberta de servios, adaptao de contedo, alm de frameworks que atendam s necessidades especficas [1]. Muitos sistemas operacionais foram desenvolvidos para satisfazer s necessidades especficas da computao ubqua: Google Android, Windows CE, Windows for Smart Cards, Palm OS, EPOC, QNX, GEOS, e muitos outros. Todos eles rodam em dispositivos com pouca memria e a maioria so projetados para executarem em muitas diferentes plataformas de processadores [4]. No topo desses sistemas operacionais, os componentes middlewares fornecem uma abstrao das dependncias especficas do sistema operacional, conforme ilustrado na Figura 3 seguir.

2.4. Tecnologias de Desenvolvimento

Figura 3 Camadas de software em um dispositivo [4]

Interfaces comuns entre as aplicaes e componentes de software dedicados alavancam a portabilidade. Alm de bibliotecas e componentes proprietrios, as iniciativas da

indstria esto desenvolvendo um crescente nmero de frameworks padronizados e Aplication Programming Interfaces (APIs) direcionados a sistemas ubquos [4]. Ao desenvolver aplicaes para dispositivos ubquos, os programadores devem ter em mente as seguintes restries: tamanho limitado da tela, capacidade limitada de entrada de dados, poder limitado de processamento, memria, armazenamento persistente e vida da bateria; e alta latncia, largura de banda limitada e conectividade intermitente (o que os dispositivos esperam encontrar em termos de conectividade).

2.4.1. Java para Ambientes Ubquos

A independncia de plataforma que a Java oferece, a grande quantidade de bibliotecas disponveis (de suporte a construo de interfaces grficas a suporte de rede), e a existncia de maquinas virtuais embutidas em vrios dispositivos tornou a linguagem Java uma tecnologia chave para o desenvolvimento de software na computao ubqua [4]. A Figura 4 mostra como funciona a execuo de programas Java em diferentes dispositivos. O cdigo em Java compilado num cdigo neutro e padronizado denominado bytecode. O sistema operacional de cada dispositivo alvo utiliza um ambiente de execuo Java (Java runtime environment JRE) para interpretar e executar o bytecode gerado na compilao, em tempo de execuo. Um interpretador de bytecode, tambm chamado de mquina virtual VM, traduz as instrues genricas em comandos nativos, especficos da mquina que est executando a aplicao. Desta forma, qualquer dispositivo que contenha uma mquina virtual Java pode executar um programa em Java sem que este tenha que ser recompilado.

Figura 4 A execuo do cdigo Java em diferentes dispositivos [1]

Como os requisitos das diferentes classes de computadores so diferentes, uma linguagem Java de propsito geral que acomodasse todos esses requisitos diferentes estava tornando-se insustentvel. Ento, a Sun Microsystems, quem inicialmente criou a tecnologia Java, decidiu dividir a linguagem em diferentes especificaes. Cada uma das verses de Java possui um Kit de Desenvolvimento de Software SDK (Software Development Kit) que implementa a verso correspondente. JME Micro Edition Tem como objetivo atender os requisitos de dispositivos ubquos com as seguintes limitaes: pouca memria, energia limitada, conexo intermitente rede; capacidades grficas restritas, dentre outras. O JME introduz o conceito de Perfis, que so subconjuntos da linguagem Java para diferentes grupos de dispositivos, com o intuito de minimizar a quantidade de memria requerida pelas bibliotecas de classes Java. composto de funcionalidade bsica mnima obrigatria. Classes adicionais, necessrias para suportar caractersticas tpicas de um grupo especifico de dispositivos, so includas em um perfil correspondente. Caso uma aplicao precise de funcionalidade adicional, no especificada no perfil do dispositivo, as

bibliotecas correspondentes podem ser trazidas da rede de forma dinmica. Inclui MVs, bibliotecas de APIs, ferramentas para colocar aplicao no dispositivo, e configur-lo [1][4]. A edio JME um conjunto de produtos, tecnologias, ferramentas e padres necessrios para criar aplicaes para dispositivos ubquos. Inclui suporte para desenvolvimento de aplicaes no dispositivo e fora do dispositivo. O JME disponvel em duas verses [1][4]: CLDC - Configurao de dispositivo limitado, conectado (Connected, Limited Device Configuration) para telefones celulares, PDAs e set-top boxes de mdia capacidade. Contm a mquina virtual KVM, um interpretador de linguagem Java para microprocessadores de 16-bit ou 32-bit RISC/CISC em dispositivos com 128 a 512KB RAM, e conexo de rede intermitente. Oferece suporte total a linguagem Java (exceto ponto flutuante, finalizao e tratamento de erro). Contm verso minimizada dos pacotes java.lang, java.io, and java.til do J2SE. Implementa API javax.microedition.io, para conexes de rede (fones mveis e aparelhos de TV). CDC - Configurao de Dispositivo Conectado (Connected Device Configuration) permite desenvolver aplicaes para telefones de tela, set-top boxes, PDAs de alta capacidade, pontos-de-venda, navegao automotiva e utenslios domsticos. Contm uma mquina virtual completa - CVM para microprocessadores de 32-bit RISC/CISC/DSP em dispositivos com memria ROM maior que 512KB e memria RAM maior que 256KB, e conexo de rede sempre ativa. uma verso enxuta do Java Standar Edition (JSE) mais classes do CLDC. Possui bibliotecas de UI restritas (telefones de tela, Set-topboxes). O Perfil uma forma adicional de especificar o subconjunto de APIs Java, bibliotecas de classe e recursos de mquina virtual para uma famlia especfica de dispositivos. Os perfis objetivam atender necessidades de segmentos especficos da indstria. O MIDP Perfil do Dispositivo de Informao mvel (Mobile Information Device Profile) a especificao para um perfil JME. O MIDP foi projetado para operar acima do CLDC com o intuito de capacitar as aplicaes Java para executarem em dispositivos mveis de informao (MIDs). Contm APIs para o ciclo de vida da aplicao, IU, rede e memria persistente. Prov um ambiente de tempo de execuo padro que permite a colocao dinmica de novos servios e aplicaes nos dispositivos do usurio. O MIDP um perfil padro comum para dispositivos moveis, independente de fabricante. uma estrutura completa e de suporte para o desenvolvimento de aplicaes mveis. Trs outras tecnologias so definidas para potencializar o uso do Java: Java Card, Java Embarcado e Java para TempoReal [1]: Java Card Menor e mais limitada verso da famlia Java. No suporta strings, interface grfica, e possui formato de bytecode comprimido. O Frum Java Card (http://www.javacardforum.org/) especifica o subconjunto da linguagem para smart cards. As MVs so construdas por desenvolvedores de sistemas operacionais e ficam residentes na ROM do carto. Java Embarcado Objetiva os controladores industriais, switches, e outros dispositivos com restries severas de memria, em dispositivos com visor orientado a caractere ou sem visor. No existe um core mnimo obrigatrio classes desnecessrias podem ser omitidas, o que, naturalmente, limita a interoperabilidade.

RTJS - Java para Tempo-Real O Java RTJS oferece suporte na criao de aplicaes para dispositivos automotivos, industriais etc, que exigem um comportamento de execuo previsvel. Resolve problemas de coleta de lixo, realiza escalonamento personalizado de processos e threads por compartilhamento de tempo, oferece gerenciamento avanado de memria, alm de prover acesso direto memria de sensores e atuadores, suporta a sincronizao de threads e objetos, trata eventos assncronos e etc. bom manter em mente que Java no a nica opo para desenvolver aplicaes para dispositivos ubquos. Linguagens como C e C++ tambm podem ser consideradas [1]. A escolha da linguagem adequada vai depender das caractersticas do projeto.

Weiser e Seely Brown [14] usaram o termo tecnologia calma para descrever um importante aspecto de sua viso de computao ubqua: o fato de que a computao no deve continuar a monopolizar a ateno do usurio. Em muitos casos, a atividade de computao deve silenciosamente ser executada em segundo plano (sem que o usurio perceba) e tornar seu resultado acessvel percepo perifrica do usurio de forma ubqua. Dessa maneira, os computadores tendem a se tornar mais e mais invisveis em nossas vidas. Assim como o minsculo motor presente dentro de um CD player, o qual ningum est interessado em saber com funciona, um sistema computacional construdo dentro de um MP3 player que faz download de msicas da Internet se tornar a coisa mais natural do mundo. No importar se foi feito em Java ou qual o modo que a pilha TCP/IP foi implementada. No a tecnologia viabilizadora que interessa, mas sim as aplicaes e os servios oferecidos tero a maior influncia visvel em nossa cultura high-tech [4]. Logo, precisos que as aplicaes sejam simples e fceis de utilizar a partir da perspectiva e do contexto do usurio. Esse um dos quatro paradigmas pregados dentro da computao pervasiva/ubqua: a simplicidade. A flexibilidade de um computador pessoal de propsito geral certamente uma faanha tcnica. Porm, isso tem seu preo: esses computadores esto se tornando incrivelmente complicados. Por exemplo, muito das funcionalidades dos processadores de texto atuais confundem a maioria dos usurios e reduz a facilidade de uso. Apesar da capacidade de plug-and-play, instalar um novo software geralmente um desafio para usurios no especialistas [4]. Como j mencionado anteriormente, dispositivos ubquos so ferramentas extremamente especializadas que so utilizadas para um propsito especfico e no geral. De um ponto de vista de usabilidade, eles desempenham bem as tarefas para os quais foram projetados. Nesses dispositivos, disponibilidade, convenincia e facilidade de uso so pr-requisitos fundamentais. O acesso e o gerenciamento da informao devem ser realizados sem se gastar tempo significativo em aprender como usar a tecnologia. A aceitao do usurio da interface fornecida pelo dispositivo ter grande impacto na aceitao dos produtos e servios oferecidos dentro da prxima gerao da TI. Um computador, independente da forma em que foi fabricado, deve ser uma ferramenta facilmente acessvel na vida diria, assim como um telefone hoje. Enquanto seleo e educao apropriados dos grupos de usurios era requerida para gerenciar a complexidade dos sistemas computacionais tradicionais, computadores ubquos so intuitivos de usar e no deveriam sequer requerer a leitura de um manual. Processos que hoje requerem procedimentos de instalao e levam vrios

2.5. Interao Humano-Computador (IHC)

comandos em um PC iro apenas necessitar de um simples aperto de uma tecla ou mesmo aceitar requisies de voz ou possuir reconhecimento de escrita [4]. Em seu influente e fascinante livro O design do dia a dia [16], Donald Norman, psiclogo cognitivo e pioneiro em usabilidade, descreveu o conceito de affordance, que se refere s propriedades percebidas e reais de um objeto, principalmente as propriedades fundamentais que determinam de que maneira o objeto poderia ser usado. As affordances fornecem fortes indicaes para a operao dos objetos. Cadeiras so para sentar. Maanetas so para girar. Interruptores so para pressionar. Bolas so para atirar ou quicar, etc. Quando se tira proveito das affordances, o usurio sabe o que fazer apenas ao olhar: no so necessrias imagens ilustrativas, rtulos ou instrues. Objetos complexos podem exigir explicaes, mas objetos simples no devem precisar deles. Quando objetos simples precisam de imagens, rtulos ou instrues, o design fracassou. Segundo Norman, o usurio precisa de ajuda, sendo que apenas as coisas certas tm de ser visveis a ele para indicar que peas devem ser operados e de que maneira, de forma a indicar como o usurio deve interagir com o aparelho. A visibilidade indica o mapeamento entre as aes pretendidas e as operaes concretas. A visibilidade indica distines cruciais, de modo que se possa, por exemplo, diferenciar um recipiente de sal e um de pimenta. A visibilidade dos efeitos das aes tambm importante. ela que indica se as luzes foram devidamente acendidas, se a tela de projeo foi baixada at a altura correta, se a temperatura da geladeira est ajustada corretamente, e assim por diante. a falta de visibilidade que torna tantos aparelhos controlados por computador to difceis de operar. E um excesso de visibilidade que torna o equipamento de som ou o aparelho de DVD entupido de dispositivos e sobrecarregado de aplicativos to intimidantes para o usurio. Todas essas caractersticas descritas por Norman so podem ser aplicadas para atender simplicidade esperada dos dispositivos ubquos. No entanto, simples no deve ser confundido com primitivo. A computao ubqua prov uma viso holstica: hardware e software devem estar integrados sem emendas e direcionados para necessidades bem especficas do usurio final. A complexidade da tecnologia deve estar escondida por trs de uma interface com o usurio amigvel. Alcanar a facilidade de uso intencionada requer esforos substanciais no projeto e desenvolvimento das aplicaes. Para obter acesso rpido a funes e aplicativos, hierarquias complicadas de menus e caixas de dilogo no so aceitveis. Reconhecimento de fala, uso intuitivo, operaes que requerem o uso de apenas uma das mos, inicializao rpida ou telas sensveis ao toque so apenas algumas das caractersticas de interfaces com o usurios maduras. Fornecer todas elas em um pequeno e barato dispositivo definitivamente uma tarefa desafiadora pra os desenvolvedores [4].

No contexto de computao ubqua, quando um cliente mvel se move de um ambiente para outro, ele deseja conhecer quais so os servios que esto disponveis no novo contexto em que se inseriu [3]. Existe, ento, uma grande necessidade por um mecanismo que permita que os dispositivos em um determinado ambiente interajam dinamicamente uns com os outros e oferea servios para outros dispositivos, bem como torne vivel que outros dispositivos busquem por um tipo de servio especfico que possa ser requisitado em determinado momento. Esta caracterstica chamada de descoberta de servios [4]. Diversas arquiteturas de software surgiram para tentar solucionar este problema. Essas arquiteturas so essencialmente

2.6. Descoberta de Servios

frameworks de coordenao que sugerem certos modos e meios de interao entre dispositivos. Trs das mais importantes arquiteturas so: Jini, Universal Plug and Play (UPnP) e Satutation todas iniciativas de indstrias. A descoberta de servios, em termos gerais, significa que um subconjunto das capacidade seguintes so suportadas por um dispositivo [1][4]: Habilidade de anunciar sua presena rede; Descoberta automtica de dispositivos na vizinhana e tambm daqueles localizados remotamente; Habilidade de descrever seus servios e reconhecer os servios (capacidades) dos outros dispositivos; Capacidade de se auto-configurar sem a interveno de um administrador; Interao com outros dispositivos na rede parar desempenhar uma funo. Um framework de coordenao pode fazer com que dispositivos tornem-se cientes uns dos outros. Para que isto ocorra, algum padro deve ser seguido pelos dispositivos. Um dos desafios na descoberta de servios manter o equilbrio entre as necessidades de padronizao e a autonomia de dispositivos [17]. O fornecimento de servios de aplicaes para dispositivos inteligentes implica no gerenciamento de servios distribudos ao longo de um ciclo de vida completo, conforme ilustrado na Figura 5 abaixo, e no apenas etapas especficas, como a descoberta de servios. O projeto de fornecimento de servios deve lidar com acessos a servios intermitentes e trocas entre diferentes instncias de servios, por exemplo, a sada de uma rede sem fio para entrar em outra rede sem fio. Existem dois aspectos distintos para isso: primeiro, definir um modelo de ciclo de vida genrico para o fornecimento do servios; e, segundo, gerenciar esse ciclo de vida [8].
Anncio, Descoberta, Seleo, Configurao, Composio Invocao, Composio Trmino, Remoo de Registros

Criao

Execuo

Dissoluo

Se os fornecedores e solicitantes dos servios so estticos, ento existe pouca necessidade para descoberta dinmica de servios. A descoberta dinmica de servios4 necessria para permitir que solicitantes dos servios mudem de fornecedores quando tanto um como outro so mveis, quando o acesso rede intermitente e quando os fornecedores ou requisitantes falham. A descoberta dinmica de servios envolve a dissociao do fornecimento de servios a partir de uma requisio e suporte a anncios e descoberta dinmicos de fornecedores e solicitantes de servios [8]. Existem duas abordagens para anncios e descoberta dinmicos de servios: push e pull. Push utiliza broadcast ou multicast para anunciar as requisies de servios disponveis ou capacidades de servios para uma certa quantidade de partes desconhecidas. Requisies de servios e descries de servios so subtipos de mensagens enviadas para receptores de mensagens desconhecidos pelo remetente. O solicitante ou o fornecedor fazem o matching5. Pull utiliza pesquisas para localizar ou procurar listas de requisies ou capacidades previamente anunciadas para um diretrio mantido por alguma terceira parte conhecida, por exemplo, Jini, UPnP, UDDI, etc. A terceira parte faz o matching. A vantagem dos diretrios sobre broadcasts que eles minimizam o trfego de rede relacionado ao servio de descoberta. A desvantagem dos diretrios que eles requerem a administrao de uma terceira parte, o diretrio deve estar sempre disponvel e ter uma localizao bem conhecida para solicitantes e fornecedores de servios o localizarem [8]. Existem vrias dimenses de projeto para especificar a seleo de servios: baseado em requisio versus baseado em capacidades versus baseado em objetivos; exata versus inexata e sinttica versus semntica. mais comum fazer o matching das requisies de um nico usurio comparando-se as descries de servios de mltiplos fornecedores em diretrios. O oposto disso usar um blackboard, um servio em uma terceira parte, no qual requisies de servios ao invs de descries de servios fornecidos so anunciados e fornecedores de servios procuram por solicitantes de servios com os quais eles esto dispostos a fornecer o servio (ver Figura 6).
Diretrio

Manuteno
Cliente
Reinvocao, Atualizao das Descries, Reconfigurao, Atualizao da Composio

2. Pesquisa por Servios

1. Registro dos Servios

Servio

3. Descoberta

Na fase de criao, os processos de servio registram-se em diretrios de servios. Solicitantes dos servios buscam por servios. Os servios so selecionados, configurados e servios mltiplos necessitam ser compostos. Na fase de execuo, os servios so invocados e mltiplos servios interligados necessitam de coordenao. Na fase de manuteno, os processos de servio, configuraes de acesso e composies de servios devem ser atualizados. Na fase de dissoluo, os servios so desativados ou encerrados temporariamente pelos prprios processos ou por solicitantes. Os servios tambm podem ser terminados permanentemente e removidos [8].

Figura 5 Ciclo de vida do servio [8]

1. Registro da Requisio

Blackboard

2. Pesquisa Por Requisies 3

Cliente

Servio

Figura 6 Descoberta de Servios guiada por fornecedores publicando descries de servios. Adaptado de [8]

Seleo de servios baseada em requisio geralmente implica que os servios que satisfaam requisio devem existir no ambiente circundante, ao invs de estarem internamente no dispositivo. Isso levanta a questo de como o solicitante de um servio sabe se o servio pode ou no pode
O escopo do termo descoberta de servios varia dependendo da especificidade do projeto. Pode envolver a solicitao de uma lista de fornecedores de servios disponveis que se encaixam com a requisio. Pode ou no pode incluir seleo de servio, configurao de servio, resoluo de nome de servio e at mesmo invocao de servio. 5 Matching neste texto refere-se ao de comparar se determinado servio atende aos requisitos estabelecidos pela requisio.
4

2.6.1. Anncio, Descoberta3, Configurao de Servios


3

Seleo

A descoberta de servios tambm pode ser subclassificada em pesquisa em pgina branca (nome, endereo, etc), pesquisa em pgina amarela (busca por tipos e atributos) e pesquisa em pgina verde (informaes sobre como invocar o servio).

desempenh-lo (devido ao fato de o servio ter ou no ter os recursos necessrios, habilidade, etc) [8].

3. TRABALHOS RELACIONADOS

Muitas companhias e institutos de pesquisa tem empreendido iniciativas na rea da computao ubqua. Alguns dos primeiros projetos de pesquisa em computao ubqua so apresentados a seguir. Classroom 2000 Uma funcionalidade bastante til dos ambientes computacionais futuros ser a habilidade de capturar as experincias reais vividas por seus habitantes e fornecer registros aos usurios para posterior acesso e visualizao. Em 1995, um grupo do Georgia Institute of Technology empreendeu um projeto de trs anos denominado Classroom 2000 na tentativa de dar suporte ao ensino e aprendizagem em uma universidade atravs da introduo de um suporte automatizado para a captura da aula [18]. Enquanto muitos trabalhos de desenvolvimento nessa rea focavam no desenvolvimento de materiais multimdia melhorados, o projeto Classroom 2000 tentou melhorar a gerao de contedo atravs da instrumentao6 de um cmodo com as capacidades de registrar uma aula ao invs dos prprios estudantes terem que fazer anotaes manualmente e talvez transcrev-las mais tarde. O projeto tinha dois objetivos: (1) entender as questes de projeto de uma aplicao de computao ubqua para fornecer captura eficiente e capacidades de acesso para experincias reais ricas; e (2) entender o que necessrio para produzir uma aplicao de computao ubqua robusta cujo impacto em seu domnio-alvo pode ser avaliado sobre um longo perodo de tempo [8]. O prottipo inicial foi um grande sistema de quadro branco eletrnico que permitia ao professor mostrar e anotar slides. Os estudantes poderiam usar um tablet PC para fazer anotaes em suas prprias cpias dos slides. Inicialmente no havia comunicao via rede. Em janeiro de 1997, uma segunda sala de aula foi especialmente instrumentada para o uso de um prottipo do Classroom 2000. Microfones e cmeras de vdeo foram embutidos no teto e os sinais capturados por eles eram armazenados. O quadro branco eletrnico foi usado novamente, mas desta vez conectado na rede. Dois projetores anexados ao texto foram ligados a computadores conectados na rede tambm para visualizao [8]. Smart Space e Meeting Room Os projetos NIST Smart Space e Meeting Room (19982003) focavam no uso de dispositivos pervasivos, sensores e redes de comunicao para fornecer uma infra-estrutura para salas de encontro inteligentes sensveis ao contexto que detectam as atividades humanas em curso e geram uma resposta a essas atividades [19]. Os projetos foram divididos em duas fases. Na primeira, espaos inteligentes experimentais foram prototipados focando em: formas avanadas em interao humano-computador, integrao de redes sem fio pico-celulares com descoberta de servios dinmica, configurao automtica de dispositivos e infra-estruturas de software necessrias para programar aplicaes de computao pervasiva. Na fase 2, o foco eram as mtrica de desenvolvimento, mtodos de teste e referncias padres para fornecer implementaes de referncia para servir como modelos para possveis produtos comerciais [8].
6

O Meeting Room digitalizava os sinais a partir de 200 microfones, cinco cmeras de vdeo e possua um quadro branco inteligente. Dois conjuntos de ferramentas eram usados para gerenciar os dados dos sensoriados. Os fluxos dos sensores eram gerenciados usando o sistema NIST SmartFlow, uma camada middleware de fluxo de dados que fornecia abstrao do transporte de dados e oferecia formatos consistentes para os fluxos de dados. Metadados ou anotaes dos fluxos de dados eram atribudos com descries semnticas usando Architecture and Tools for Linguistic Analysis Systems (ATLAS). Quando as pessoas numa sala de encontros estavam conversando entre si, o sistema era capaz de capturar a conversa, armazenar e transcrever o encontro gravando conversas individualmente por falante, e disparar servios associados a partir da Internet de acordo com o assunto da conversa [8]. Cooltown O projeto Cooltown da HP (2000-2003), desenvolveu uma viso da computao ubqua para dar suporte a usurios mveis, fornecendo-lhes acesso a informaes por meio de dispositivos handhelds baseados na tecnologia Web e ligaes entre o mundo virtual com o mundo fsico real [20]. Um ponto chave da abordagem do Cooltown que recursos do mundo fsico podem ter uma presena na Web. Recursos fsicos esto associados com um identificador de recursos simples padro (Universal Resource Locator URL). URLs de recursos fsicos e virtuais podem ser descobertas e trocadas de forma bem simples. Assim, quando se entra em um novo cmodo, um PDA pode receber uma mensagem contendo a URL daquela sala via transmisso infravermelha a partir de um transmissor presente no cmodo, ou ler um cdigo de barras contido no cpmodo, etc. O PDA estar ento apto para acessar o website para o cmodo para ver as facilidades e funcionalidades disponveis.

4. CONSIDERAES FINAIS

A computao ubqua envolve uma diversidade de conceitos e tecnologias. Por ser um paradigma computacional relativamente novo, ter um entendimento claro dos aspectos chave que o compem crucial para desenvolvedores que almejam construir aplicaes ou mesmo projetar dispositivos ubquos. Este artigo apresentou os principais conceitos por trs da computao ubqua, mostrando suas definies, princpios e tecnologias envolvidas.

Instrumentao neste contexto refere-se ao processo de adicionar sensores que atuam como fonte de informao no mundo fsico. Essas fontes podem ento ser configuradas e registradas para anlise online e offline.

[1] Arajo, Regina Borges. (2003) Computao Ubqua: Princpios, Tecnologias e Desafios, In: Simpsio Brasileiro de Redes de Computadores, XXI, Natal. Minicurso: Livro Texto. Natal, RN: UFRN/DIMAp: UnP, 2003. 363 p. p. 45-115. [2] Lyytinen, K. e Yoo, Y. (2002) Issues and Challenges in Ubiquitous Computing, Communications of the ACM, vol.45, no. 12, Dezembro. Apud {1}. [3] Adelstein , F. et al. (2005), Fundamentals of Mobile and Pervasive Computing, McGraw-Hill. [4] Hansmann, U. et al. (2003), Pervasive Computing Handbook, Springer-Verlag. [5] Weiser, M. (1991), The Computer for the 21st Century, Scientific American, vol.265,no.3,Setembro., pp.94104. Apud {1}. [6] Satyanarayanan, M. (1996), Fundamentals Challenges in Mobile Computing, Proceedings of the Fifteenth Annual ACM Symposium on Principles of Distributed Computing (PODC), Philadelphia, PA. Apud {3}. [7] Nuaymi, L. (2007), WiMAX: Technology for Broadband Wireless Access. John Wiley & Sons, Ltd. Apud {8}.

5. REFERNCIAS

[8] Poslad, Stefan (2009). Ubiquitous Computing Smart Devices, Smart Environments and Smart Interaction. Wiley. [9] Waldman, H. e Yacoub, M. D. (1997) Telecomunicaes - Princpios e Tendncias, Srie Universidade, Editora rica, 287 pgs. Apud {1}. [10] Harte, L., Levine, R. e Kikta, R. (2002) 3G Wireless Demystified. McGraw-Hill, 496 pags. Apud {1}. [11] Foroohar, R. (2001) The Other Bubble. Newsweek. pp.13-16. May. Apud {1}. [12] Miller, M. (2001) Descobrindo o Bluetooth, Editora Campus, 289 pags. Apud {1}. [13] Wikipdia A Enciclopdia Livre. Disponvel em http://pt.wikipedia.org/wiki/UWB. Acesso em 13/09/2009. [14] Weiser, M. e Seely Brown, J (1997), The Coming Age of Calm Technology, In Peter J. Denning e Robert M. Metcalfe (eds.), Beyond Calculation: The Next Fifty Years of Computing, pp. 75-85. Springer-Verlag. Apud {15}. [15] Stajano, F. (2002), Security for Ubiquitous Computing. John Wiley and Sons. [16] Norman, Donald A (2006), O Design do Dia-a-dia. Rocco. [17] Rekesh, J. (1999), UPnP, Jini and Salutation - A look at some popular coordination frameworks for future networked devices. Publication from California Software Labs. Apud {1}. [18] Abowd, G.D. (1999), Classroom 2000: an experiment with the instrumentation of a living educational environment. IBM Systems Journal, 38(4): 508530. Apud {8}. [19] Stanford, V., Garofolo, J. Galibert, O., Michel,Mand Laprun, C. (2003), The NIST Smart Space and Meeting Room Projects: signals, acquisition, annotation, and metrics. Apud {8}. [20] Kindberg, T. and Fox, A. (2002), System software for ubiquitous computing. IEEE Pervasive Computing, 1(1): 70 81. Apud {8}.

Вам также может понравиться