Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERIA PROYECTO CURRICULAR MAESTRÍA EN CIENCIAS DE LA INFORMACIÓN Y COMUNICACIONES SYLLABUS Sistemas Distribuidos NOMBRE DEL DOCENTE: José Antonio Valero Medina ESPACIO ACADÉMICO (Asignatura): _____________________________________________ Obligatorio (X) : Básico ( ) Complementario ( ) Electivo ( ) : Intrínsecas ( ) Extrínsecas (X) CÓDIGO:29501106 NUMERO DE ESTUDIANTES: GRUPO: NÚMERO DE CREDITOS:3 TIPO DE CURSO: TEÓRICO PRACTICO TEO-PRAC: Alternativas metodológicas: Clase Magistral ( X ), Seminario ( X ), Seminario – Taller ( ), Taller ( X ), Prácticas ( ), Proyectos tutoriados ( ), Otro: _____________________ HORARIO: DIA HORAS SALON 2 4 I. JUSTIFICACIÓN DEL ESPACIO ACADÉMICO (El Por Qué?) En los actuales momentos, los sistemas distribuidos, particularmente la Web y otras aplicaciones y servicios basados en Internet, son de un interés e importancia sin precedentes. El propósito del curso es proporcionar los principios que dan soporte al diseño de sistemas distribuidos de forma que los estudiantes estén en capacidad de evaluar sistemas distribuidos existentes o diseñar unos nuevos. Las técnicas relacionadas con sistemas distribuidos desarrolladas durante las últimas tres décadas, tales como la comunicación entre procesos, la invocación remota, seguridad, replicación de datos y mecanismos para el manejo de transacciones distribuidas proporcionan la infraestructura que da soporte a las aplicaciones que integran los recursos de hardware y de software que se tienen disponibles en un ambiente de Red. X El estudiante estará en capacidad de abordar la gran mayoría de los problemas encontrados en la computación distribuida, partiendo del conocimiento de los aspectos básicos fundamentales identificando los tópicos de diseño relevantes y las soluciones hasta ahora propuestas. Para desempeñarse efectivamente como desarrollador de tecnología en sistemas distribuidos, para el estudiante resulta vital tener un conocimiento de las técnicas básicas disponibles en esta área. La habilidad que presentan los sistemas distribuidos de integrar diferentes recursos de hardware y software débilmente acoplados, permitirá a los estudiantes, que aprendan a utilizar, analizar, sopesar y determinar los criterios para el manejo de problemas, en los cuales esté implicado el empleo de diversos recursos de hardware y software disponibles en un ambiente de red. Se requiere que los estudiantes que ingresen a este espacio académico deben poseer profundos conocimientos en redes de computadores. II. PROGRAMACION DEL CONTENIDO (El Qué? Enseñar) OBJETIVO GENERAL Al finalizar esta asignatura el estudiante obtendrá un conocimiento sobre los sistemas distribuidos, entendiendo la importancia de cada uno de los aspectos involucrados cuando se contempla el uso de una arquitectura de hardware y de software distribuidos, aprendiendo de los posibles errores y optimizando los procesos, con el fin de manejar problemas específicos que requieren el soporte de esta arquitectura. El estudiante comprenderá los sistemas distribuidos como un entorno fundamental, que permite la implementación de soluciones en un ambiente en el que se requiere garantizar el uso compartido pero controlado de recursos de hardware y software. Al finalizar el semestre los estudiantes tendrán claridad acerca de las aplicaciones que en el ámbito de los sistemas distribuidos, se pueden desarrollar analizando una arquitectura propuesta para la implementación basada en la computación GRID. OBJETIVOS ESPECÍFICOS Proporcionar al estudiante un conocimiento de las técnicas básicas disponibles en sistemas computacionales distribuidos con el propósito de que pueda desempeñarse efectivamente como desarrollador de esta clase de tecnología. Enseñar a los estudiantes a aprender a utilizar, analizar, sopesar y determinar los criterios para el manejo de problemas, en los cuales esté implicado el empleo de diversos recursos de hardware y software disponibles en un ambiente de red aprovechando la habilidad que presentan los sistemas distribuidos de integrar diferentes recursos de hardware y software débilmente acoplados. Transmitir al estudiante un conocimiento sobre los sistemas distribuidos, de forma que entienda la importancia de cada uno de los aspectos involucrados cuando se contempla el uso de una arquitectura de hardware y de software distribuidos, aprendiendo de los posibles errores y optimizando los procesos, con el fin de manejar problemas específicos que requieren el soporte de esta arquitectura. Lograr que el estudiante comprenda los sistemas distribuidos como un entorno fundamental, que permite la implementación de soluciones en un ambiente en el que se requiere garantizar el uso compartido pero controlado de recursos de hardware y software. Hacer claridad acerca de las aplicaciones que en el ámbito de los sistemas distribuidos, se pueden desarrollar analizando una arquitectura propuesta para la implementación basada en la computación GRID. COMPETENCIAS DE FORMACIÓN: Al finalizar este espacio académico, el estudiante estará en capacidad de: Analizar, diseñar, implementar e implantar soluciones que requieran el empleo de la tecnología de los sistemas distribuidos, involucrando la garantía de los diferentes niveles de transparencia. Evaluar si una arquitectura propuesta reúne los requisitos necesarios para poder ser empleada como framework fundamental para dar solución a problemas reales que involucren la integración de diversos recursos computacionales, con criterios de interoperabilidad, extensibilidad y apertura. Formular y dirigir proyectos que impliquen el empleo de los conceptos involucrados con la conformación de mallas computacionales. PROGRAMA SINTÉTICO: Los problemas específicos a los cuales este espacio académico espera dar respuesta se enmarcan dentro de las siguientes preguntas. ¿Existe entornos conceptuales y tecnológicos que apoyen y soporten la ejecución de proyectos en los cuales se vinculen recursos autónomos de fuentes organizacionales diversas? ¿Es posible desarrollar proyectos en los cuales se pueda garantizar el soporte de un sistema de información capaz de gestionar con criterios de transparencia los diversos recursos que se pueden tener disponibles de manera débilmente acoplada? ¿De que arquitecturas conceptuales se puede disponer con el propósito de proponer soluciones a problemas reales de integración e interoperabilidad entre diferentes organizaciones? ¿Existe entornos conceptuales y tecnológicos que apoyen y soporten la ejecución de proyectos en los cuales se vinculen recursos autónomos de diferentes fuentes organizacionales? Este espacio académico contará con los diferentes saberes científicos o técnicos que deben lograrse por medio de las sesiones de trabajo presénciales cooperativas y autónomas reunidos en las unidades programáticas relacionadas a continuación. Unidad 1 Introducción al curso Unidad 2 Fundamentos de sistemas distribuidos Unidad 3 Software de intermediación (Middleware Systems) Unidad 4 Interacción y control distribuido Unidad 5 Computación GRID ( seminario alemán) III. ESTRATEGIAS (El Cómo?) Metodología Pedagógica y Didáctica: Para lograr lograr los objetivos planteados se empleará una metodología de tipo activa, que permita a los participantes analizar, sintetizar y evaluar los temas que se dictan. Este espacio académico empleará para su desarrollo pedagogías intensivas, las cuales apoyan el trabajo autónomo fuera de la clase, la cultura del diálogo y la evaluación permanente. Estas promoverán una ética de trabajo, una valoración mayor del tiempo y un compromiso con cada uno y con las metas que reconocecomo propias. Lo que se buscará es que el estudiante asuma tareas que le exijan reflexionar y analizar, que se forme en los principios de la investigación y en el aprovechamiento de la bibliografía y publicaciones en el tema. Exposiciones orales La exposición oral se realizará para presentar cada tema, mostrando las definiciones, su estado actual y la relevancia de cada uno de ellos en los sistemas distribuidos. Estas exposiciones se acompañarán de demostraciones prácticas, que permitirán visualizar la aplicación del tema que se esté tratando o que permitirán explicar el tema en forma visual para su mejor asimilación. Seminario Alemán El seminario alemán es una técnica pedagógica, en la cual, la clase dirigida por alguien (el Moderador), intercambian opiniones: • Exponiendo (la Relatoría) un tema específico. • Complementándolo. Evaluándolo (la Correlatoría). • Aportando (la Discusión). • Sacando conclusiones y planteando nuevos interrogantes, permitiendo que todo ello quede en la memoria escrita (el Protocolo) Talleres Consistirán en el desarrollo de ejercicios, tendientes a abarcar algunos de los conceptos tratados en clase, presentando un trabajo escrito de algunos de ellos. Serán desarrollados en grupos de a tres máximo. Estos talleres serán realizados por los estudiantes empleando alguna plataforma que considere apropiada o la que, en algunos casos, se proponga por parte del profesor. Tendrán una intensidad mínima de diez horas a la semana. Hora s Horas profesor/seman a Horas Estudiante/seman a Total Horas Estudiante/semest re Créditos Tipo de Curso TD TC TA (TD + TC) (TD + TC +TA) X 16 semanas 64 40 40 6 9 144 3 Trabajo Presencial Directo (TD): trabajo de aula con plenaria de todos los estudiantes. Trabajo Mediado_Cooperativo (TC): Trabajo de tutoría del docente a pequeños grupos o de forma individual a los estudiantes. Trabajo Autónomo (TA): Trabajo del estudiante sin presencia del docente, que se puede realizar en distintas instancias: en grupos de trabajo o en forma individual, en casa o en biblioteca, laboratorio, etc.) IV. RECURSOS (Con Qué?) Medios y Ayudas: Serán empleados elementos y herramientas didácticas, proyector de video, computadores, tablero, documentos impresos y lecturas que complementarán los aspectos que se dicten en clase. BIBLIOGRAFÍA TEXTOS GUÍAS G. Coulouris, J. Dollimore, and T. Kindberg. Distributed Systems - Concepts and Design, Fifth Edition, published by Addison Wesley, May 2011. A.S. Tanenbaum and M. Van Steen. Distributed Systems - Principles and Paradigms, 2d ed., Prentice Hall, 2006. TEXTOS COMPLEMENTARIOS Sape Mullender. Distributed Systems, 2nd ed., Addison – Wesley, 1995 CHOW, Randy y JOHNSON, Theodore. Distributed operating systems and algorithms. Reading, Mass., Addison Wesley, 1997. KHANNA, R. Distributed computing: implementation and management strategies. Englewood Cliffc, N.J. Prentice Hall, 1994. REVISTAS IEEE Transactions on Parallel and Distributed Systems Journal of Network and Systems Management, Peer-to-Peer Networking and Applications (Springer) DIRECCIONES DE INTERNET www.w3c.org www.ogf.org www.gtk.org V. ORGANIZACIÓN / TIEMPOS (De Qué Forma?) Espacios, Tiempos, Agrupamientos: Se recomienda trabajar una unidad cada cuatro semanas, trabajar en pequeños grupos de estudiantes, utilizar Internet para comunicarse con los estudiantes para revisiones de avances y solución de preguntas (esto considerarlo entre las horas de trabajo cooperativo). Unidad 1 Introducción al curso Objetivos específicos: el estudiante estará en capacidad de: Entender el objetivo del aprendizaje del curso sistemas distribuidos Visualizar el contenido general del curso y entender para qué le servirá Comprender la conexión entre la exposición oral de los temas básicos y el estudio de la arquitectura para computación GRID Tiempo: 2 h. 1. Fase de preparación - motivación: Contenido Estrategias Medios Tiempo Dinámica de presentación Condición de entrada sobre expectativas de los estudiantes y su concepción de un sistema distribuido. Dinámica “los sistemas distribuidos para su profesión” Descripción del programa de trabajo y sugerencias Dinámicas de grupo Tablero 2 h Unidad 2 Fundamentos de sistemas distribuidos Objetivos específicos: el estudiante estará en capacidad de: Comprender los aspectos básicos de los sistemas distribuidos. Comprender y manejar los aspectos que deben ser superados a la hora de enfrentarse con la integración de recursos dispersos Comprender las necesidades especiales de comunicación y las alternativas básicas para resolverlas. Tiempo: 12 h. 1. Fase de preparación - motivación: Contenido Estrategias Medios Tiempo Condición de entrada sobre el conocimiento del tema Preguntas Tablero 1 h 2. Fase de orientación – apropiación: http://www.w3c.org/ http://www.ogf.org/ http://www.gtk.org/ Contenido Estrategias Medios Tiempo Que es un sistema distribuido Niveles de transparencia Características claves de los sistemas distribuidos Comunicación entre procesos. RPC (JAXRPC) Comunicación cliente/servidor Comunicación de grupos Comunicación Peer-to-Peer Nombramiento (DNS, Servicio de directorio) Exposición oral, Estudio dirigido Computador, Proyector de vídeo y tablero 11 h 3. Fase de afianzamiento – fijación: Contenido Estrategias Medios Tiempo Talleres sobre Comunicación entre procesos empleando el protocolo de requerimiento respuesta en ambiente Web aplicaciones dirigidas Computador 12 h 4. Evaluación del aprendizaje: Se realizará una evaluación diagnóstica y formativa informal a través de preguntas orales y participación. Serán evaluados los talleres de aplicación que presenten los estudiantes en forma escrita o quiz. Unidad 3 Software de intermediación (Middleware Systems) Objetivos específicos: el estudiante estará en capacidad de: Comprender en que consiste el software de intermediación. Revisar las arquitecturas CORBA y Java RMI Conocer el esquema de WebServices Tiempo: 12 h. 1. Fase de preparación - motivación: Contenido Estrategias Medios Tiempo Importancia del tema para casos de la vida real Preguntas Tablero 1 h 2. Fase de orientación – apropiación: Contenido Estrategias Medios Tiempo Propósito de middleware Tópicos claves en middleware La arquitectura CORBA (ORM, OMO, IDL) Invocación Remota de Métodos (RMI) Java RMI,EJB WebServices (WSDL, SOAP, SAAJ) Exposición oral, Estudio dirigido Computador, Proyector de vídeo y tablero 11 h 3. Fase de afianzamiento – fijación: Contenido Estrategias Medios Tiempo Taller SAAJ y SOAP aplicaciones dirigidas Computador, tablero y guías de clase 22 h 4. Evaluación del aprendizaje: Se realizará una evaluación diagnóstica y formativa informal a través de preguntas orales y participación en clase. Serán evaluadas las respuestas de los estudiantes en los talleres que presenten Unidad 4 Interacción y control distribuido. Objetivos específicos: el estudiante estará en capacidad de: Comprender los tópicos relacionados con la coordinación de actividades en un entorno distribuido. Comprender los tópicos relacionados con el acceso concurrente a recursos en un sistema distribuido. Comprender los tópicos relacionados con la presencia de fallas en un sistema distribuido. Tiempo: 18 h. 1. Fase de preparación - motivación: Contenido Estrategias Medios Tiempo Importancia del tema para los estudiantes Preguntas orales Tablero 1 h 2. Fase de orientación – apropiación: Contenido Estrategias Medios Tiempo Manejo del tiempo y coordinación. Relojes lógicos y ordenamiento de operaciones. Exclusión mutua distribuida. Transacciones distribuidas Recuperación y tolerancia a fallas Seguridad. Replicación.Exposición oral, lecturas dirigidas, consulta bibliográfica Proyector de Vídeo y tablero 17 h 3. Fase de afianzamiento – fijación: Contenido Estrategias Medios Tiempo Taller de exclusión mutua distribuida Taller de seguridad llaves públicas y privadas aplicación dirigida Computador, tablero y guías de clase 30 h (2) 5. Evaluación del aprendizaje: Se realizará una evaluación diagnóstica y formativa a través de los avances parciales que cada estudiante presente del proyecto. Unidad 5 Computación GRID ( seminario alemán) Objetivos específicos: el estudiante estará en capacidad de: Conocer los conceptos relacionados con la computación GRID. Revisar y discutir de manera más o menos detallada la arquitectura propuesta por el GGF Tiempo: 16 h. 1. Fase de preparación - motivación: Contenido Estrategias Medios Tiempo Presentación de las generalidades de computación GRID Exposición oral Computador , Proyector de vídeo, 1 h 2. Fase de orientación – apropiación: Contenido Estrategias Medios Tiempo Cada uno de los estudiantes desarrollará un seminario en computación GRID, sobre los temas siguientes: Arquitectura Infraestructura Cómputo Gestión de recursos Datos Seguridad Aplicaciones Cloud computing Las fuentes serán las publicaciones del OGF sobre computación GRID. Seminario alemán, consultas bibliográficas Computado r, Proyector de vídeo y tablero 15 h (Asignadas para las sesiones del seminario alemán) 20 h (trabajo extra clase) 4. Evaluación del aprendizaje: Se realizará una evaluación de acuerdo con cada uno de los roles. VI. EVALUACIÓN (Qué, Cuándo, Cómo?) La materia se evaluará mediante los tópicos que se presentan en la siguiente tabla, donde además se muestra el porcentaje de participación de cada ítem: P R IM E R A N O T A TIPO DE EVALUACIÓN FECHA PORCENTAJE Evaluación de los conceptos teóricos 20% S E G U N D A N O T A Evaluación de los conceptos teóricos 20% T E R C E R A N O T A Proyecto de curso 30% C U A R T A N O T A Seminario Alemán 30% ASPECTOS A EVALUAR DEL CURSO 1. Evaluación del desempeño docente 2. Evaluación de los aprendizajes de los estudiantes en sus dimenciones: individual/grupo, teórica/práctica, oral/escrita. 3. Autoevaluación: 4. Coevaluación del curso: de forma oral entre estudiantes y docente. DOCENTES: ____José Antonio Valero Medina__ _______________________________________________________________________________ (Nombre de los docentes que realizan la actualización) FECHA DE REVISIÓN: __18 de junio de 2013__
Compartir