Universidad del Cauca
Facultad de Ingeniería Electrónica y Telecomunicaciones
Departamento de Telemática

Primer Período de 2004
Asignatura: Sistemas Distribuidos
(Electiva)
 
La impartición de este curso está soportada por la plataforma EVA (Entorno Virtual de Aprendizaje), de la Universidad del Cauca, desarrollada en el marco del proyecto E-LANE (European and Latin American New Education), financiado por el programa europeo @LIS (Alianza para la Sociedad de la Información).
Ingresar

Profesores
Objetivo
Modalidad
Intensidad Horaria
Contenido Temático
Prácticas
Bibliografía
Régimen de Evaluación
Horario
Planeación por Clases

  1. PROFESORES
  2. Dr. Ing. Álvaro Rendón Gallón
    Ing. Juan Carlos Corrales M.
    Ing. Oscar Mauricio Caicedo

     

  3. OBJETIVO
  4. Brindar una panorámica amplia de los principios, fundamentos y aplicaciones del procesamiento distribuido basado en estándares abiertos: CORBA y Servicios Web. Al mismo tiempo, mostrar la utilidad de Java en el desarrollo de dichas aplicaciones.

     

  5. MODALIDAD
  6. Teórico-práctico

    El curso se desarrolla mediante clases magistrales y talleres guiados, donde se estudian y ejercitan los conceptos, tecnologías y herramientas involucradas en el desarrollo de Sistemas Distribuidos.

     

  7. INTENSIDAD HORARIA
  8. 4 horas semanales (60 horas semestre)

     

  9. CONTENIDO TEMÁTICO
  1. Introducción al procesamiento distribuido
  2. Evolución de las Arquitecturas de Computación
    Sistemas Distribuidos
    Llamada a Procedimiento Remoto (RPC)
    El Entorno de Computación Distribuida (DCE)
  3. El OMG y la Arquitectura para la Gestión de Objetos (OMA)
  4. El Grupo de Gestión de Objetos (OMG)
    La Arquitectura para la Gestión de Objetos (OMA)
  5. El Lenguaje de Descripción de Interfaces (IDL)
  6. Características del OMG-IDL
    Jerarquía de tipos en IDL
    Ejemplos de interfaz IDL
    Herencia de interfaces
    Proyección al lenguaje de implementación
  7. Programando con Java/CORBA
  8. Invocación de Métodos Remotos (RMI)
    Práctica 1: Aplicación distribuida con Invocación de Métodos Remotos (RMI)
    Implementación de servidores y clientes
    Práctica 2: El entorno de programación de ORBacus/JBuilder - Tarea 1
  9. La Especificación del ORB
  10. La estructura del ORB
     
  11. Interfaz de Invocación Estática (SII)
  12.  
  13. Interfaz de Invocación Dinámica (DII) y Depósito de Interfaces (IFR)
  14.  
  15. Interfaz ORB
  16.  
  17. Referencias de objetos (IOR)
  18.  
  19. El Adaptador de Objetos Portable (POA)
  20.  
  21. El Depósito de Implementaciones (ImR)
  22.  
  23. Esqueletos Estático (SSI) y Dinámico (DSI)
  24. Interoperabilidad en CORBA
     
  25. CORBA 2.0
  26.  
  27. Protocolo General Inter-ORB (GIOP), Protocolo Inter-ORB para Internet (IIOP)
  28.  
  29. CORBA y OLE/COM
  30.  
  31. CORBA y la Web
  32. Estado actual y perspectivas
     
  33. CORBA 3.0
  34.  
  35. Evolución de CORBA
  36.  
  37. Especificaciones en curso
  38. Prácticas
     
  39. Práctica 3: Interfaz de Invocación Estática (SII)
  40.  
  41. Práctica 4: Herencia de Interfaces - Tarea 2
  42.  
  43. Práctica 5: Interfaz de Invocación Dinámica (DII)
  44.  
  45. Práctica 6: Depósito de Implementaciones (ImR)
  46. Servicios, Facilidades e Interfaces de Dominio
  47. CORBAservices
     
  48. Servicio de Nombrado
  49. CORBAfacilities
    CORBAdomains
     
  50. CORBA Telecoms
  51. Práctica 7: Servicio de Nombrado - Tarea 3
  52. Interoperabilidad de Sistemas
  53. Introducción a conceptos de Interconexión, Integración e Interoperación
    Interoperabilidad de Sistemas de Información: Semántica, Distribución, Autonomía y Heterogeneidad
    Arquitecturas para interoperabilidad entre bases de datos
     
  54. Bases de Datos Distribuidas
  55.  
  56. Esquema Global
  57.  
  58. Multi Bases de Datos
  59.  
  60. Bases de Datos Federadas
  61.  
  62. Arquitectura de Sistemas Federados
  63.  
  64. Wrappers y Mediadores
  65. Transformación de Esquemas
     
  66. Modelo de datos
  67.  
  68. Niveles de Abstracción
  69.  
  70. Modelos, Esquemas y Datos
  71.  
  72. Capacidad de Información
  73.  
  74. Funciones
  75.  
  76. Objetivos Operacionales
  77.  
  78. Escenarios para la aplicación de transformación de esquemas
  79. Estrategias de Integración
    Integración de Datos
    Práctica 8: Aplicaciones de Interoperabilidad - Tarea 4
  80. Servicios Web
  81. Introducción a Web Services
    Arquitectura y Tecnología de Web Services
     
  82. Construcción de Arquitecturas de Web Services
  83.  
  84. Desarrollo de Web Services usando SOAP
  85.  
  86. Descripción y Descubrimiento de Web Services
  87. Web Services: Estrategias y Soluciones
     
  88. Introducción a Java Web-Services
  89.  
  90. Desarrollando Web Services con Java
  91. Práctica 9: Implementación de un Web Services - Tarea 5
    Interoperando Web Services
    Práctica 10: Integración de Web Services - Tarea 6
 
  1. BIBLIOGRAFÍA
Referencias generales, Transparencias, Prácticas.
    Referencias Generales

    CORBA:

    1. Álvaro Rendón y Martín Llamas (Eds.). “Tecnologías para Distribución de la Información y el Procesamiento: Internet y CORBA”. ISBN 958-9475-46-9. Programa Iberoamericano CYTED. Editorial Universidad del Cauca. Marzo de 2004.
      Tabla de Contenido
      Raúl Pérez. "Introducción a los Sistemas Distribuidos".
    2. Jon Siegel. "OMG Overview: CORBA and the OMA in Enterprise Computing". Communications of the ACM. Vol. 41, No. 10, October 1998. siegel_pdf.zip.
    3. Michi Henning. "Binding, Migration, and Scalability in CORBA". Communications of the ACM. Vol. 41, No. 10, October 1998. henning.pdf.
    4. Steve Vinoski. "New Features for CORBA 3.0" Communications of the ACM. Vol. 41, No. 10, October 1998. vinoski_pdf.zip.
    5. Steve Vinoski. "CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments". IEEE Communications Magazine. February 1997. vinoski_ps.zip.
    6. Z. Yang and K. Duddy. "CORBA: A Platform for Distributed Object Computing (A State-of-the-Art Report on OMG/CORBA)". ACM Operating System Review. Vol.30, No. 2, Abril 1996. OSR_ps.zip.
    7. Steve Vinoski. "Distributed Object Computing With CORBA". C++ Report, July/August 1993.
    8. OMG Technical Committee Group Homepage Directory. http://www.omg.org/homepages/
    9. OMG. "A Discussion of the Object Management Architecture". January 1997. http://www.omg.org/technology/documents/formal/object_management_architecture.htm .
      Cap. 4 "Reference Model" chp4_pdf.zip.
    10. OMG. "The Common Object Request Broker Architecture (CORBA) Core Specification". Revision 3.0.2, December 2002. http://www.omg.org/technology/documents/formal/corba_iiop.htm.
    11. OMG. "The CORBA Component Model, v3.0". June 2002.
      http://www.omg.org/technology/documents/formal/components.htm.
    12. OMG. "Catalog of OMG CORBAservices Specifications". Septiembre 2003. http://www.omg.org/technology/documents/corbaservices_spec_catalog.htm.
    13. OMG. "Naming Service Specification" Version 1.2. OMG Document formal/2002-09-02. September 2002. http://www.omg.org/technology/documents/formal/naming_service.htm.
    14. OMG. "Catalog of OMG CORBAfacilities Specifications". July 2002. http://www.omg.org/technology/documents/corbafacilities_spec_catalog.htm.
    15. OMG. "Catalog of OMG Domain Specifications". December 2003.
      http://www.omg.org/technology/documents/domain_spec_catalog.htm.
    16. OMG Telecommunication Domain Task Force. http://telecom.omg.org/
    17. OMG. "CORBA TC Interworking and SCCP Inter-ORB Protocol Specification". OMG Document formal/2001-01-01. January 2001. 01-01-01_pdf.zip.
    18. Robert Orfali. "Instant CORBA". John Wiley & Sons. 1997.
    19. Doug Pedrick (Editor), et al. "Programming With Visibroker: A Developer's Guide to Visibroker for Java". John Wiley & Sons. 1998.
    20. Sean Baker. "Corba Distributed Objects: Using Orbix". Addison-Wesley. 1997.
    21. Jon Siegel. "CORBA Programming and Fundamentals". John Wiley & Sons. 1996.
    22. Grupo de Ingeniería Telemática. "Enlaces CORBA". Página Web Área de Sistemas Distribuidos. 2000. http://git.unicauca.edu.co/sek/.

    Interoperabilidad:

    1. Y. Breitbart and H. Garcia-Molina and W. Litwin and others. "Final Report of the Workshop on Multidatabases and Semantic Interoperability". Technical Report, Cosi Workshop, Tulsa,OK, November 1990.
    2. B. Benatallah, Q. Sheng, M. Dumas. "The Self-Serv Environment for Web Services Composition". IEEE Internet Computing. January-February 2003.
    3. F. Gingras and L. V. S. Lakshmanan. "nD-SQL: a multi-dimensional language for interoperability and Olap". Proc. VLDB, New York, 1998.
    4. P. Rodriguez-Gianolli and J. Mylopoulos. "A Semantic Approach to XML-Based Data Integration". Proceedings of the 20th. International Conference on Conceptual Modelling (ER), Yokohama, Japan, November 2001.
    5. G: Wiederhold. "Mediators in the architecture of future information systems". IEEE Computers, Vol 25, No. 3, pp 38-49, March 1992.
    6. C. Wyss, F. D. Wyss and V.Gucht. "Augmenting SQL with Dynamic Restructuring to Support Interoperability in a Relational Federation". Proceedings of the 4th Workshop on Engineering Federated Information Systems EFIS 2001, October 9-10, 2001, Berlin, Germany.
    7. R. dos Santos Mello, C. Heuser. "A Rule-Based Conversion of a DTD to a Conceptual Schema". Lecture Notes in Computer Science, Vol. 2224, 2001.
    8. J. Miller, E. Ioannidis, R Ramakrishnan. "Schema Equivalence in Heterogeneous Systems: Bridging Theory and Practice" (Extended Abstract). EDBT 1994: 73-80.
    9. P. McBrien, A. Poulovassilis. "Schema Evolution in Heterogeneous Database Architectures, A Schema Transformation Approach". CAISE 2002.

    Servicios Web/SOAP:

    1. R. Nagappan, R. Skoczylas, R. Patel Sriganesh . "Developing Java Web Services". ISBN:0471236403. 2003.
    2. SkillSoft Corporation. "Building Web Services with Java". 2002.
    3. Martin Gudgin et al. “Simple Object Access Protocol (SOAP) Version 1.2 Part 1: Messaging Framework”, World Wide Web Consortium, W3C Recommendation, 24 June 2003. http://www.w3.org/TR/SOAP.
    4. Tom Clements. "Overview of SOAP". UserLand Software. Enero de 2002. http://developer.java.sun.com/developer/technicalArticles/xml/webservices/.

    Transparencias de Clase

    1. Introducción al procesamiento distribuido: IntroSD.pdf.
    2. La Arquitectura para la Gestión de Objetos (OMA): OMA.pdf.
    3. El Lenguaje de Descripción de Interfaces (IDL): IDL.pdf.
    4. El Mediador de Peticiones a Objetos (ORB): ORB.pdf.
    5. Servicios, Facilidades e Interfaces de Dominio: CServFacDom.pdf.

    Prácticas

    1. Práctica 1: Invocación Remota de Métodos (RMI). Guía, Transparencias.
    2. Práctica 2: El entorno de programación de ORBacus/JBuilder. Guía, Transparencias.
      ORBacus: instalador, manual.
    3. Práctica 3: Interfaz de Invocación Estática (SII). Guía, Transparencias.
    4. Práctica 4: Herencia de Interfaces. Guía, Transparencias, Tarea 2.
    5. Práctica 5: Interfaz de Invocación Dinámica (DII). Guía, Transparencias.
    6. Práctica 6: Depósito de Implementaciones (ImR). Guía, Transparencias.
    7. Práctica 7: Servicio de Nombrado. Guía, Transparencias, Tarea 3.
 
  1. RÉGIMEN DE EVALUACIÓN
  2.  
     
    Ítem
    Descripción
    Valor
    1
    Teoría 30%
    2
    Tareas (6) 50%
    3
    Participación en los foros 20%
     

    Listado de Calificaciones

     

  1. HORARIO

Lunes
Martes
Miércoles
Jueves
Viernes
07





08


Atención Estudiantes
Oficina 418







09
10









11
Sistemas Distribuidos
Sala Audiovisuales

12

13

14








Sistemas Distribuidos
Sala Audiovisuales

15
16










17

  1. PLANEACIÓN POR CLASES
Jornada
Fecha
Tema
1 02-Feb-2004 Presentación del curso
Introducción al procesamiento distribuido
2 06-Feb-2004 Introducción al procesamiento distribuido
3 09-Feb-2004 El OMG y la Arquitectura para la Gestión de Objetos (OMA)
4 13-Feb-2004 El Lenguaje de Descripción de Interfaces (IDL)
5 16-Feb-2004 Práctica 1: Invocación Remota de Métodos (RMI)
6 20-Feb-2004 Práctica 2: El entorno de programación de ORBacus/JBuilder
7 23-Feb-2004 La Especificación del ORB
8 27-Feb-2004 La Especificación del ORB
9 08-Mar-2004 Práctica 3: Interfaz de Invocación Estática (SII)
10 12-Mar-2004 Práctica 4: Herencia de Interfaces
11 15-Mar-2004 Práctica 5: Interfaz de Invocación Dinámica (DII)
12 19-Mar-2004 Práctica 6: Depósito de Implementaciones (ImR)
13 26-Mar-2004 Servicios, Facilidades e Interfaces de Dominio
14 29-Mar-2004 Servicios, Facilidades e Interfaces de Dominio
15 02-Abr-2004 Práctica 7: Servicio de Nombrado
16 19-Abr-2004 Interoperabilidad de Sistemas. Definiciones
17 23-Abr-2004 Arquitecturas para interoperabilidad entre bases de datos
18 26-Abr-2004 Transformación de Esquemas
19 30-Abr-2004 Estrategias de Integración
20 03-May-2004 Integración de Datos
21 07-May-2004 Práctica 8: Aplicaciones de Interoperabilidad
22 10-May-2004 Servicios Web. Introducción
23 14-May-2004 Arquitectura y Tecnología de Web Services
24 17-May-2004 Web Services: Estrategias y Soluciones
25 21-May-2004 Práctica 9: Implementación de un Web Services
26 28-May-2004 Interoperando Web Services
27 31-May-2004 Práctica 10: Integración de Web Services

Curso Sistemas Distribuidos/ Alvaro Rendón Gallón