Tecnologias de distribuição: Web e CORBA

 

 

 

Grupo

 

Luciana Meneghel 973271

Rossano Pablo Pinto 973273

José Roberto 980142

Raquel Cristina Bosnardo 973505 (Relatora)

 

 

Introdução

 

[1] O padrão CORBA definido pela OMG. Este padrão especifica Object Request Broker (ORB), que é um mecanismo padrão através do qual objetos de software distribuídos e seus clientes podem interagir.

Java é uma liguagem de programação orientada a objetos que está ganhando grande aceitação entre desenvolvedores de software.

A nossa idéia é substituir o mecanismo Servlet/CGI pelo CORBA / Java na intenção de desenvolver um aplicativo cliente / servidor baseado na web.

 

 

Funcionalidades

 

Estas funcionalidades , foram discutidas em um trabalho anterior do grupo. Agora sob nova proposta iremos considerar essas mesmas funcionalidades na utilização CORBA / Java.

As funcionalidades seguem abaixo:

 

1. Composição das disciplinas através de material, exercícios, provas, etc. (Processo de co-autoria.)

2. Estabelecimento de perfis para cada curso, definindo diferentes visões.

3. Cadastramento de usuários com diferentes perfis e níveis de acesso (instrutor, monitor, alunos).

4. Disponibilização do material.

5. Acompanhamento do andamento da disciplina.

6. Fornecimento de feed-back para alunos e professores.

7. Aplicação de provas.

8. Correção das provas e cálculo das notas.

9. Disponibilização dos resultados para eventuais consultas.

 

 

 

Proposta

 

Analisamos as funcionalidades no CORBA / Java em uma base de dados distribuída com um paradigma cliente / servidor, devido a sua infraestrutura, que permite essa flexibilidade.

Do nosso ponto de vista na funcionalidade 1, usando o serviço de invocação dinâmica do CORBA teremos como resultado pouco overhead, mesmo com um número de invocações muito grande, porque um programa servidor objeto pode manusear muitas invocações remotas, despachando o pedido ao primeiro objeto disponível e conforme o crescimento da demanda, adicionando mais objetos.

De um modo geral, o CGI / Servlet, que havia sido proposto no trabalho anterior tem o overhead da rede, porque todo o processamento é feito no lado do servidor. Isso libera o cliente de ter que fazer processamentos pesados mas impõe envios e recibimentos talvez desnecessários.

Com o mecanismo Java / CORBA podemos ter atividades mais complexas, sendo processadas no lado do cliente.

Outro aspecto é que o CORBA permite que os applets java se comuniquem com outros objetos escritos em linguagens e sistemas operacionai diferentes sobre máquinas heterogêneas. Isso é muito interessante quando houver a necessidade de buscar informações em servidores distintos, além de prover serviços de objetos distribuídos como os metadados.

Para as funcionalidades 1,3, 4 e 9 vimos que o CORBA é bem flexível, pois enquanto se está compondo ou disponibilizando a informação, ele permite fazer a invocação de operações remotas.

Nas funcionalidades 1,2,3 e 7 as alterações nas páginas são automáticas para o cliente /servidor, isto é viável para o serviço de manutenção. Já que do outro modo proposto no trabalho anterior as mudanças em um formulário HTML deveriam ser manualmente associadas ao seu programa CGI correspondente.

Além disso, considerando para a funcionalidade 1, o projetista pode ter um controle maior sobre a interface do usuário na composição do material.

 

 

 

Conclusão

 

A combinação CORBA / Java é bem flexível porque o Java permite o uso de aplicações portáteis e o CORBA permite o uso do sistema distribuído com o paradigma cliente / servidor.

Desse modo nos acreditamos que a combinação CORBA / Java apresenta uma boa estrutura para o desenvolvimento das aplicações referentes a algumas das nossas funcionalidades.

 

 

 

Bibliografia

 

1- Using Java applets and CORBA for Multi-User Distribuited Applications

Eric Evans and Daniel Rogers

University of Texas at Austin

May - June 1997

 

2- Client / Server, CORBA / Java - Style

Chapter 3

 

3- Bridging Boundaries: CORBA in Perspective

Sean Baker - Iona Tecnologies

Vinny Cahill and Paddy Nixon - Trinity College, Dublin