Aplicações para Computação Ubíqua



Baixar 162.64 Kb.
Página3/6
Encontro29.07.2016
Tamanho162.64 Kb.
1   2   3   4   5   6

2.2O Visionário: Mark Weiser


Mark Weiser foi o criador da computação ubíqua ou “ubicomp”. No Laboratório de Ciência da Computação da Xerox Parc foram realizados vários estudos para se poder compreender como as pessoas trabalhavam e que ferramentas usavam. Weiser percebeu que a melhor utilização de uma ferramenta é quando o usuário não percebe que está utilizando-a, isto é, o usuário não percebe seu uso e dessa forma, ele pode centrar mais atenção no trabalho que está realizando.

Dr. Weiser começou suas pesquisas em 1988 e percebeu que a tecnologia da época não era suficiente para suportar a sua visão. Então ele se focou primeiro, nas diferentes características da computação ubíqua, como dispositivos que eram portáteis e cuja localização era sempre conhecida ou em dispositivos que auxiliariam as pessoas a trabalharem em conjunto. Os primeiros protótipos foram os “tabs”, “pads” e “boards”. “Tabs” são similares a pequenos blocos de anotações eletrônico similares aos “Post-It” e, poderiam haver centenas deles em um escritório, cada um correspondendo a uma pequena surperfície com informações. Já os “pads” são como blocos amarelos, maiores, ou computadores usados com o objetivo de serem usados momentaneamente e depois, poderem ser deixados para outras pessoas quaisquer. Os “boards” são enormes quadros negros eletrônicos, que visam permitir o trabalho coolaborativo e que estão em uso, hoje em dia.


2.3A Infraestrutura da Computação Ubíqua


Para alcançar as metas da Computação Ubíqua vai ser necessário uma infraestrutura altamente sofisticada. No sistema ideal, um mecanismo de registro sequencial de passos em tempo real vai supor as localizações e status operacional dos inúmeros componentes do sistema e vai se utilizar do contexto para despachar mensagens de forma mais inteligente. Os usuários serão capazes de escolher entre uma grande variedade de dispositivos a fim de obterem mobilidade, acesso aos dados em banda larga e recursos computacionais em qualquer ponto da rede. Automaticamente, eles vão adapatar seus comportamentos de modo a se ajustar ao usuário corrente e ao contexto.

É impossível prognosticar as séries de formas dos dispositivos e suas capacidades disponíveis daqui a uma década. Alguns trabalhos se basearam no tamanho dos dispositivos, um fator que provavelmente continuará a dividir os computadores em categorias funcionais. Uma metáfora bem útil que ilustra essa abordagem é a que considera o cumprimento tradicional das unidades, em Inglês: polegadas, pés e jardas. Essas unidades se desenvolveram porque representavam três escalas sinificativamente diferente sob ponto de vista humano.



  • Dispositivos em escala de polegada, em geral, podem ser facilmente associados a roupas ou objetos carregados na mão ou em bolso.

  • Dispositivos do tamanho de pés também podem ser carregados, apesar de que não, o tempo todo e os empregados vão usá-los de modo semelhante ao modo que usam seus “notebooks” hoje em dia. Alguns “notebooks” são pessoais e são carregados para lugares particulares, para própositos particulares. Nossos “notepads” são espalhados pelo local de trabalho e podem ser usados por quaisquer pessoas e quaisquer propósitos.

  • No escritório do futuro vão existir computadores com vídeos em tamanho de jardas. Provalvelmente serão dispositivos estacionários analogos aos quadros de avisos atuais.

2.4Questões da Computação Ubíqua


Alguns aspectos atuais da computação precisam mudar de forma a ajudar a computação ubíqua a se tornar realidade. É sabido que a computação ubíqua vai compreender um grande conjunto de dispositivos pequenos, onde muitos deles vão estar em comunicação constante uns com os outros, de modo que questões como: qual seria a infraestrutura necessaria para viabilizar a computação ubíqua; como esse tipo de infraestrutura pode ser construído a partir da existente hoje, são algumas das questões levantadas e que precisam ser respondidas. Assim sendo, essa seção se propõe a analisar alguns “hardware” e limitações de usabilidade que atualmente impedem a computação ubíqua de se tornar realidade.

O custo dos dispositivos computacionais

Um dos fundamentos da computação ubíqua é “uma pessoa, para muitos computadores”. De modo a satisfazer a idéia de muitos computadores, cada computador precisa custar menos. Hoje em dia, um computador de mesa do tipo “desktop” (como por exemplo um Palm Pilots) custam em torno de quinhentos dolares, ou mais. Obviamente, o custo é alto para dar margem a um computador por pessoa.

Entretanto, os tipos de computadores que estarão envolvidos na computação ubíqua não vão precisar ser computadores para propósitos genéricos, e não vão portanto precisar ter a mesma velocidade e capacidade de armazenamento requerida pelos nossos tradicionais computadores pessoais. Assim sendo, eles poderão custar menos, especialmente porque o custo dos processadores e dos discos rígidos está em queda constante, como parte da chamada “Moore’s Law” que determina que a quantidade de transistores que cabe em um silicone dobre a cada dezoito meses.

Ainda existem componentes que não tiveram queda significativa de preço. Em especial, os monitores de computadores tradicionais e telas LCD não apresentaram queda de preço suficiente que justificasse uma troca de dispositivos de computador antigos por novos. A fim de que os dispositivos para computação ubíqua tenham um custo relativamente baixo, será necessário a produção em escala dos mesmos, como por exemplo a produção de motores elétricos. A computação ubíqua só será praticável quando os custos dos dispositivos apresentarem uma queda em seus custos tal que será possível poder jogar fora computadores individuais com monitor, sem levar em consideração o seu custo. Fazendo uma comparação, as calculadoras de mão já tiveram um custo bem alto, mas nos dias de hoje são tão baratas que geralmente elas são dadas como promoção em vários produtos.



Baixo Consumo de Energia

Um dos requerimentos básicos para os dispositivos pequenos, ubíquos também está relacionado ao baixo consumo de energia. Os usuários não estarão dispostos a trocar baterias de centenas de dispositivos com frequência. O computadores de preço baixo vão precisar de baterias baratas, economicas e vão usar componentes de baixo consumo.



A carência de largura de banda

Um dos requerimentos necessários para que a computação ubíqua se torne lugar comum é a largura de banda de rede suficiente para permitir que centenas de dispositivos sejam capazes de se comunicar uns com os outros. Atualmente, ainda estamos nos estágios primários de rede, mas a medida que o tempo passa, o mundo baseado na comunicação por voz está cada vez mais, migrando para fibra ótica e redes sem fio. Para se ter uma idéia dos requerimentos de rede que serão necessários, um estudo recente do MCI estimou que o atual tráfego de dados em rede vai ultrapassar o tráfego de voz nos próximos três anos, com tendências de aumento ainda maior para os anos seguintes.



Mobilidade

A mobilidade é outro aspecto relacionado a computação ubíqua. Os usuários têm que ter computadores portáteis, com acesso sem fio a Internet, a partir de qualquer ponto de acesso.



Mobile IP

O Internet Protocol (IP) assume que a localização e a conexão de um computador permanece fixa. Um aspecto da atual pesquisa em computação móvel é na área de protocolos como o Mobile IP que é uma extensão do IP que possibilita os computadores se conectarem a partir de diversos pontos de acesso e mantendo o mesmo endereço IP.



Necessidade de conscientização do usuário para com sistemas de arquivo

Uma das primeiras coisas que os usuários precisam aprender no novo computador é sobre o conceitos de arquivos, e a hierarquia de diretórios que eles contem. Ao invés de concentrar na informação que eles têm disponível, o usuário é forçado a pensar em termos de como a informação está armazenada. Como consequência, a informação é armazenada de forma não intuitiva fazendo com que o usuário perca o rastro de localização dos arquivos, sobreponha novas versões de arquivos por versões antigas, exclua diretórios que contenha arquivos importantes, por acidente etc. Qualquer usuário de computador tem sua própria história aterrorizadora sobre exclusão acidental de arquivos, e quase na maioria das vezes, quando recuperáveis, acabaram resultando em perda de dados devido a natureza dos sistemas de arquivo.

Uma das idéias chaves da computação ubíqua é a de que os computadores devem se tornar invisíveis, e que eles têm que fornecer informações aos usuários na própria linguagem de usuário. Por exemplo, quando o usuário deseja trabalhar com um relatório do dia anterior, eles não deveriam ser forçados a lembrar de alguma coisa tal como “~/report.txt”, ou “C:\report.txt”, uma vez que isso seria forçar o usuário a pensar usando linguagem do computador. Seria mais simples para o usuário, se ele pudesse dizer em voz alta “abra o arquivo de ontem”. É claro que tal funcionalidade iria demandar um reconhecimento de voz de alta qualidade, que está começando a ficar mais praticável nos computadores atuais. Mas, qualquer que fosse o esquema de acesso, o principal conceito é o de que o usuário pode acessar seus dados sem a necessidade de um conhecimento do nome dos arquivos ou de suas localizações, informações que são atualmente pedidas a ele. O usuário poderia acessar uma dado estritamente através do seu contexto, sem a preocupação sobre o formato do arquivo, a localização do arquivo, ou mesmo em que máquina tal arquivo foi salvo.

A necessidade de instalação de programa

Hoje em dia, quase todo programa (“software”) existente precisa ser formalmente instalado em um computador. Isto significa dizer que, o computador tem que ser submetido a um processo de reconfiguração rigoroso para que o novo programa possa rodar adequadamente. Bibliotecas compartilhadas precisam ser instaladas com o caminho (path) correto, configurações globais precisam ser mudadas ( às vezes, exigindo que o usuário faça um novo “reboot” do computador), preferências “default” do usuário precisam ser determinadas pela primeira vez e assim por diante. Na maioria dos casos, uma pessoa tem que acompanhar manualmente um processo de instalação, de forma a assegurar que todo o processo ocorreu corretamente, e em alguns casos, assegurar-se de que o produto recém instalado não se trata de nenhum ataque a segurança, tal qual um tipo de vírus. A única excessão à regra é no que diz respeito a programas embutidos do tipo “firmware”, que são confeccionados como uma parte do “hardware”.

Para que a computação ubíqua aconteça de verdade, o conceito de instalação tem que desaparecer. Ao invés da pessoa ir até o programa, o programa tem que vir à pessoa e, como consequência, o programa tem que fluir livremente de um computador para o outro sem demandar que cada computador tenha mudanças essenciais de configuração para poder executá-lo. Os computadores têm que saber separar os programa em pedaços, de modo que os novos programas não sejam consumidores ilimitados de recursos ou acessem arquivos que não estão relacionados com os mesmos. Além disso, já que um programa poderá ir de um computador para o outro, todos os rastros deixados por ele devem ser removidos do computador anterior assim como as preferências de usuário. O uso dos “softwares” tem que se tornar “stateless”, onde cada programa está sempre pronto para executar suas funções a qualquer momento, sem necessidade de configuração prévia.

Uma analogia a isso é o conhecido arquivo de texto em ASCII. Esses arquivos texto podem ser simplesmente levados de um computador para o outro, idenpendentemente do sistema operacional que esteja rodando: Unix, Windows, OS/2, etc. Nunca há uma preocupação quanto a necessidade de instalação e desinstalação, assim como não há a preocupação da existência de um arquivo corromper o sistema. Para que a computação ubíqua possa ser bem sucedida, os programas também terão que ter a mesma filosofia: Uma entidade de fácil transferência, escrita em formato universal.

O candidato a “formato universal” mais próximo para programas, que existe atualmente é o Java. Existem dois pontos muito fortes a seu favor. O primeiro, é que o formato de armazenamento de código usado independe de processador, tornando-o bastante viável para transferências entre computadores. A questão sobre que tipo de processador um dado computador possui se torna irrelevante. O segundo, é a segurança que está embutida no formato, que faz com que se torne praticamente impossível que chamadas indevidas ao sistema sejam permitidas. Isso o torna também bastante viável para transferências, já que nenhum programa Java terá a capacidade de violar a segurança da máquina em que está hospedado. O maior obstáculo para o Java é que sua interface de programação ainda é baseada em versões, o que inviabiliza a codificação de programas que levam a versão em consideração. Não será possível usar Java para computação ubíqua até que duas coisas aconteçam: ou a interface de programação é congelada ( o que é bastante improvável, dado o histórico em computação), ou algum tipo de sistema seja estabelecido de forma que a interface de programação seja transportada pelo programa que a utiliza.

1   2   3   4   5   6


©principo.org 2016
enviar mensagem

    Página principal