Middleware
Slides preparados
por Bosco
2022.1
Agenda
- Introdução
- Objetivo
- Definições
- Camadas
- Exemplos
2
Introdução
- Middleware
- Conceito originado na área de Sistemas Distribuídos
- Como prover comunicação de forma homogênea em
ambientes heterogêneos?
- Seu conceito base é a abstração
3
Objetivo
- Middleware
- Criar camada intermediária que abstraia as chamadas
de serviços de baixo-nível
- Unificar a forma de acesso da aplicação para as
camadas inferiores
- Possibilitar a reutilização dessa camada intermediária
em diferentes cenários
4
Middleware
- Definições
Camada de software intermediária entre as aplicações e o sistema
operacional que abstrai a heterogeneidade de software e hardware.
[Geihs, 2001]
Software que auxilia uma aplicação a interagir ou se comunicar com
outras aplicações, hardware, e/ou sistemas operacionais.
[Bishop, 2002]
5
Camadas de Middleware
6
Camadas
de
Middleware
Adaptado de [Sadjadi e Mckinley, 2003]
Camadas de Middleware
- Infraestrutura de host
- API de alto nível que encapsula a heterogeneidade de dispositivos
de hardware, sistema operacional e protocolos de rede
- Distribuição
- Nível mais alto que a de infraestrutura, direcionada ao
desenvolvimento das aplicações que usarão o middleware
- Serviços Comuns
- Provê funcionalidades recorrentes na maioria dos sistemas, ex:
persistência, segurança e tolerância a faltas
- Serviços de Domínio
- Provê funcionalidades recorrentes em diferentes domínios, ex:
aplicações de controle de estoque e aplicações médicas
7
Exemplos de Middleware
- Tecnologias de acesso a banco de dados
- ODBC (Open DataBase Connectors)
- Java’s database connectivity API: JDBC
- Computação remota
- RMI (Java Remote Method Invocation)
- Ambientes de computação distribuída
- Common Object Request Broker Architecture (CORBA)
- Distributed Component Object Model (DCOM)
8
Exemplo de Middleware (GREat)
- AdaptiveRME
- Um Middleware Adaptativo para o Desenvolvimento de Software
Móvel e Ubíquo
- Desenvolvido em J2ME
- Principal objetivo é prover adaptação dinâmica
- Transparência para o desenvolvedor quanto a localização de
serviços e comunicação
- Dispositivos Móveis
9
Referências
- Geihs, K. (2001). Middleware Challenges Ahead. IEEE Computer
Magazine, 34 ed., v. 6, p. 24-31, jun. 2001.
- Bishop, T. A., and Karne, R. K., 2003, A Survey of Middleware, 18th
International Conference on Computers and Their Applications, March
26-28, 2003, Honolulu, Hawaii, U.S.A.
- Sadjadi, S. M.; Mckinley, P. K. (2003). A survey of adaptive middleware.
Relatório Técnico MSU-CSE-03-35, Computer Science and
Engineering. Michigan, 2003.
- Rocha, L. S., 2007, AdaptiveRME e AspectCompose: Um Middleware
Adaptativo e um Processo de Composição Orientado a Aspectos para
o Desenvolvimento de Software Móvel e Ubíquo, Dissertação de M.Sc.,
Departamento de Computação,Universidade Federal do Ceará (UFC),
Ceará, Brasil.
10

Aula 16B - Middlewarecienciacomputac.pdf

  • 1.
  • 2.
    Agenda - Introdução - Objetivo -Definições - Camadas - Exemplos 2
  • 3.
    Introdução - Middleware - Conceitooriginado na área de Sistemas Distribuídos - Como prover comunicação de forma homogênea em ambientes heterogêneos? - Seu conceito base é a abstração 3
  • 4.
    Objetivo - Middleware - Criarcamada intermediária que abstraia as chamadas de serviços de baixo-nível - Unificar a forma de acesso da aplicação para as camadas inferiores - Possibilitar a reutilização dessa camada intermediária em diferentes cenários 4
  • 5.
    Middleware - Definições Camada desoftware intermediária entre as aplicações e o sistema operacional que abstrai a heterogeneidade de software e hardware. [Geihs, 2001] Software que auxilia uma aplicação a interagir ou se comunicar com outras aplicações, hardware, e/ou sistemas operacionais. [Bishop, 2002] 5
  • 6.
  • 7.
    Camadas de Middleware -Infraestrutura de host - API de alto nível que encapsula a heterogeneidade de dispositivos de hardware, sistema operacional e protocolos de rede - Distribuição - Nível mais alto que a de infraestrutura, direcionada ao desenvolvimento das aplicações que usarão o middleware - Serviços Comuns - Provê funcionalidades recorrentes na maioria dos sistemas, ex: persistência, segurança e tolerância a faltas - Serviços de Domínio - Provê funcionalidades recorrentes em diferentes domínios, ex: aplicações de controle de estoque e aplicações médicas 7
  • 8.
    Exemplos de Middleware -Tecnologias de acesso a banco de dados - ODBC (Open DataBase Connectors) - Java’s database connectivity API: JDBC - Computação remota - RMI (Java Remote Method Invocation) - Ambientes de computação distribuída - Common Object Request Broker Architecture (CORBA) - Distributed Component Object Model (DCOM) 8
  • 9.
    Exemplo de Middleware(GREat) - AdaptiveRME - Um Middleware Adaptativo para o Desenvolvimento de Software Móvel e Ubíquo - Desenvolvido em J2ME - Principal objetivo é prover adaptação dinâmica - Transparência para o desenvolvedor quanto a localização de serviços e comunicação - Dispositivos Móveis 9
  • 10.
    Referências - Geihs, K.(2001). Middleware Challenges Ahead. IEEE Computer Magazine, 34 ed., v. 6, p. 24-31, jun. 2001. - Bishop, T. A., and Karne, R. K., 2003, A Survey of Middleware, 18th International Conference on Computers and Their Applications, March 26-28, 2003, Honolulu, Hawaii, U.S.A. - Sadjadi, S. M.; Mckinley, P. K. (2003). A survey of adaptive middleware. Relatório Técnico MSU-CSE-03-35, Computer Science and Engineering. Michigan, 2003. - Rocha, L. S., 2007, AdaptiveRME e AspectCompose: Um Middleware Adaptativo e um Processo de Composição Orientado a Aspectos para o Desenvolvimento de Software Móvel e Ubíquo, Dissertação de M.Sc., Departamento de Computação,Universidade Federal do Ceará (UFC), Ceará, Brasil. 10