230 likes | 345 Views
Objetos Distribuídos Padrão CORBA. Trabalho de Fundamentos da Engenharia de Software Profº Ricardo Luiz Schneider Alunos: Fábio Campos Lourenço Fernando Azeredo Andrade. Desenvolvimento de Software Atualmente Não Possui o Devido Nível de Maturidade:.
E N D
Objetos DistribuídosPadrão CORBA Trabalho de Fundamentos da Engenharia de Software Profº Ricardo Luiz Schneider Alunos: Fábio Campos Lourenço Fernando Azeredo Andrade
Desenvolvimento de Software Atualmente Não Possui o Devido Nível de Maturidade: • Não atende totalmente às qualidades desejadas. • Prazos de entrega não são cumpridos. • Requisitos funcionais do sistema não satisfeitos ou desatualizados quando entregues. • Orçamentos previstos “estouram”. • Custos de manutenção são altos. • Difícil integração dos sistemas.
Melhorando o Desenvolvimento de Sistemas • Tecnologia de Orientação a Objetos • Encapsulamento • Os dados de um objeto estão encapsulados e são acessados pelos métodos de interface. • Dá mais ênfase à interface dos objetos e à interoperabilidade entre classes.
Vantagens da Orientação a Objetos (O.O.) • Melhor produtividade e redução do tempo de desenvolvimento. • Reuso. • Flexibilidade. • Redução de custos. • Facilidade de manutenção.
Arquitetura Cliente / Servidor • Tem por objetivo compartilhar recursos, dados, software e hardware. • Cada computador em uma rede pode oferecer serviços como um servidor e utilizar outros serviços como cliente.
Objetos Distribuídos • Combinação de Orientação a Objetos e Computação Distribuída. • Permite uma completa interoperabilidade entre componentes de aplicações em ambientes distribuídos e heterogêneos. • Middleware.
Middleware • Conectar aplicações distribuídas. • Solucionar problemas de falta de transparência entre componentes. • Permitir uma gerência simples e eficaz.
Modelo Integrador • Identificar a compatibilidade entre tipos definidos em modelos diferentes. • Compatibilizar o modelo de execução de objetos de diferentes arquiteturas que precisam interagir.
Aplicações Distribuídas em Camadas • Two-tier (2 camadas) • Falta de controle centralizado. • N-tier (3 camadas) • Desktop - Interface com o usuário. • Servidor de Aplicação - Lógica do negócio e lógica de dados. • Servidor de Banco de Dados - Serviços de dados e arquivos.
Visão Geral de CORBA • Proposta da OMG (Object Management Group). • Interface comum aos objetos escritos em diferentes linguagens de programação.
Objetivo da CORBA • Dar a todos os seus componentes a “mesma cara”. • Interfaces definidas em uma linguagem declarativa. • A interação ocorre através de um Middleware(ORB), que estabelece a relação Cliente/Servidor.
Arquitetura CORBA C++ Delphi C++ Delphi Java Java IDL IDL IDL IDL IDL IDL CLIENTE SERVIDOR ORB
Linguagem IDL • Puramente declarativa, usada para descrever objetos CORBA. • Subconjunto de C++ com instruções adicionais.
Objeto CORBA • Geralmente representa conceito do mundo real. • Oferece atributos e operações que compõe sua interface IDL.
Objeto CORBA • Cliente/Servidor. • Se comunicam estando na mesma máquina ou em uma máquina remota via Internet.
REPOSITÓRIO DE IMPLEMENTAÇÃO REPOSITÓRIO DE INTERFACE ADAPTADOR DE OBJETOS INTERFACE ORB CLIENTE SERVIDOR ESQUELETO IDL DII IDL STUBS
Serviços CORBA • Componentes complementares definidos como IDL • Ex: • Segurança • Controle de Concorrência • Ciclo de Vida
Facilidades CORBA • Especializações dos serviços CORBA. • Ex: • Interface do usuário • Interfaces especializadas • Gerência de tarefas
EXTENSÃO EXTENSÃO MS OLE MS COM DCOM ActiveX Padrão DCOM • Distributed Component Object • Maior competidor do CORBA • Criado pela Microsoft
Referências Bibliográficas • www.infosys.tuwien.ac.at/Research/Corba/OMG/arch2.htm#446864 • www.nautilus.com.br/~francioli • www.omg.org/corba/beginners.html • Moraes, João A. G. de Queiroz e Madeira, Edmundo. CORBA: Plataforma Aberta de Objetos Distribuídos. Developers Magazine nº 21, páginas 26 a 30, Maio de1998