SEMANA1-TOPIII-TEO.pdf

29
1 ING. YIM ISAIAS APESTEGUI FLORENTINO

Transcript of SEMANA1-TOPIII-TEO.pdf

Page 1: SEMANA1-TOPIII-TEO.pdf

1 ING. YIM ISAIAS APESTEGUI FLORENTINO

Page 2: SEMANA1-TOPIII-TEO.pdf

2 ING. YIM ISAIAS APESTEGUI FLORENTINO

PARTE I:INTRODUCCIÓN A LAS TECNOLOGÍAS

DE COMPUTACIÓN

Hace unos cuantos años los equipos que

trabajaban aislados unos de otros, que se basaban

en aplicaciones de software que cumplirían un

propósito específico.

Page 3: SEMANA1-TOPIII-TEO.pdf

3 ING. YIM ISAIAS APESTEGUI FLORENTINO

Compartir algunos datos entre estos sistemas era

escaso y de hacerse se hacía por los métodos

rústicos del momento.

Se llevaba físicamente los medios de

almacenamiento como tarjetas, cintas discos de un

sistema a otro.

Page 4: SEMANA1-TOPIII-TEO.pdf

4 ING. YIM ISAIAS APESTEGUI FLORENTINO

Con la industria militar, el siguiente paso sería

conectar los anteriores sistemas a través de las

redes bajo la configuración de los distintos

protocolos de comunicación.

Unos protocolos se estandarizaron.

Las diferentes configuraciones que se hacían

dependerían del costo de inversión que

pretendería hacer.

Page 5: SEMANA1-TOPIII-TEO.pdf

5 ING. YIM ISAIAS APESTEGUI FLORENTINO

De la mano de la tecnología física de información

también fueron creciendo los distintos lenguajes

que gestionarían dicha maquinaria.

1.- Programación estructurada

2.- Programación Modular y

3.- Programación orientada a objetos.

Page 6: SEMANA1-TOPIII-TEO.pdf

6 ING. YIM ISAIAS APESTEGUI FLORENTINO

Surge la herencia de tecnología

Sin embargo aún hoy con métodos de

programación orientada a objetos, no se ha

logrado el objetivo pleno:

Que a bajos costos se obtenga varios componentes

software que se integren para varias plataformas y

tecnologías, en un solo sistema complejo.

Page 7: SEMANA1-TOPIII-TEO.pdf

7 ING. YIM ISAIAS APESTEGUI FLORENTINO

En la búsqueda de encontrar el mecanismo de

cubrir el estándar de interfaces que sean abiertas a

varios sistemas, se destacan:

Microsoft COM+, COM, DCOM Sun Microsystems, Java Beans Object Group CORBA (Common

Request Broker Architecture)

Page 8: SEMANA1-TOPIII-TEO.pdf

8 ING. YIM ISAIAS APESTEGUI FLORENTINO

CORBA, ofrece servicios de interconexión e

interoperabilidad de objetos, servicios conocidos

como middleware, desde sus comienzos CORBA se

plantea como objetivo la interconexión abierta de

distintos lenguajes, plataformas e

implementaciones, asegurando los estándares

necesarios para lograr interoperabilidad en todos

los niveles del mercado de objetos.

Page 9: SEMANA1-TOPIII-TEO.pdf

9 ING. YIM ISAIAS APESTEGUI FLORENTINO

CORBA está constituido en esencia por tres

componentes:

El primero es un conjunto de interfaces de

invocación.

El segundo el Object request broker (ORB)

El tercero un conjunto de adaptador de objetos

(Objects adapters).

Page 10: SEMANA1-TOPIII-TEO.pdf

10 ING. YIM ISAIAS APESTEGUI FLORENTINO

Para un ambiente de sistemas donde actúe CORBA,

se tendrá que para cada implementación de objeto,

se define una interface a través de la especificación

normalizada conocida como IDL (Interface

Definition Language) : que es suma un archivo con

el equivalente a un archivo de cabecera en C++, en

el que se definen las clases y las propiedades

(variables de la clase) y métodos de esas clases.

Page 11: SEMANA1-TOPIII-TEO.pdf

11 ING. YIM ISAIAS APESTEGUI FLORENTINO

IDL no es un lenguaje para implementar

interfaces CORBA, sino que es un lenguaje que

llega a definir interfaces CORBA

Similar a un archivo de cabecera de C++, donde,

normalmente, no se incluye ninguna

implementación, sino simplemente definiciones.

El archivo IDL es el que establece el contrato de

comunicación entre los objetos y las aplicaciones

que hagan uso de ellos.

Page 12: SEMANA1-TOPIII-TEO.pdf

12 ING. YIM ISAIAS APESTEGUI FLORENTINO

PARTE II

ESTRUCTURA DE CORBA

Page 13: SEMANA1-TOPIII-TEO.pdf

13 ING. YIM ISAIAS APESTEGUI FLORENTINO

Corba llega así a proveer más allá de los servicios

middleware, llegando con una infraestructura

framework para construir aplicaciones orientadas

a objetos.

De esta manera las interfaces definen los servicios

que prestan los objetos, luego el ORB se encarga de

la localización e invocación de los métodos sobre

los objetos y el object adapter es aquel que liga la

Page 14: SEMANA1-TOPIII-TEO.pdf

14 ING. YIM ISAIAS APESTEGUI FLORENTINO

implementación del objeto con el ORB.

Como una introducción a lo que en esencia es

CORBA se tendría que esta es un Middleware, o

marco de trabajo estándar y abierto de objetos

distribuidos que permite a los componentes en la

red ínter operar en un ambiente común sin

importar el lenguaje de desarrollo sistema

operacional, tipo de red, responde así a la

necesidad de interoperabilidad ante la gran

Page 15: SEMANA1-TOPIII-TEO.pdf

15 ING. YIM ISAIAS APESTEGUI FLORENTINO

proliferación de productos en el

mercado hardware y software.

CORBA automatiza muchas tareas comunes y

“pesadas” de programación de redes tales como

registro, localización y activación de objetos;

manejo de errores y excepciones; codificación y

decodificación de parámetros, y protocolo de

transmisión.

Page 16: SEMANA1-TOPIII-TEO.pdf

16 ING. YIM ISAIAS APESTEGUI FLORENTINO

Para un ambiente de sistemas donde actúe CORBA,

se tendrá que para cada implementación de objeto,

se define una interface a través de la especificación

normalizada conocida como IDL (Interface

Definition Language) : que es suma un archivo con

Page 17: SEMANA1-TOPIII-TEO.pdf

17 ING. YIM ISAIAS APESTEGUI FLORENTINO

el equivalente a un archivo de cabecera en C++, en

el que se definen las clases y las propiedades

(variables de la clase) y métodos de esas clases.

IDL no es un lenguaje para implementar

interfaces CORBA, sino que es un lenguaje que

llega a definir interfaces CORBA

Page 18: SEMANA1-TOPIII-TEO.pdf

18 ING. YIM ISAIAS APESTEGUI FLORENTINO

Similar a un archivo de cabecera de C++, donde,

normalmente, no se incluye ninguna

implementación, sino simplemente definiciones.

El archivo IDL es el que establece el contrato de

comunicación entre los objetos y las aplicaciones

que hagan uso de ellos.

Así, este archivo es lo único que necesita una

aplicación cliente para acceder a los objetos, pues a

partir de ella podrá generar los cabos y

Page 19: SEMANA1-TOPIII-TEO.pdf

19 ING. YIM ISAIAS APESTEGUI FLORENTINO

esqueletos para el lenguaje que vaya a ser usado

para la implementación de los clientes.

El cliente no necesitará de unas librerías

específicas desarrolladas para acceder a los

objetos, sino que simplemente necesitará la

definición de las interfaces implementadas por

nuestros objetos.

CORBA se encarga del resto, a través del IDL en

forma Estática al momento de compilación, o en

Page 20: SEMANA1-TOPIII-TEO.pdf

20 ING. YIM ISAIAS APESTEGUI FLORENTINO

forma Dinámica al momento de ejecución un

Cliente que requiera el servicio de una

Implementación de Objeto, podrá ser ejecutado.

Las invocaciones a métodos remotos son enviados

por los clientes llamando objetos locales llamados

“Stubs”, el cual intercepta dichas invocaciones y

continúa el proceso de llevar y retornar

automáticamente dicha invocación.

Page 21: SEMANA1-TOPIII-TEO.pdf

21 ING. YIM ISAIAS APESTEGUI FLORENTINO

La Implementación del objeto, no tiene que

conocer el mecanismo por el cual un Cliente le ha

invocado un servicio.

CORBA está fundamentado en dos modelos:

Un modelo de Objetos, el cual agrega todas las

características de la teoría orientada a objetos

como lo son los tipos de datos, abstracción,

herencia polimorfismo, además se fundamenta en

Page 22: SEMANA1-TOPIII-TEO.pdf

22 ING. YIM ISAIAS APESTEGUI FLORENTINO

un modelo de referencia o arquitectura conocida

como Object Management Architecture., que es

una entidad sin ánimo de lucro que desarrolla

especificaciones independientes de cualquier

proveedor en la industria del software; y

actualmente esta entidad tiene más de 800

miembros.

La OMG se perfila para llegar a establecer a CORBA

como el “//Middleware que está en todas partes

Page 23: SEMANA1-TOPIII-TEO.pdf

23 ING. YIM ISAIAS APESTEGUI FLORENTINO

de los sistemas del mundo//” a través de sus

especificaciones CORBA/IIOP.

La OMG está estructurado en tres grandes frentes:

El Comité de Plataforma Tecnológica (PTC), el

Comité de Dominio Tecnológico (DTC) y la Junta

de Arquitectura (Architecture Board).

Dentro de los Comités Técnicos y Junta de

Arquitectura, trabajan las Fuerzas de Trabajo,

Page 24: SEMANA1-TOPIII-TEO.pdf

24 ING. YIM ISAIAS APESTEGUI FLORENTINO

Grupos de Interés especial y Grupos de Trabajo

quienes llevan a cabo los procesos de adopción

tecnológico de la OMG.

El modelo de referencia de OMA está compuesto

por los elementos de:

1.)Object Request Broker – ORB, que representa

el medio o bus de objetos a través del cual se

comunican todos los objetos participantes en el

Page 25: SEMANA1-TOPIII-TEO.pdf

25 ING. YIM ISAIAS APESTEGUI FLORENTINO

sistema, es el núcleo de comunicaciones del

estándar, provee la infraestructura que permite a

objetos comunicarse, independiente de la

plataforma específica y técnicas que se usen para

implementar el objeto.

2.) Objetos de Servicio - CORBAServices:

conjunto de objetos genéricos, que se usan como

soporte para tareas comunes pr programas

distribuidos. 3.) Objetos de Dominio –

CORBADomain : conjunto de objetos que son

Page 26: SEMANA1-TOPIII-TEO.pdf

26 ING. YIM ISAIAS APESTEGUI FLORENTINO

comunes y estándares dentro de un dominio o

mercado de aplicación.

4.) Facilidades Comunes - CORBAFacilities:

conjunto de objetos orientados hacia las

aplicaciones de usuario final como Administración

de datos, aplicaciones, interfaces de usuario.

5.) Objetos de Aplicación: objetos de aplicación

desarrollados por los programadores.

Page 27: SEMANA1-TOPIII-TEO.pdf

27 ING. YIM ISAIAS APESTEGUI FLORENTINO

En suma CORBA es una tecnología que oculta la

programación a bajo nivel de aplicaciones

distribuidas, de tal forma que el programador no

se tiene que ocupar de tratar con sockets, flujos de

datos, paquetes, sesiones etc. CORBA oculta todos

estos detalles de bajo nivel.

Page 28: SEMANA1-TOPIII-TEO.pdf

28 ING. YIM ISAIAS APESTEGUI FLORENTINO

No obstante CORBA también brinda al

programador una tecnología orientada objetos, las

funciones y los datos se agrupan en objetos, estos

objetos pueden estar en diferentes máquinas, pero

el programador accederá a ellos a través de

funciones normales dentro de su programa.

En un sentido general CORBA "envuelve" el código

escrito en otro lenguaje en un paquete que

Page 29: SEMANA1-TOPIII-TEO.pdf

29 ING. YIM ISAIAS APESTEGUI FLORENTINO

contiene información adicional sobre las

capacidades del código que contiene, y sobre cómo

llamar a sus métodos. Los objetos que resultan

pueden entonces ser invocados desde otro

programa u objeto CORBA desde la red.

En este sentido CORBA se puede considerar como

un formato de documentación legible por la

máquina.