IMPRIMIR VOLTAR
A. Ciências Exatas e da Terra - 2. Ciência da Computação - 10. Redes
MIDDLEWARE REFLEXIVO: ESTUDO E IMPLEMENTAÇÃO
Frederico Forzani Vaz 1
Fábio Moreira Costa 1
(1. Instituto de Informática, Universidade Federal de Goiás / UFG)
INTRODUÇÃO:
Uma das áreas que mais tem se desenvolvido nos últimos anos é a computação móvel. Todo esse avanço está deixando os dispositivos portáteis (celulares, Palmtops, PocketPCs, etc) com um poder cada vez maior de processamento, memória e comunicação. No entanto, à medida que a quantidade de dispositivos portáteis cresce, aumenta também a heterogeneidade que estes apresenta entre si. Por exemplo, sistemas operacionais diferentes, interfaces distintas etc. Uma infra-estrutura denominada plataforma de middleware poderia dar suporte aos problemas de sistemas distribuídos encontrados neste tipo de ambiente, aumentando o grau de transparência para o programador. No entanto, a plataforma deve ser suficientemente flexível para adaptar-se dinamicamente às variações do ambiente de execução e dos requisitos dos usuários, algo que não é encontrado nas plataformas de middleware comerciais atuais. Este trabalho descreve o processo da implementação de uma plataforma de middleware reflexiva denominada Meta-ORB4Java. Esta que se propõe a suprir as necessidades de aplicações distribuídas, principalmente àquelas que fazem uso de multimídia distribuída e de computação móvel, com respeito à capacidade de adaptação dinâmica. É importante citar que a plataforma está em fase de desenvolvimento e sua implementação está organizada em duas partes básicas: o núcleo da plataforma, desenvolvido no contexto de pesquisa do orientador por outro projeto, e a funcionalidade reflexiva, descrita no presente trabalho.
METODOLOGIA:
Para provermos uma plataforma dinamicamente adaptável é importante ser capaz de explicitamente representar e manipular as configurações internas da plataforma. Sendo assim, uma meta representação explícita e facilidades para a manipulação, através desta meta representação, da estrutura e do comportamento internos da plataforma devem estar presentes em sua construção. A manipulação dinâmica da meta representação tem efeito decisivo sobre a plataforma. Sendo assim, a plataforma divide-se em dois níveis: o nível base e o meta nível. O nível base consiste das funcionalidades típicas de uma plataforma de middleware, tais como a localização e a comunicação entre objetos remotos. Já o meta nível corresponde a uma representação destas funcionalidades, provendo ao programador uma forma de acesso à implementação interna da plataforma. É importante citar que o meta nível está causalmente conectado ao nível base, implicando que modificações em um destes dois níveis implicarão em modificações correspondentes no outro nível. A nível de implementação, a plataforma deve ser voltada para os dispositivos portáteis, notoriamente com a linguagem J2ME (Java 2 Micro Edition), CLDC 1.0(Connected Limited Device Configuration) e MIDP 1.0 (Mobile Information Device Profile), além das implicações que esses padrões implicam.
RESULTADOS:
Os resultados até o presente momento consiste na implementação dos meta objetos da plataforma MetaORB4Java. O meta nível é formado por quatro meta objetos, divididos de acordo com o interesse de atuação de cada um, constituindo vários modelos de meta espaço. O meta objeto Encapsulamento permite um acesso a uma visão externa dos componentes (unidades para o encapsulamento de estado e funcionalidade) e bindings (possibilitam a conexão de componentes através de suas interfaces). O meta objeto Interface provê acesso às estruturas internas das interfaces dos componentes e bindings. Como o meta objeto Encapsulamento, somente introspecção é permitida. Ao contrário dos outros meta objetos, o meta objeto Arquitetura provê acesso às estruturas internas dos componentes e bindings permitindo introspecção e adaptação, para assim evoluir as estruturas da plataforma. Tal meta objeto está em fase em implementação. O meta objeto Interceptador aborda aspectos diferentes dos outros meta objetos, pois possui como característica principal o controle do acesso às interfaces dos componentes e bindings. Em um aspecto mais geral, os interceptadores (meta-objeto Interceptador) servem para implementar qualquer tipo de modificação no tratamento de requisições ou mensagens antes que estas sejam entregues à interface alvo. Este meta objeto encontra-se em fase de projeto.
CONCLUSÕES:
Este projeto descreve uma plataforma de middleware reflexiva adaptavelmente dinâmica que se propõe a lidar com problemas no contexto da computação móvel, deixando o trabalho do programador mais transparente. Para tanto, a plataforma encontra-se em fase de construção, notavelmente com alguns meta objetos (Encapsulamento e Interface) em estado funcional e outros (Arquitetura e Interceptação) em fase de projeto. Assim como a parte de teste da plataforma sobre os dispositivos móveis e desenvolvimento de aplicativos que possam usufruir da adaptação dinâmica da plataforma também estarem na fase de projeto. Possíveis trabalhos futuros poderão ser gerados em cima do desenvolvimento de aplicativos para a plataforma. Com a disseminação dos dispositivos portáteis crescendo juntamente com o grau heterogeneidade que esses dispositivos apresentam entre si, uma infra-estrutura capaz de homogeneizar o desenvolvimento de aplicativos nesse tipo de ambiente, fornecendo às aplicações alterações / adaptações dinâmicas, torna-se necessária. Sendo assim, estes dispositivos portáteis demandam uma tecnologia de middleware que possa ocultar detalhes não relevantes ao programador, fornecendo um alto grau de transparência. A plataforma Meta-ORB4Java se propõe a ter tais características necessárias para torná-la altamente configurável e dinamicamente reconfigurável, de maneira reflexiva e transparente.
Instituição de fomento: CNPQ (Conselho Nacional de Desenvolvimento Científico e Teconológico) e FUNAPE - UFG (Fundação de Apoio à Pesquisa).
Trabalho de Iniciação Científica  
Palavras-chave: Computação Móvel; Middleware Reflexivo; Adaptação Dinâmica.
Anais da 58ª Reunião Anual da SBPC - Florianópolis, SC - Julho/2006