Transcript
Page 1: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

1

GUÍA DE APRENDIZAJE Sistemas Distribuidos

GRADUADO EN INGENIERÍA DE COMPUTADORES

DATOS DESCRIPTIVOS1

CENTRO RESPONSABLE E.U. de Informática

OTROS CENTROS IMPLICADOS

CICLO Grado sin atribuciones

MÓDULO Curso de Adaptación

MATERIA:

ASIGNATURA: Sistemas Distribuidos

CURSO: 3º

DEPARTAMENTO RESPONSABLE Informática Aplicada

CRÉDITOS EUROPEOS: 6

CARÁCTER: Obligatoria

ITINERARIO:

CURSO ACADÉMICO: 2012/2013

PERIODO DE IMPARTICIÓN: Segundo semestre

IDIOMAS IMPARTICIÓN: Español

OTROS IDIOMAS DE IMPARTICIÓN:

HORAS/CRÉDITO 26

1 Paso 0 en la aplicación EUROPA

Page 2: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

2

PROFESORADO2

NOMBRE Y APELLIDOS

DESPACHO Correo electrónico EN INGLÉS

Isabel Muñoz Fernández D-4416 [email protected] No

Sergio Arévalo Viñuales D-4415 [email protected] No

TUTORÍAS

NOMBRE Y APELLIDOS

TUTORÍAS

LUGAR DÍA DE A

Isabel Muñoz Fernández

D-4416 Lunes 10 12

Martes 16 18

Miércoles 10 12

Sergio Arévalo Viñuales

D-4415 Martes 11 14

Martes 15 18

GRUPOS

Nº de Grupos3

GRUPOS ASIGNADOS EN:

Teoría 3

Prácticas 3

Laboratorio 0

2 Paso 2 en la aplicación EUROPA. Si no se sabe el horario de tutorías, poner sólo el despacho. 3 Los grupos son de teoría y/o de laboratorio (no de prácticas).

Page 3: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

3

REQUISITOS PREVIOS NECESARIOS4

ASIGNATURAS SUPERADAS:

OTROS REQUISITOS

CONOCIMIENTOS PREVIOS RECOMENDADOS

ASIGNATURAS PREVIAS RECOMENDADAS:

Algorítmica y complejidad

Programación orientada a objetos y concurrente

Redes de computadores

Sistemas Operativos

CONOCIMIENTOS PREVIOS

Programación en Java

OTROS CONOCIMIENTOS

4 Paso 3 en la aplicación EUROPA

Page 4: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

4

COMPETENCIAS5

CÓDIGO COMPETENCIA NIVEL RA

G1 Comunicación oral y escrita N3 RA_6

G4 Organización y planificación N4 RA_1 - RA_6

G6 Uso de lengua inglesa N3 RA_6

G7 Uso de las tecnologías de la información y las comunicaciones

N5 RA_1 - RA_5

G8 Trabajo en equipo N3 RA_5

G9 Aprendizaje autónomo N4 RA_6

G10 Capacidad de análisis y síntesis N4 RA_6

G13 Razonamiento crítico N4 RA_6

G14 Resolución de problemas N3 RA_1, RA_2

I12

Conocimiento y aplicación de los procedimientos algorítmicos básicos de las tecnologías informáticas para diseñar soluciones a problemas, analizando la idoneidad y complejidad de los algoritmos propuestos

N5

RA_3, RA_4

I14

Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados

N3

RA_1 - RA_5

I17

Conocimiento y aplicación de las características, funcionalidades y estructura de los Sistemas Distribuidos, las Redes de Computadores e Internet y diseñar e implementar aplicaciones basadas en ellas

N4

RA_1 - RA_5

I20

Conocimiento y aplicación de los principios fundamentales y técnicas básicas de la programación paralela, concurrente, distribuida y de tiempo real

N4

RA_1 - RA_5

E3

Capacidad de analizar y evaluar arquitecturas de computadores, incluyendo plataformas paralelas y distribuidas, así como desarrollar y optimizar software de para las mismas

N3

RA_1 - RA_5

5 Paso 4 y 5 en la aplicación EUROPA. Hay que poner un RA por cada competencia que tenga la asignatura en el Plan de Estudios. Imprescindible poner todas las competencias.

Page 5: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

5

CÓDIGO COMPETENCIA NIVEL RA

E4 Capacidad de diseñar e implementar software de sistema y de comunicaciones

N3

RA_1 - RA_5

RESULTADOS DE APRENDIZAJE

CÓDIGO DESCRIPCIÓN

RA_1 Identifica los conceptos y abstracciones elementales que subyacen en todo sistema distribuido.

RA_2 Identifica los problemas más comunes que presenta un sistema distribuido debido a la falta de memoria y reloj común, a la falta de sincronía y a la presencia de errores en la red y en los procesos.

RA_3 Define el modelo fundamental y el modelo arquitectónico de un sistema distribuido.

RA_4 Selecciona los algoritmos más apropiados para la resolución de los problemas anteriores dado un determinado modelo fundamental.

RA_5 Construye aplicaciones distribuidas utilizando tanto algoritmos bien conocidos como propios, así como plataformas middleware existentes en el mercado para la computación distribuida.

RA_6 Analiza y sintetiza por escrito un texto científico en inglés, identificando el problema, el objetivo, el método de resolución del problema, los resultados y las conclusiones del autor.

INDICADORES DE LOGRO6

CÓDIGO INDICADOR RA

IN_01 E1.- Cuestiones sobre objetivos específicos Cuestiones de respuesta corta sobre los objetivos específicos de cada tema previamente definidos

RA1, RA2, RA3, RA4,

RA5

IN_02 E2.- Resolución de problemas Resolución de ejercicios sobre los contenidos de la asignatura

RA1, RA2, RA3, RA4,

RA5

IN_03

P1.- Evaluación del razonamiento crítico realizado sobre un artículo científico Lenguaje apropiado en la documentación desarrollada. Organización del texto. Razonamiento crítico sobre la forma de expresión de las ideas por parte del autor: identificación del problema, estado del arte, objetivo del autor, método de resolución, resultados y conclusiones

RA1-RA5

IN_04 P2.- Evaluación del desarrollo en Java de un sistema distribuido. RA5

6 Paso 6 en la aplicación EUROPA

Page 6: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

6

CONTENIDOS ESPECÍFICOS (TEMARIO)7

TEMA APARTADOS LOGRO

1. Characterization of Distributed Systems (4 h)

1.1. Introduction IN_01, IN_02

1.2. Examples of distributed systems 1.3. Resource sharing and the web 1.4. Challenges

2. System Models (4 h) 2.1. Introduction IN_01, IN_02

2.2. Architectural models 2.3. Fundamental models

3. Synchronization (8 h)

5.1 Introduction IN_01, IN_02

5.2. Synchronizing physical clocks

5.3. Logical time and logical clocks 5.4. Global states

4. Coordination and agreement (8 h)

6.1. Introduction IN_01, IN_02,

6.2. Distributed mutual exclusión

6.3. Elections

6.4. Multicast communication

6.5. Consensus

5. Transactions (6 h) 7.1. Introduction IN_01, IN_02

7.2 Flat and nested distributed transactions 7.3 Atomic commit protocols 7.4 Transaction recovery protocols

CONTENIDOS ESPECÍFICOS (TEMARIO)

TEMA APARTADOS LOGRO Lab 1. Java Review (4h)

1.1 Platform Description IN_01, IN_02, IN_04

1.2 Compiling 1.3 Classes and Objects 1.4 Exceptions 1.5 Input/Output Streams

7 Paso 7 en la aplicación EUROPA

Page 7: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

7

Lab 2. Operting System Support (4h) [Coulouris7]

2.1 Introduction [C7.1] IN_01, IN_02, IN_04

2.2 The Operating system Layer [C7.2] 2.3 Protection [C7.3] 2.4 Processes and Threads [C7.4] 2.4.1 Address spaces [C7.4.1] 2.4.2 Creation of a new process [C7.4.2] 2.4.3 Threads [C7.4.3] excluding Architectures for multi-threaded servers

Lab 2. Interprocess Communication (4 h) [Coulouris4]

2.1. Introduction [C4.1] IN_01, IN_02, IN_04

2.2. The API for the Internet protocols [C4.2] 2.2.1. Characteristics [C4.2.1] 2.2.2. Sockets [C4.2.2] 2.2.3. UDP Datagram Communication[C4.2.3] 2.2.4. TCP Stream Communication[C4.2.4] 2.3. External Data Representation and Marshalling [C4.3]

2.3.1. Java Object Serialization [C4.3.2] Lab 3. Remote Invocation (6 h) [Coulouris5,7]

3.1. Introduction [C5.1] IN_01, IN_02, IN_04

3.2 Request-reply protocol [C5.2] 3.3 Architectures for multi-threadedservers [C7.4.3]

3.3. Remote procedure call [C5.3] 3.4. Asynchronous Invocation [C7.5.2] 3.5. Remote Method invocation [C5.4] 3.4.1. Design issues for RMI [C5.4.1] 3..4.2. Remote Object reference [4.3.4] 3.4.3. Implementation of RMI [C5.4.2] 3.4.4 Invocation Performance [C7.5.1] 3.4.4. Case Study. Java RMI [C5.5]

LabX.Critical Thinking (4 h)

8.1 Introduction IN_3 8.2. Reading, analysis, synthesis JC I

8.3 . Reading, analysis, synthesis JC II

Page 8: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

8

BREVE DESCRIPCIÓN DE LAS MODALIDADES ORGANIZATIVAS UTILIZADAS Y MÉTODOS DE ENSEÑANZAS EMPLEADOS8

MODALIDAD DESCRIPCIÓN MÉTODO MÉTODOS DE ENSEÑANZA

CLASES DE TEORÍA

Descripción de conceptos teóricos • Lección magistral • Aprendizaje cooperativo • Resolución de ejercicios

y problemas

PRÁCTICAS Desarrollo incremental de un sistema distribuido e tipo RMI en Java

• Aprendizaje basado en proyectos

TRABAJOS

AUTÓNOMOS

Búsqueda, análisis y síntesis de información relativa a conceptos de la asignatura aplicados a la vida real 10 m Exposición oral usando unas transparencias escritas en inglés

• Método expositivo • Estudio de casos

TUTORÍAS Individuales Grupales

8 Paso 10 de la aplicación EUROPA

Page 9: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

9

CRONOGRAMA DE TRABAJO DE LA ASIGNATURA9

SEMANA ACTIVIDADES

Actividad Modalidad10 Met.Ense11 Lugar12 Duración Evaluación13 Prep Carga(%)14

1

Tema 1. Intro (I) Clase teórica Lección magistral Aula 2 2 Tema 1. Repaso Java I. Entorno. Objetos. Excepciones. I/O. Enunciado JC 1(4 h)

Clase de prácticas Proyecto Laboratorio 2

4 JC I (2 h) Java I (2h)

2

Tema 1. Intro (II) Clase teórica Lección magistral Aula 2 2 Tema 1. Repaso Java II. Threads. Concurrencia. Enun P1(3 h)

Clase de prácticas Proyecto Laboratorio 2

4 JC I ( 2 h) P1. Threads (3 h)

3

Tema 2. System Model (I) Clase teórica Lección magistral Aula 2 3 Corrección JC I. Enunciado JC 2 Tema 2. IPC I 2.1 Intro

Clase de prácticas Proyecto Laboratorio 0’5

P1.Threads (2h) JC II (1h) 3

JC I. Examen JC 1 Estudio autónomo Coevaluación Laboratorio 1’5 Ev. Continua 0

9 Paso 8 en la aplicación EUROPA 10 A elegir entre: Clase de Problemas, Clase de prácticas, Clases teóricas, Estudio y trabajo autónomo, Estudio y trabajo en grupo, prácticas externas, seminarios-talleres, tutorías 11 A elegir entre: Aprendizaje Basado en Problemas, Aprendizaje Basado en Proyectos, Aprendizaje cooperativo, Contrato de aprendizaje, Estudio de casos, estudio de teoría, Lección magistral, Método expositivo, Resolución de ejercicios y problemas 12 Aula, Laboratorio, Otros 13 Continua, Examen Final, Ambas 14 No hace falta calcularla, lo hace la aplicación. Lo que sí hay que hacer es cuidar el número de horas dedicadas por el alumno a la asignatura semanalmente. La suma semestral, incluyendo las horas de los exámenes, debe ser 156 horas.

Page 10: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

10

SEMANA ACTIVIDADES

Actividad Modalidad10 Met.Ense11 Lugar12 Duración Evaluación13 Prep Carga(%)14

4

Tema 2. System Model (II) Clase teórica Lección magistral Aula 2 3 Comunicación (I) Sockets TCP. UDP. Java. 3.1 y 3.2. Enun P2 (4 h)

Prácticas Lección magistral Práctica en ordenador Laboratorio 2

P2. Sockets multihilo (2h) JC II (1) 3

5

Tema 3. Synchro (I) Clase teórica Lección magistral Aula 2 3 RMI (I) 4.1. Intro 4.2 comunication Object 3.4 Client/server prot 3.3 Ext. Data Represent

Prácticas Lección magistral Laboratorio 2

P2. Sockets multihilo (2h) JC II (1) 3

6

Tema 3. Synchro (II) Clase teórica Lección magistral Aula 2 3

Tema 4. RMI (II) Enun. ORB (14 h) Prácticas Lección magistral Laboratorio 1

P3. ORB I (2) JC II (1) 3

Exam prácticas P1 y P2. Threads y sockets Estudio autónomo Resolución de

problemas Laboratorio 1 0

7

Tema 3. Synchro (III) Clase teórica Lección magistral Aula 2 3

Tema 4. RMI (III) Ejemplo Java RMI Prácticas Lección magistral Laboratorio 2

P3. ORB II (2) JC II (1) 3

8 Semana Santa

9

Tema 3. Synchro (IV) Relojes vectoriales Clase teoría Lección magistral Aula 2 3

Ejemplo Java RMI Prácticas Resolución RMI/Java Laboratorio 2 P3. ORB III (2) JC II (1) 3

10 Exam Teoría. T1-T3 Exam prácticas P1 y P2 Bloque 2 Ev. continua 3 50

Page 11: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

11

SEMANA ACTIVIDADES

Actividad Modalidad10 Met.Ense11 Lugar12 Duración Evaluación13 Prep Carga(%)14

P3. ORB IV Prácticas Aprendizaje Basado en proyecto Laboratorio 2

P3. ORB V (2) JC II (1) 3

11 Tema 4. Coord (I) Clase teórica Lección magistral Aula 2 3

P3. ORB VI JCII

Clase de prácticas

Aprendizaje Basado en Proyectos Laboratorio 2

P3.ORB VII (2) JC II (1) 3

12

Tema 4. Coord (II) Clase teórica Lección magistral Aula 2 3 P3.ORB VIII JCII Enun P4. SN (5 h)

Clase de prácticas

Aprendizaje Basado en Proyectos Laboratorio 2

P4. SN I (1’5) JC II (1’5) 3

13 Tema 4. Coord (III) Clase teórica Lección magistral Aula 2 3

P4. SN JCII

Clase de prácticas

Aprendizaje basado en problemas Laboratorio 2

P4. SN (1’5) JC II (1’5) 3

14

Tema 4. Coord (IV) Clase teórica Lección magistral Aula 2 3

P4. SN JCII

Clase de prácticas

Aprendizaje Basado en Proyectos Laboratorio 2

Prep Ex P3-P4 (1’5) JC II (1’5) 3

15

Tema 5. Trans (I) Clase teórica Lección magistral Aula 2 3

JC II Clase de prácticas

Aprendizaje Basado en Proyectos Laboratorio 0’5

JC II (1’5) Repaso examen (1’5)

Estudio autónomo Res. de problemas Laboratorio 1’5 0

16 Tema 5. Trans (II) Clase teórica Lección magistral Aula 2 3 JC II

Clase de prácticas

Aprendizaje Basado en Proyectos Laboratorio 2

3

17 Tema 5. Trans (III) Clase teórica Lección magistral Aula 2 1

Page 12: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

12

H

EVALUACIÓN DE LA ASIGNATURA

SEMANA ACTIVIDADES Actividad Lugar Técnica eval15. Peso(%) Eval. min

1

2

3 Examen JC I (1’30 h ) Laboratorio Coevaluación 0 5

4

5

6

Examen prácticas P1 y P2. Threads y sockets (1 h)

Laboratorio Prueba de ejecución de tareas reales 0 5

7

8 15 Escalas de actitudes, Informes/memorias de prácticas, Portafolios, Prueba de Ejecución de tareas reales y/o simuladas, Pruebas de Respuestas Corta, Pruebas de Respuestas Largas de desarrollo, Pruebas objetivas, Pruebas orales, Sistema de Autoevaluación, Técnica de observación, Trabajos y Proyectos

Page 13: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

13

SEMANA ACTIVIDADES Actividad Lugar Técnica eval15. Peso(%) Eval. min

9

10 11/04/2013

Examen Teoría. T1-T3 Examen Prácticas (2h)

Bloques 13:30 h - 15:30 h

Pruebas de respuesta corta/larga 50 5

11-17

18 5/06/2013

(Examen ord junio)

Examen Teoría. T4 –T5 Examen de Prácticas. (2h )

Bloque Pruebas de respuesta corta / larga 50 5

Page 14: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

14

CRITERIOS DE CALIFICACIÓN DE LA ASIGNATURA

CRITERIOS DE CALIFICACIÓN

Evaluación de la asignatura en el periodo ordinario de docencia

a) Sistema de evaluación continua

Bloque I. Teoría. 2 pruebas escritas individuales (50%) Bloque II. Pensamiento crítico (5%) Bloque III. Prácticas (45%) • Es necesario obtener al menos un 5 sobre 10 en todos los bloques para superar la asignatura • En el caso de que el alumno suspenda el sistema de evaluación continua pero tenga algún o

algunos bloques superados, podrá presentarse al examen extraordinario de julio y examinarse únicamente de los bloques suspensos

b) Sistema de evaluación mediante solo prueba final

Al sistema de evaluación de prueba final podrán presentarse aquellos alumnos que hayan optado por esta modalidad. La elección de dicha modalidad podrá realizarse como máximo hasta el viernes 29 de marzo de 2013.

No se tendrá en cuenta ninguna nota de pruebas realizadas de bloques suspensos bajo la evaluación continua en la nota del examen ordinario de junio.

Las actividades de evaluación previstas son:

• Bloque I. Teoría. Prueba escrita (55%) • Bloque II. Prácticas. (45%) Solo se podrá aprobar si se obtiene al menos un 5 sobre 10 en cada uno de los bloques anteriores.

Evaluación de la asignatura en el periodo extraordinario

El examen extraordinario de julio constará de 2 bloques de evaluación distintos: teoría y prácticas. Los alumnos que en evaluación continua hayan superado alguno de estos bloques, no tendrán que examinarse de ellos de nuevo. Las actividades de evaluación previstas son:

• Bloque I. Teoría. Prueba escrita (55%) • Bloque II. Prácticas. (45%) Solo se podrá aprobar si se obtiene un 5 sobre 10 en cada uno de los bloques anteriores.

Page 15: GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN ...€¦ · GUÍA DE APRENDIZAJE Sistemas Distribuidos GRADUADO EN INGENIERÍA DE COMPUTADORES DATOS DESCRIPTIVOS1 CENTRO RESPONSABLE

15

RECURSOS DIDÁCTICOS16

TIPO DESCRIPCIÓN

BIBLIOGRAFÍA Coulouris, G., Dollimore, J. y Kindberg, T. (2005). Distributed systems, concepts and design (5ª ed.). Madrid: Addison-Wesley.

Tanenbaum, A.S. y van Steen, M. (2002). Distributed systems: principles and paradigms. Upper Saddle River, NJ: Prentice-Hall. Lynch N. (1999). Distributed Algorithms. Morgan Kaufmann. Attiya, H. and Welch, J. (2004). Distributed Computing (2 nd. edition). Wiley Liu, M.L. (2004). Computación distribuida: fundamentos y aplicaciones. Madrid: Addison Wesley.

RECURSOS WEB Servidor Moodle del departamento: http://c3po.eui.upm.es

EQUIPAMIENTO Laboratorios del departamento

Aulas del Centro de Cálculo

OTRA INFORMACIÓN RESEÑABLE17

16 Paso 11 en la aplicación EUROPA 17 Paso 12 en la aplicación EUROPA


Recommended