uml

Upload: atecub2

Post on 06-Jan-2016

216 views

Category:

Documents


0 download

DESCRIPTION

UML1

TRANSCRIPT

  • Sistemas Distribudos Baseados em Componentes

    Fabio Kon

    Departamento de Cincia da ComputaoIME - USP

    4 / abril / 2001

    ECOOP'99 OOOSW

    4 / abril / 2001

    Contedo da PalestraDescrio do contexto e dos problemas

    Resoluo dos problemas

    Aplicaes Prticas

    Trabalho Futuro

    ECOOP'99 OOOSW

    4 / abril / 2001

    ContextoA sociedade moderna exige dos desenvolvedores de softwarea produo de muitos programas em pouco tempoa produo de programas grandes e complexosfuncionamento em diferentes sistemas operacionaisfuncionamento em diferentes arquiteturas de hardwareSoluo parcial: Tecnologia de ComponentesEnterprise Java BeansActiveX Controls, COMCORBA Component Model

    ECOOP'99 OOOSW

    4 / abril / 2001

    Programao Baseada em Componentes uma extenso da idia de programao orientada a objetosTorna a reutilizao de cdigo mais fcilPossibilita a criao de aplicaes complexasusando interfaces grficasusando interfaces de programao

    ECOOP'99 OOOSW

    4 / abril / 2001

    Problemas de ConfiguraoInstalao e remoo de programas

    Atualizaes de sistema operacionais

    Atualizaes de aplicaes e ferramentas

    Ambientes distribudos ligados Internet

    ECOOP'99 OOOSW

    4 / abril / 2001

    Problemas de AdaptaoComponentes tm requisitos especficosFalha em uma componente pode se alastrar por todo o sistemaReconfigurao dinmica muito difcil

    Causa: no h um gerenciamento apropriado das dependncias dentro do sistema.

    ECOOP'99 OOOSW

    4 / abril / 2001

    Contedo da PalestraDescrio do contexto e dos problemas

    Resoluo dos problemas

    Aplicaes Prticas

    Trabalho Futuro

    ECOOP'99 OOOSW

    4 / abril / 2001

    Mtodo para Gerenciamento de DependnciasLidamos com dois tipos de dependncias:

    1. Pr-requisitos

    2. Dependncias Dinmicas

    ECOOP'99 OOOSW

    4 / abril / 2001

    Pr-requisitosEspecifica o que cada componente necessita:natureza dos recursos de hardwarecapacidade dos recursos de hardwareservios de software (outras componentes)Exemplo de um Cliente de Vdeo:SPARC com alto-falante50% de uma UCP de 400MHzcomponente de software decodificadora de MPEGServio de vdeo no padro CORBA

    ECOOP'99 OOOSW

    4 / abril / 2001

    Simple Prerequisite Description Format (SPDF)# Cliente de vdeo :hardware requirements machine_type SPARC os_name Solaris os_version 2.7 min_ram 5MB optimal_ram 40MB cpu_speed >400MHz cpu_share 50%

    :software requirements Decoder CR:/video/decoders/MPEG VideoServer NS:/local/MPEGVideoServer

    ECOOP'99 OOOSW

    4 / abril / 2001

    Servio de Configurao AutomticaRepositrio de ComponentesAnalisador dePr-requisitosResolvedordePr-requisitosGerenciador deRecursosCacheexecuta aplicaoretorna refernciabusca pr-requisitosbusca componentes

    ECOOP'99 OOOSW

    4 / abril / 2001

    Desempenho do Servio de Configurao Automtica

    ECOOP'99 OOOSW

    4 / abril / 2001

    ComponentConfiguratorGuarda as dependncias dinmicas

    Permite inspeo e reconfigurao

    Pode ser modificado sob medida (customized) atravs de herana

    Separao clara de aspectos

    ECOOP'99 OOOSW

    4 / abril / 2001

    Representao Explcita de DependnciasAjuda a dar suporte para:tolerncia a falhasreconfigurao dinmicaadaptao dinmicabalanceamento de cargacomputao mvel

    ECOOP'99 OOOSW

    4 / abril / 2001

    Exemplo: Adaptaes Dinmicas em um Navegador Web

    ECOOP'99 OOOSW

    4 / abril / 2001

    Gerenciamento de Sistemas de Componentes em grande escala: Sistema de Agentes MveisApropriado para sistemas de grande escala

    til paradistribuio de componentesreconfigurao dinmicainspeo

    ECOOP'99 OOOSW

    4 / abril / 2001

    Contedo da PalestraDescrio do contexto e dos problemas

    Resoluo dos problemas

    Aplicaes Prticas

    Trabalho Futuro

    ECOOP'99 OOOSW

    4 / abril / 2001

    AplicaesSistema de Distribuio de Multimdia

    dynamicTAO, ORB CORBA Reflexivo

    Gaia, sistema para computao ubqua

    SIDAM, sistema para controle de trfego

    Computao Musical

    ECOOP'99 OOOSW

    4 / abril / 2001

    Sistema de Distribuio de Multimdia em Grande EscalaObjetivo: enviar fluxos multimdia para milhes de usurios simultneos atravs da Internet.Pode ser utilizado para Envio ao-vivo de udio, vdeo, texto, HTML Envio de vdeos pr-gravados udio/Videoconferncia

    Mtodo: rede de grande-rea de Refletores

    ECOOP'99 OOOSW

    4 / abril / 2001

    Rede de Refletores

    ECOOP'99 OOOSW

    4 / abril / 2001

    Experincia com o SistemaMisso Mars Pathfinder NASA JPL (1998)30 refletores em 4 continentesApplet decodifica vdeo e udio p/ cliente1.2M de sesses de vdeo / udio24h/dia durante 3 meses

    Encontramos erros enquanto o sistema rodava

    ECOOP'99 OOOSW

    4 / abril / 2001

    Aplicando a ArquiteturaPr-requisitos e Sistema de Configurao Automtica :Usados para carregar e configurar as componentes de cada RefletorReserva de memria, UCP, e rede (no implementados)

    ComponentConfigurators :representam dependncias intra- e inter-Refletoresdo suporte a tolerncia a falhas

    ECOOP'99 OOOSW

    4 / abril / 2001

    Reconfigurao Dinmica para Tolerncia a Falhas

    ECOOP'99 OOOSW

    4 / abril / 2001

    Impacto da Reconfigurao na Qualidade do Servio

    ECOOP'99 OOOSW

    4 / abril / 2001

    Aplicao destas tcnicas no Projeto SIDAMPSIT: Prottipo de Sistema de Informaes de TrnsitoComponentes do sistema so objetos Java distribudos em uma rede metropolitanaComunicao feita atravs de Java RMIatualizao de dados: sensores e funcionrios da CETconsulta: populao, CET, ambulncias, ...

    ECOOP'99 OOOSW

    4 / abril / 2001

    Gerenciamento de Dependncias no PSITServidores de Informao (sobre trnsito)Servidores de Localizao (dizem qual SI deve ser utilizado)ComponentConfigurators guardam relaes de dependncias entre SLs e SisGuardam tambm alternativasSistema desencadeia reconfigurao automaticamente quando detecta queda de SIs

    ECOOP'99 OOOSW

    4 / abril / 2001

    PSIT:Trabalho em AndamentoReconfigurao automtica quando da falha de qualquer componente do sistema.Criao e destruio de rplicas de SIs e SLs automaticamente de acordo com a carga.Migrao de Componentes de acordo com carga e localizao fsica.

    Objetivo: oferecer Servio de Informaes sobre trnsito sempre disponvel e com resposta rpida.

    ECOOP'99 OOOSW

    4 / abril / 2001

    Contedo da PalestraDescrio do contexto e dos problemas

    Resoluo dos problemas

    Aplicaes Prticas

    Trabalho Futuro

    ECOOP'99 OOOSW

    4 / abril / 2001

    Trabalho Futuro:Pr-RequisitosInvestigar linguagens ou formatos mais elaborados para especificao de prerequisitos (possivelmente com XML).

    Gerenciamento de verses em sistemas distribudos baseados em componentes.

    ECOOP'99 OOOSW

    4 / abril / 2001

    Trabalho Futuro:ComponentConfiguratorCriar bibliotecas reutilizveis de configuradores de componentes parareconfigurao dinmica etolerncia a falhas.

    ECOOP'99 OOOSW

    4 / abril / 2001

    Trabalho Futuro:Computao MusicalAplicao centralizada:Seqnciador baseado em componentes (ferramenta para composio musical)

    Aplicaes distribudas:Analisador e Gerenciador de Acstica de SalasSistema de Agentes Mveis Musicais (ambiente para composio e execuo musical)

    ECOOP'99 OOOSW

    4 / abril / 2001

    Trabalho Futuro:Middleware ReflexivoClienteServidorMiddlewareInterface parareconfiguraodinmicaProttipos: U. Illinois: dynamicTAO, LegORB, UIC Lancaster: OpenORB USP e PUC-RJ: ???

    ECOOP'99 OOOSW

    4 / abril / 2001

    FIMPerguntas?

    ECOOP'99 OOOSW

    An example of the video client thing using SPDF. We could have used other formats or languages to represent prerequisites. We just defined this SPDF because it made things easier and enabled us to prototype the idea.

    To make this example more interesting, I added the Decoder line, which our current SPDF parser can understand and the VideoServer line, which our current SPDF parser cant yet understand. In the first case, the component is fetched from the component repository. In the second case, the AutoConfig service should simply resolve the name /local/MPEGVideoServer from the Name Service and store the IOR it gets from the binding in the VideoServer hook of the video client component configurator. This is not implemented yet but I put it here because its part of the model. BTW, this is trivial to implement using our NSBroker. It would require less than 20 lines of code.