A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Objetos de Negócio CORBA BO Cooperantes Anatomia de um BO Anatomia de um BO cliente/servidor.

Apresentações semelhantes


Apresentação em tema: "Objetos de Negócio CORBA BO Cooperantes Anatomia de um BO Anatomia de um BO cliente/servidor."— Transcrição da apresentação:

1 Objetos de Negócio CORBA BO Cooperantes Anatomia de um BO Anatomia de um BO cliente/servidor

2 BO em CORBA Um BO provê um modo natural para descrever conceitos do mundo real, independentes da aplicação. Cliente, order, dinheiro, pagamento, carro,... Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

3 BO em CORBA BO proporcionam uma visão de software que transcende ferramentas, aplicações, base de dados e outros conceitos de sistemas. A última promessa da tecnologia de objetos e componentes é provê esses componentes de média granularidade que comportam- se muito semelhantemente como é o mundo real. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

4 BO Cooperativos BO devem ser componentes independentes. Enquanto sendo hábeis para interoperar com outros BO. Formando um lattice (treliça) de componentes que são objetos de negócios cooperativos. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

5 O que são Componentes de Software Mais uma forma de gerar frases... Os componentes são importantes porque é muito importante usar componentes. Mais um modismo semelhante a Orientação a Objetos... Meu gato é orientado a objetos. Alguém já viu um Componente de Domínio ? Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

6 Componentes de Domínio Significado de Domínio : Cooperação entre componentes Exemplo em Delphi: Podemos observar componentes durante a construção de uma simples aplicação em Delphi... Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

7 Demo em Delphi Uma pessoa... (pessoa) Tem nome... (pessoa e nome) Que pode ser abreviado... (pessoa, nome, nome_abreviado) E fonetizado... (pessoa, nome, nome_abreviado, nome_ fonetizado) A aplicação está pronta... (nome, nome_abreviado, nome_fonetizado) Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

8 Vamos Definir Componentes ? Qualquer subsistema que possa ser separado e que possui uma interfacereusável e potencialmente padronizável. Um elemento de software que pode ser facilmente utilizado em múltiplos contextos, incluindo aqueles não previstos originalmente. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

9 Vamos definir componentes ? Um objeto com uma interface pública preparado para ser utilizado dentro de um ambiente orientado a objetos. Estes ambientes definem interfaces para que os objetos possam se comunicar entre si e provêm suporte para o reuso. São uma combinação de: um modelo de programação e um metamodelo de informação. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

10 Vamos definir componentes ? Um subsistema que não está ligado a nenhuma aplicação específica. Um produto de alta qualidade, resultado de um cuidadoso desenho e teste. Empacotado para reuso, com uma interface bem projetada e documentada. Algo genérico, para ser usado em diferentes lugares, configurado na hora do uso. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

11 Uma definição Uma cápsula de conhecimento. Uma unidade de padronização. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

12 Motivação The number of applications that need to be written is growing exponentially. Unless we can find a way to write them in a tenth of the time, we are tost. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

13 A Crise do Software 52.7% dos projetos necessitam correções de orçamento, o que implica em perdas significativas. Produtividade dos desenvolvedores caiu 13% desde Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

14 A Crise do Software A arquitetura Cliente/Servidor clássica não aumentou a produtividade no desenvolvimento de software como prometido. Programar Orientado a Objeto ajuda, mas não resolve. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

15 A Crise do Software Múltiplos sistemas de informação que não se falam. Definição de padrões. Qualidade da informação: interpretação do padrão. Mudam os governos, mudam as direções antes dos sistemas ficarem prontos. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

16 Precisamos de uma Infoestrutura... Que não dependa da infraestrutura tecnológica. Que possa ser implementada em partes independentes. Que não se perca nas mudanças políticas. Que possa ser reaproveitada por todos. Que implemente os padrões, para que não fiquem no papel. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

17 Procurando Soluções... Os sistemas monolíticos estão caminhando para uma rápida extinção; Surge um novo paradigma de desenvolvimento de software, com base em componentes padronizados, baseados em arquiteturas que ofereçam os serviços necessários à distribuição dos objetos. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

18 Por que usar Componentes ? Pelas razões erradas: é moderno... são bonitos... não fica bem se não usar... alguém mandou... Pelas razões certas: $$$$$$$$$$$$$$$$$$$$$$$$$$$$$ !!! Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

19 Características de Componentes Um componente deve permitir configuração sem perder identidade... Tem que encapsular algum invariante que agregue valor, protegendo ele das mudanças tecnológicas... Mais informações: Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

20 Exemplo de Componente TDicionario O conhecimento de navegar em árvores armazenadas em BD. Pode ser configurado... Preserva o conhecimento... Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

21 Principais Características Possui documentação que lhe é própria. (help on line) Podem ser agrupados em conjuntos para distribuição (Packages). Pode ser substituído sem afetar a aplicação. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

22 Principais Características Suportam composição (agregação): componentes formados a partir de outros componentes. Suportam introspecção. Suportam mecanismos de notificações (eventos). Suportam serialização. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

23 Principais Características Possuem um modelo que integra eles às ferramentas de desenvolvimento. (COM, CORBA, JAVABEANS, EJB) Suportam uma linguagem de definição. (IDL) Desejáveis: Implementadas nos modelos, mas não suportadas pelas ferramentas de desenvolvimento. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

24 Principais Características Suporte a várias interfaces. E a mais importante: FEEDBACK VISUAL AO DESENVOLVEDOR (caso Delphi) Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

25 Mas seja qual for o motivo... USE COMPONENTES ! Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

26 BO em CORBA Primeiro, deve-se definir as regras para que esses componentes funcionem. (OMG) De acordo com a OMG, um BO é um componente no nível da aplicação que podemos usar em combinações imprevisíveis. Um BO é, por definição, independente de qualquer aplicação. Aplicações Distribuídas são suites de BO. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

27 BO em CORBA Uma aplicação, simplesmente, provê o ambiente para executar esses BO. Um BO é um componente que representa uma entidade reconhecível na vida cotidiana. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

28 Objetos a Nível de Sistemas Em contraste, objetos a nível de sistemas, representam entidades que fazem sentido somente para sistemas de informação e programadores. Eles não representam nada que um usuário final reconheça. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro

29 BO em CORBA De acordo com a OMG, um BO é um top- level object reconhecível pelo usuário final de um sistema. Um BO é um objeto auto-contido edistribuível que tem uma interface de usuário, estado e sabe como cooperar com outros BO desenvolvidos separadamente para realizar uma tarefa desejada. Computação Distribuída UNIRONDON - Cuiabá - MT João Bosco Mangueira Sobral Daniela Barreiro Claro


Carregar ppt "Objetos de Negócio CORBA BO Cooperantes Anatomia de um BO Anatomia de um BO cliente/servidor."

Apresentações semelhantes


Anúncios Google