Vous êtes sur la page 1sur 20

Concurrencia

Gua de Aprendizaje Informacin al estudiante


Datos Descriptivos
Asignatura Materia Departamento responsable Crditos ECTS Carcter Titulacin Curso Especialidad Concurrencia Programacin Lenguajes, Sistemas Informticos e Ingeniera de Software 3 Obligatorio Graduado en Ingeniera Informtica 2 No aplica

Curso acadmico Semestre en que se imparte Semestre principal

2012-2013 3S,4S 4S

Idioma en que se imparte Castellano Pgina Web http://babel.upm.es/teaching/concurrencia

Profesorado
NOMBRE Y APELLIDO Julio Mario Carballo (Coord.) ngel Herranz Nieva Lars-ke Fredlund DESPACHO 2308 2309 2309 Correo electrnico jmarino@fi.upm.es aherranz@fi.upm.es lfredlund@fi.upm.es

Conocimientos previos requeridos para poder seguir con normalidad la asignatura



Asignaturas superadas Programacin I Programacin II Matemtica Discreta I Lgica Lenguajes Formales, Autmatas y Computabilidad

Otros resultados de aprendizaje necesarios

Objetivos de Aprendizaje

COMPETENCIAS ASIGNADAS A LA ASIGNATURA Y SU NIVEL DE ADQUISICIN


Cdigo CE-2 Competencia Formalizacin y especificacin de problemas reales cuya solucin requiere el uso de la informtica. Elegir y usar los lenguajes de programacin adecuados al tipo de aplicacin a desarrollar. Concebir y disear la arquitectura de un sistema software. 3 Nivel

CE-24 CE-25

3 2

CE-29

Disear, desarrollar, y evaluar la seguridad de los sistemas, aplicaciones, servicios informticos y sistemas operativos sobre los 3 que se ejecutan, as como de la informacin que proporcionan.
Comprender el concepto esencial de proceso en cuanto a su relacin con 3 la informtica, especialmente la ejecucin de los programas y la operacin del sistema.

CE-40

COMPETENCIAS TRANSVERSALES ASIGNADAS A LA ASIGNATURA Y SU NIVEL DE ADQUISICIN


Cdigo CG#1/21
CG#2/CE45

Competencia
Capacidad de resolucin de problemas aplicando conocimientos de 2 matemticas, ciencias e ingeniera.
Capacidad para el aprendizaje autnomo y la actualizacin de conocimientos, y reconocimiento de su necesidad en el rea de la informtica.

Nivel

LEYENDA: Nivel de adquisicin 1: Nivel de adquisicin 2: Nivel de adquisicin 3:

RESULTADOS DE APRENDIZAJE DE LA ASIGNATURA


Cdigo Resultado de aprendizaje Reconocer la concurrencia inherente a un sistema SW Especificar propiedades relativas a la ejecucin concurrente de un sistema SW Desarrollar aplicaciones concurrentes en Java Competencias asociadas CE-25, CE-40 Nivel de adquisicin 2,3

RA1

RA2

CE-2, CE-29, CE-40, 3 CG#1/21 CE-24, CG#2/CE45 CE-40, 3

RA3

RA-4

Analizar propiedades y riesgos atribuibles a CE-29, la ejecucin concurrente de un sistema SW CG#1/21

Sistema de evaluacin de la asignatura


INDICADORES DE LOGRO
Ref. I1 Indicador Relacionado con RA

Disear una arquitectura de procesos e interacciones a partir de las RA-1 acciones contenidas en la especificacin de requisitos de un sistema SW Formalizar propiedades de seguridad mediante un lenguaje de recursos RA-2 compartidos Formalizar propiedades dinmicas mediante un lenguaje de trazas Demostrar conocimiento de los mecanismos de concurrencia del lenguaje RA-2 RA-3

I2 I3 I4

I5

Caso prctico: traducir a Java una especificacin de recurso compartido, RA-3 siguiendo patrones de cdigo Encontrar un error de seguridad o vivacidad en un sistema concurrente RA-4 dado

I6

INDICADORES DE LOGRO DE COMPETENCIAS TRANSVERSALES


Ref. I2 I3 I4 Indicador Relacionado con CT

Formalizar propiedades de seguridad mediante un lenguaje de recursos CG#1/21 compartidos Formalizar propiedades dinmicas mediante un lenguaje de trazas Demostrar conocimiento de los mecanismos de concurrencia del lenguaje CG#1/21 CG#2/CE45

I5

Caso prctico: traducir a Java una especificacin de recurso compartido, CG#2/CE45 siguiendo patrones de cdigo

INDICADORES DE LOGRO DE COMPETENCIAS TRANSVERSALES


I6 Encontrar un error de seguridad o vivacidad en un sistema concurrente CG#1/21 dado

Aviso: Todas las fechas son orientativas. Las fechas exactas dependen del calendario escolar que se fije y sern publicadas en la web de la asignatura.

EVALUACION SUMATIVA
Breve descripcin de las actividades evaluables
Ejercicio corto: creacin de procesos en Java Ejercicio corto: provocar una situacin de carrera Ejercicio corto: exclusin mutua con espera activa Ejercicio corto: reparar carrera con semforos Ejercicio corto: almacn de un dato con semforos

Momento
Semana 2 Semana 2 Semana 3 Semana 4 Semana 5

Lugar
telemtica telemtica telemtica telemtica telemtica telemtica telemtica telemtica telemtica aula telemtica individual telemtica aula

Peso en la calif.
1% 1% 1% 1% 1% 1% 1% 1% 1% 25% 20% 1% 20% 25%

Ejercicio corto: almacn de varios datos con semforos Semana 6 Ejercicio corto: especificacin de recursos sencillos Ejercicio corto: MultiBuffer con mtodos synchronized Ejercicio corto: MultiBuffer con cerrojos Semana 7 Semana 8 Semana 9

Test de preguntas de opcin mltilple para los temas 1-2 Semana 11 Prctica por parejas: implementacin de recursos compartidos en Java con cerrojos y variables condition Ejercicio corto: MultiBuffer con JCSP Prctica por parejas: implementacin de recursos compartidos en Java con la librera JCSP Test de preguntas de opcin mltiple para el tema 3 Semanas 10-13 Semana 12 Semanas 13-15 Semana 16

Total: 100%

EVALUACION SUMATIVA DE COMPETENCIAS TRANSVERSALES


CD. COMPETENCIA TRANSVERSAL
CG#1/21

Breve descripcin de las actividades evaluables

Momento

Lugar
aula

Peso en la calif.
40%

Test de preguntas de opcin mltiple para los Semana 11 temas 1-2 Prctica por parejas: implementacin de recursos compartidos en Java con cerrojos y variables condition Prctica por parejas: implementacin de recursos compartidos en Java con la librera JCSP

CG#1/21

Semanas 10- telem13 tica

10%

CG#1/21

Semanas 13- telem15 tica

10%

CG#1/21

Test de preguntas de opcin mltiple para el Semana 16 tema 3 Ejercicios cortos (entregas 1 a 10) Prctica por parejas: implementacin de recursos compartidos en Java con cerrojos y variables condition Prctica por parejas: implementacin de recursos compartidos en Java con la librera JCSP Semana 2-12

aula telemtica

40%

CG#2/CE45

40%

CG#2/CE45

Semanas 10- telem13 tica

30%

CG#2/CE45

Semanas 13- telem15 tica

30%

CRITERIOS DE CALIFICACIN
La asignatura Concurrencia tiene dos partes evaluables, una parte terica y una parte prctica. Para aprobar la asignatura el estudiante deber superar ambas partes. Adems, el estudiante debe tener en cuenta que la asistencia a clase es absolutamente fundamental para superar la asignatura y el profesorado realizar un seguimiento de dicha asistencia. Teora La parte terica la componen dos tests. El primero tratar los conceptos de los temas 1 y 2 y se realizar alrededor de la semana 11. El segundo tratar los conceptos del tema 3 y se realizar en la semana 16. Cada test recibir una calificacin sobre 10 (nt1 y nt2). La nota de la parte terica (nt) se calcula entonces como la media de nt1 y nt2. Se considerar superada la parte terica cuando nt1 y nt2 sean mayores o iguales a 4 y cuando nt sea mayor o igual a 5. Prctica La parte prctica la componen un conjunto de 10 ejercicios cortos cuyo objetivo es garantizar el seguimiento continuo de la asignatura por parte del alumno, y dos prcticas a realizar por parejas. La entrega de todos los ejercicios es de carcter obligatorio, y se califican sobre 10 puntos, obtenindose ne, np1 y np2. Se considerar superada la parte prctica cuando ne, np1 y np2 sean mayores o iguales a 3 y cuando np ((ne+2np1+2np2)/5)sea mayor o igual a 5. Total La asignatura se considerar superada cuando se superen la parte terica y la parte prctica. La calificacin final (nf) se calcula como la media de nt y np. Superada cualquiera de las partes (nt1, nt2, ne, np1, np2) la calificacin se guardar (slo) hasta la convocatoria de julio del curso en cuestin.

CRITERIOS DE CALIFICACIN Evaluacin en modo slo examen final


Para aquellos alumnos que soliciten evaluacin de la asignatura en modo slo examen final en los plazos establecidos por la Universidad, se realizar un examen final en el que se evaluarn todos los bloques arriba mencionados, y que constar de: 2 tests equivalentes a nt1 y nt2 Un ejercicio prctico de implementacin ante ordenador, que cubra las pruebas prcticas de la asignatura (ne, np1, np2). La solicitud de esta modalidad se har mediante escrito dirigido al coordinador de la asignatura que se presentar en registro de la Facultad en los 15 das posteriores al inicio de las clases. El escrito se ajustar a este formato:

D. _____________________ con DNI __________ y n de matrcula __________ SOLICITA: Ser evaluado en este semestre mediante el sistema de evaluacin mediante slo prueba final establecido por las siguientes asignaturas: - Asignatura _________________ titulacin _______________ curso ________

- .. Firmado:

Actuacin ante copias y otros comportamientos fraudulentos


En la asignatura Concurrencia la realizacin de los ejercicios prctcos es fundamental para la adquisicin de los resultados de aprendizaje (como en toda asignatura relacionada con la construccin de SW). Por ello, se perseguir todo tipo de comportamiento fraudulento (como la copia de prcticas) y los alumnos implicados (copiadores y copiados anuentes) perdern las convocatorias del curso. El asunto ser notificado a Jefatura de Estudios y a los tutores curriculares de los alumnos. Se prev el uso de exmenes de la prctica a una seleccin de grupos como medio de lucha contra las copias

Contenidos y Actividades de Aprendizaje


1. 1.1. 1.2. 1.3. 2. Introduccin: concurrencia e interaccin Conceptos fundamentales de concurrencia (I4, I6) Manejo bsico de procesos en Java (I5) Sincronizacin de bajo nivel (I6) Metodologa: recursos compartidos

2.1. Notacin formal para especificar recursos compartidos (I1, I2) 2.2. Semntica de trazas de un sistema basado en recursos compartidos (I3) 3. Implementacin de recursos compartidos en Java 3.1. Memoria compartida con mtodos synchronized (I5) 3.2. Memoria compartida con cerrojos y variables condition (I5) 3.3. Paso de mensajes con la librera JCSP (I5)

Breve descripcin de las modalidades organizativas utilizadas y de los mtodos de enseanza empleados
BREVE DESCRIPCIN DE LAS MODALIDADES ORGANIZATIVAS UTILIZADAS Y METODOS DE ENSEANZA EMPLEADOS
CLASES DE TEORIA CLASES DE PROBLEMAS PRCTICAS TRABAJOS AUTONOMOS TRABAJOS EN GRUPO TUTORAS

Recursos didcticos
RECURSOS DIDCTICOS
Artculos varios Apuntes del profesorado

BIBLIOGRAFA

The Theory and Practice of Concurrency. A.W. Roscoe. Prentice-Hall, 1997 Concurrent and Real-Time Programming in Java. Andy Wellings. Wiley, 2004 Concurrent Programming in Java: Design Principles and Patterns. Doug Lea.Addison-Wesley, 1999 Pgina web de la asignatura (http://babel.upm.es/teaching/concurrencia)

RECURSOS WEB
Foro de la asignatura (foro-cc@babel.upm.es)

EQUIPAMIENTO

Aula

Cronograma de trabajo de la asignatura


Semana Actividades en Aula Actividades en Laboratorio Trabajo Individual Trabajo en Actividades de Otros Grupo Evaluacin

Semana 1 (5 horas) Semana 2 (5 horas) Semana 3 (5 horas)

Presentacin de la asignatura (1h)

Lectura: Concepts and Notations for Concurrent Program- ming (4 horas) Lectura: Tutorial de concurrencia de java.sun.com (1h) Ejer- cicio: Creacin de procesos en Java (1h) Ejercicio: Provocar una carrera (1h)

Preguntas y respuestas sobre conceptos bsicos de concurrencia (1h). Puesta en comn (1h).

Exclusin mutua; Algoritmos basados en espera activa (1h). Problemas de concurrencia en algoritmos de espera activa(1h). Exclusin mutua con semforos (1h). Puesta en comn (1h). Sincronizacin condicional (1h)

Ejercicio: implementacin de algoritmos de exclusin mutua basados en espera activa (3h).

Ejercicio: reparar una condicin de carrera con semforos. (1h)

Semana 4 (3 horas)


Ejercicio: productor-dato-consumidor con semforos (3h).

Semana 5 (5

Semana

Actividades en Aula

Actividades en Laboratorio

Trabajo Individual

Trabajo en Actividades de Otros Grupo Evaluacin

horas) Semana 6 (5 horas)

Puesta en comn: anlisis de trazas y esta- dos (1h). Sincronizacin de alto nivel: recursos com- partidos (1h). Recursos compartidos: semntica de trazas (1h). Ejercicio: productor-almacn-consumidor con semforos (3h).


Ejercicio: especificacin de recursos sencillos (3h).

Semana 7 (5 horas)

Recursos compartidos y problemas de exclusin parcial (lectores/escritores) (1h).

Puesta en comun (1h).


Semana 8 (5 horas)

Ejercicio: MultiBuffer con mtodos synchronized (3h)

Concurrencia mediante memoria compartida en Java: mtodos synchronized (1h).


Puesta en comn (1h).

Ejercicio: MultiBuffer con cerrojos (3h).

Semana 9 (5 horas)

Concurrencia mediante memoria compartida en Java: cerrojos y variables condition (1h). Puesta en comn (1h). Repaso, ejercicios en clase (1h).
Explicacin de la prctica (1h).


Desarrollo de caso prctico (3 horas).

Semana 10 (5 horas) Semana 11 (5 horas)

Repaso (1h). Repaso (1h).

Semana

Actividades en Aula

Actividades en Laboratorio

Trabajo Individual

Trabajo en Actividades de Otros Grupo Evaluacin

Semana 12 (5 Concurrencia mediante paso de mensajes: conceptos bsicos (1h). horas) Concurrencia mediante paso de mensajes en Java: la librera JCSP (1h). Semana 13 (6 horas)

Estudio individual (2h). Lectura: Andrews + Schneider (1h)

Prueba

objetiva (1h)

Ejercicio: MultiBuffer en JCSP (2h)

Tutora colectiva (1h).


Tutora colectiva (1h).


Desarrollo de caso prctico (4 horas). Desarrollo de caso prctico (2h)

Semana 14 (6 Tutora colectiva (1h). horas) Tutora colectiva (1h). Semana 15 (5 Afianzamiento de prcticas (1h) horas) Afianzamiento de prcticas (1h).

Desarrollo de caso prctico (2h)

Semana

Actividades en Aula

Actividades en Laboratorio

Trabajo Individual

Trabajo en Actividades de Otros Grupo Evaluacin

Semana 16 (5 Repaso + tutora colectiva (1h). horas) Repaso + tutora colectiva (1h).

Estudio individual (2h)

Prueba

objetiva (1h)

Nota: Para cada actividad se especifica la dedicacin en horas que implica para el alumno.
Aviso: Todas las fechas son orientativas. Las fechas exactas dependen del calendario escolar que se fije y sern publicadas en la web de la asignatura.

ANEXO: Fechas previstas de actividades de evaluacin, segn reunin de la Comisin de Coordinacin Horizontal de 4 Semestre. Ante cualquier modificacin de fechas en el calendario escolar, circunstancias imprevistas, se publicar el cambio en la web de la asignatura, se comunicar a la citada comisin y se avisar a los alumnos. 15/11/2013: 1 prueba de evaluacin continua. 29/11/2013: Entrega prctica 1 (fecha recomendada). 13/12/2013: Entrega prctica 2 (fecha recomendada). 20/12/2013: 2 prueba de evaluacin continua.

Vous aimerez peut-être aussi