sexta-feira, 7 de março de 2008

Orientação a objetos aplicada à computação pervasiva

A proposta do artigo apresentado a seguir é oferecer uma ferramenta de suporte ao desenvolvimento e a execução de sistemas pervasivos através de uma arquitetura em três camadas. Essa ferramenta fornece uma interface de programação simples para o desenvolvimento de aplicações, componentes e serviços na forma de objetos baseado no método de orientação a objetos.

O autor selecionou alguns objetos de estudo que representam características indispensáveis para aplicações pervasivas. São eles:
1- Cyberforaging: consiste em estender os recursos de processamento de dispositivos móveis com demais dispositivos ao seu redor em um ambiente. Significa que uma mesma aplicação pode ser executada em um celular e em um computador fixo ao mesmo tempo transparentemente.
2- Composição ad-hoc: prevê a integração entre aplicações de forma dinâmica, ou seja, sem intervenção do usuário.
3- Adaptação a mudanças de contexto: são meios que permitem que o cliente escolha a melhor estratégia de adaptação frente a alguma mudança no ambiente em que ele se encontra.

MagnOb

MagnOb é uma arquitetura que mapeia componentes e serviços em objetos do paradigma OOP e provê a execução destes objetos em sistemas pervasivos.

Como um dos maiores desafios da computação pervasiva é a integração de hardware e software existentes de forma transparente, a motivação deste trabalho é de que apesar das diferenças existentes entre componentes de hardware e software, todos eles possam ser representados em forma de objetos do paradigma OOP. Dos componentes de software, destacam-se os reutilizáveis por fornecer um nível maior de reuso em diferentes aplicações. Isso é garantido através do OOP. A integração de componentes pode ser realizada apenas através de “portas específicas”, quando algum componente deseja conectar-se a outro, ele deve procurar por uma dessas portas.

Os serviços não são estruturados pelo paradigma OOP, eles são providos através de uma Interface Definition Language(IDL), que define o serviço e seu protocolo de mensagem independente da sua implementação e da plataforma utilizada.

Os objetos MagnOb são as principais unidades de execução do ambiente e são providos de suporte á mobilidade de código, cópia e restauração de estado e o mecanismo de offloading, que permite a execução destes objetos em outras máquinas, utilizando recursos disponíveis em outros computadores.

Cada objeto MagnOb possui o seu proxy, gerado automaticamente, para permitir a sua utilização por dispositivos remotos. Para cada referencia remota requisitada é criado um novo proxy com um canal de comunicação dedicado para o objeto distribuído. Os canais de comunicação são implementados como sockets.

A ferramenta ainda é dotada de um compilador que realiza um pré-processamento das classes definidas pelo desenvolvedor e adiciona os vários recursos oferecidos pelo modelo de programação e execução do MagnOb.

Arquitetura MagnOb

A arquitetura da ferramenta MagnOb é constituída de três níveis:
1 – Apliacação: é o nível responsável pela execução dos objetos concretos MagnOb, nela é realizado o pré-processamento das classes para que sejam utilizadas juntamente com funcionalidades da API para manipulação de objetos oferecida pela ferramenta.
2 – Componentes: nessa camada, os objetos têm sua funcionalidade extendida, de forma transparente às outras camadas, para suportar diversos recursos e mapeamentos previstos no MagnOb.
3 – Sistema: essa camada pe responsável por criar uma arquitetura virtual para a execução dos objetos MagnOb.

Opinião

Depois do estudo deste artigo eu cheguei a conclusão de que um sistema para ser pervarsivo deve ser antes de tudo polimórfico, pois é a única forma de garantir que ele seja adaptável a mudanças de contexto, e, polimorfismo é a essência do paradigma OO.

Com o conceito de abstração OO é possível garantir a integração e a substituição de diversos componentes, o que permite que sistemas mudem de característica de acordo com as necessidades do usuário. Isso comprova que OO é o paradigma mais adequado para construção de sistemas pervasivos.

Fonte: http://www.inf.unisinos.br/~barbosa/pipca/consipro1/a9.pdf

Thiago Ribeiro Nunes / 105040501
Sistemas distribuídos
UCAM

Nenhum comentário: