Grupo: Grp Clases Teóricas Desarrollo de Aplicacion.(961118) ASIGNATURA:
"Desarrollo de Aplicaciones Distribuidas"
DATOS BÁSICOS DE LA ASIGNATURA/GRUPO
Titulación:
Asignatura:
Código:
Curso:
Año del plan de estudio:
Tipo:
Ciclo:
Período de impartición:
Departamento:
Créditos:
Dirección postal:
Centro:
Dirección electrónica:
0º
Segundo Cuatrimestre
Grado en Ingeniería Informática-Ingeniería de Computadores
Desarrollo de Aplicaciones Distribuidas E.T.S. Ingeniería Informática
Lenguajes y Sistemas Informáticos (Departamento responsable) 6
2010
3º Obligatoria 2040023
Grp Clases Teóricas Desarrollo de Aplicacion. (1 IC) Grupo:
Horas:
Área:
150
Lenguajes y Sistema Informáticos (Área principal)
PROFESORADO
TRINIDAD MARTIN-ARROYO, PABLO (COORDINADOR/A) 1
Titulacion: Grado en Ingeniería Informática-Ingeniería de Computadores Curso: 2013 - 2014
PROYECTO DOCENTE
OBJETIVOS Y COMPETENCIAS
Competencias transversales/genéricas Objetivos docentes específicos
El objetivo fundamental de la asignatura es dotar al alumno de los conocimientos y herramientas necesarias para abordar con éxito el proceso de diseño de aplicaciones distribuidas desde el punto de vista lógico y con un enfoque de ingeniería del software. Para esto, en primer lugar, se presentarán los distintos tipos de sistemas distribuidos y los principios básicos a tener en cuenta en su desarrollo. A continuación, se estudiarán diversas técnicas necesarias para la implementación de estos sistemas. Por último, se intentará dotar al alumno de las técnicas y metodologías necesarias para llevar a cabo el proceso de diseño de aplicaciones distribuidas desde un punto de vista de la ingeniería del software.
Competencias
- Capacidad para definir, evaluar y seleccionar plataformas hardware y software para el desarrollo y la ejecución de sistemas, servicios y aplicaciones informáticas.
- Capacidad para concebir y desarrollar sistemas o arquitecturas informáticas centralizadas o distribuidas integrando hardware, software y redes.
- Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
Competencias específicas
- Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.
- Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
- Capacidad de diseñar e implementar software de sistema y de comunicaciones.
- Capacidad de analizar, evaluar y seleccionar las plataformas hardware y software más adecuadas para el soporte de aplicaciones empotradas y de tiempo real.
- Capacidad para diseñar, desplegar, administrar y gestionar redes de computadores.
CONTENIDOS DE LA ASIGNATURA
Bloque 0: Contexto y sistemas de evaluación Bloque 1: Conceptos básicos
Bloque 2: Programación de sistemas distribuidos Bloque 3: Pruebas de sistemas distribuidos Bloque 4: Microdiseño de sistemas distribuidos Bloque 5: Macrodiseño de sistemas distribuidos
Bloque 6: Tecnologías para la construcción de sistemas distribuidos
Clases teóricas:
Tema 0: Contexto y sistemas de evaluación (1 hora) Tema 1: Introducción a los sistemas distribuidos (2 horas) Tema 2: Componentes y middlewares (2 horas)
Tema 3: Comunicación entre sistemas (4 horas) Tema 4: Despliegue de aplicaciones distribuidas (1 hora)
Tema 5: Arquitectura y propiedades de sistemas distribuidos (2 horas) Tema 6: Pruebas (2 horas)
Tema 7: Refactorización (2 horas) Tema 8: Patrones de diseño (2 horas) Prácticas de laboratorio:
Tema 10: Fundamentos de programación concurrente (3 horas) Tema 11: OSGi (4 horas)
Tema 12: Websockets (2 horas)
Tema 13: Despliegue en la nube (2 horas)
Tema 14: Integración e inspección continua (2 horas)
Relación sucinta de los contenidos (bloques temáticos en su caso)
Relación detallada y ordenación temporal de los contenidos
ACTIVIDADES FORMATIVAS
Relación de actividades formativas del cuatrimestre
Horas presenciales:
Horas no presenciales:
Competencias que desarrolla:
Metodología de enseñanza-aprendizaje:
18.0 18.0
- Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.
- Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
- Capacidad de diseñar e implementar software de sistema y de comunicaciones.
- Capacidad de analizar, evaluar y seleccionar las plataformas hardware y software más adecuadas para el soporte de aplicaciones empotradas y de tiempo real.
- Capacidad para diseñar, desplegar, administrar y gestionar redes de computadores.
- Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
El objetivo de la teoría es proporcionar los conocimientos necesarios para conseguir los objetivos de la asignatura y se realizarán en el aula de teoría. La mayoría de las clases de teoría son sesiones académicas teóricas en las que se exponen los contenidos de la asignatura a los alumnos. Sin embargo, existe un determinado conjunto de clases que se dedicarán a la resolución de problemas y se seguirá la técnica de exposición y debate intentando fomentar la participación de los alumnos. El objetivo de estas clases será el de afianzar los conocimientos teóricos expuestos.
Clases teóricas
Horas presenciales:
Horas no presenciales:
Competencias que desarrolla:
Metodología de enseñanza-aprendizaje:
14.0 14.0
- Capacidad de diseñar e implementar software de sistema y de comunicaciones.
- Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.
- Capacidad para concebir y desarrollar sistemas o arquitecturas informáticas centralizadas o distribuidas integrando hardware, software y redes.
El objetivo de las clases de prácticas es proporcionar la habilidad de aplicar en la práctica los conceptos teóricos vistos en clase a través de uno o más proyectos de ejemplo.
Prácticas de Laboratorio
Horas presenciales:
Horas no presenciales:
Competencias que desarrolla:
Metodología de enseñanza-aprendizaje:
12.0 0.0
- Capacidad para definir, evaluar y seleccionar plataformas hardware y software para el desarrollo y la ejecución de sistemas, servicios y aplicaciones informáticas.
- Capacidad para concebir y desarrollar sistemas o arquitecturas informáticas centralizadas o distribuidas integrando hardware, software y redes.
- Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.
- Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
- Capacidad de diseñar e implementar software de sistema y de comunicaciones.
- Capacidad de analizar, evaluar y seleccionar las plataformas hardware y software más adecuadas para el soporte de aplicaciones empotradas y de tiempo real.
Se realizará un seguimiento presencial de los trabajos en grupo que tienen que realizar los estudiantes.
Tutorías colectivas de contenido programado
Horas presenciales:
Horas no presenciales:
Competencias que desarrolla:
Metodología de enseñanza-aprendizaje:
4.0 4.0
- Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
- Capacidad de analizar, evaluar y seleccionar las plataformas hardware y software más adecuadas para el soporte de aplicaciones empotradas y de tiempo real.
- Capacidad para diseñar, desplegar, administrar y gestionar redes de computadores.
- Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.
Se propondrá la resolución por parte de los estudiantes de diversos problemas a propuesta del profesor a fin de que se desarrolle la capacidad de aplicar y verificar conocimientos. Los problemas podrán proponerse con antelación a fin de que el estudiante realice esta actividad sin presencia del profesor.
AAD con presencia del profesor
Horas presenciales:
Horas no presenciales:
4.0 14.0 Exámenes
Horas presenciales:
Horas no presenciales:
Competencias que desarrolla:
Metodología de enseñanza-aprendizaje:
0.0 36.0
- Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
- Capacidad de analizar, evaluar y seleccionar las plataformas hardware y software más adecuadas para el soporte de aplicaciones empotradas y de tiempo real.
- Capacidad para diseñar, desplegar, administrar y gestionar redes de computadores.
- Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.
Se planteará una práctica en la asignatura que los alumnos deberán desarrollar en grupo de manera que pongan en práctica los conceptos y destrezas adquiridos en las clases teóricas y las prácticas.
AAD sin presencia del profesor
Horas presenciales:
Horas no presenciales:
Competencias que desarrolla:
Metodología de enseñanza-aprendizaje:
8.0 4.0
- Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
- Capacidad de diseñar e implementar software de sistema y de comunicaciones.
- Capacidad para diseñar, desplegar, administrar y gestionar redes de computadores.
- Capacidad para definir, evaluar y seleccionar plataformas hardware y software para el desarrollo y la ejecución de sistemas, servicios y aplicaciones informáticas.
- Capacidad para concebir y desarrollar sistemas o arquitecturas informáticas centralizadas o distribuidas integrando hardware, software y redes.
A lo largo del curso se propondrá la realización de diversos trabajos de profundización sobre los aspectos a tratar en la asignatura. Los alumnos realizarán exposiciones orales de estos trabajos y/o entregarán trabajos evaluables.
Exposiciones y seminarios
BIBLIOGRAFÍA Y OTROS RECURSOS DOCENTES Bibliografía general
Software Architecture in Practice
L. Bass, P. Clements, R. Kazman 2
Addison-Wesley
Autores: Edición:
Publicación: ISBN:
Sistemas Distribuidos. Principios y Paradigmas
Andrew .S.Tanenbaum, Maarten van
Steen 2
Prentice Hall
Autores: Edición:
Publicación: ISBN: 970-26-1280-2
Programación concurrente en Java. Principios y patrones de diseño
Doug Lea 2
Addison-Wesley
Autores: Edición:
Publicación: ISBN: 8478290389
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects, Volume 2 Douglas C. Schmidt, Michael Stal, Hans
Rohnert, Frank Buschmann 1
Wiley&Sons
Autores: Edición:
Publicación: ISBN: 0-471-60695-2
Bibliografía específica
Design & Use of Software Architectures: Adopting and Evolving a Product-Line Approach
J. Bosch 1
ACM Press
Autores: Edición:
Publicación: ISBN:
Pattern-Oriented Software Architecture: A System of Patterns
F. Buschmann et al. 1
John Wiley & Sons
Autores: Edición:
Publicación: ISBN:
NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence
P. J. Sadalage, M. Fowler
Addison-Wesley Educational Publishers Inc
Autores: Edición:
Publicación: ISBN: 978-0321826626
OSGi in Action: Creating Modular Applications in Java
R. Hall, K. Pauls, S. McCulloch , D.
Savage 1
Manning Publications
Autores: Edición:
Publicación: ISBN: 978-1933988917
SISTEMAS Y CRITERIOS DE EVALUACIÓN Y CALIFICACIÓN
Sistema de evaluación
Pruebas de conocimiento
Se hará uso de cualquier mecanismo que permita evaluar el conocimiento individual del alumno sobre el contenido de la asignatura así como las destrezas adquiridas en su aplicación.
Trabajo en grupo
Consistirá en el desarrollo de un caso de estudio que deberá tener el visto bueno de los profesores de la asignatura. El trabajo deberá realizarse en grupos, cuyo tamaño mínimo y máximo se establecerá en cada uno de los proyectos docentes, siendo la valoración del trabajo individual. El trabajo tendrá entregas intermedias y una entrega final que será evaluada oralmente. Un trabajo se entenderá como presentado cuando se haya realizado un número de entregas intermedias determinado en cada proyecto docente.
Portfolio
Cada estudiante dispondrá de un portfolio donde se acumularán aquellos trabajos voluntarios y obligatorios que los profesores encarguen durante el desarrollo de la asignatura.
Asistencia a clase
Los profesores podrán controlar y evaluar la asistencia de los estudiantes a algunas o todas las actividades presenciales.
La evaluación del desempeño del estudiante se realizará mediante tres pruebas:
- Trabajo en grupo (TG): Los grupos de trabajo tendrán un mínimo y máximo de alumnos que será publicado para cada convocatoria. A cada grupo se le asignará un tutor de entre los profesores de prácticas de la asignatura, que definirá con los integrantes de cada grupo la temática del trabajo a desarrollar y establecerá un calendario de entregas intermedias. Un TG se entiende por evaluado cuando al menos se han realizado la mitad de las entregas intermedias del mismo. Los profesores definirán la fecha de entrega para los TG en cada convocatoria. A los miembros de cada grupo se les citará para realizar una presentación y se someterán a un examen oral sobre su TG. Se evaluará de 0 a 10 puntos. La evaluación será individual.
Los estudiantes deberán solicitar por escrito la inscripción a un grupo de trabajo para la realización de TG. La presentación de solicitudes a partir del comienzo de la segunda semana del cuatrimestre se podrá penalizar.
Los detalles sobre el material entregable, plazos y criterios de evaluación y el procedimiento de inscripción en grupos serán publicados en el documento "Normas para la realización de prácticas" que será entregado a los estudiantes al comienzo del curso.
- Porfolio (POR): Cada alumno dispondrá de un portfolio que contendrá el conjunto de trabajos opcionales y obligatorios que desarrolle de entre aquellos propuestos por los profesores a lo largo del curso o que sean propuestos por el propio estudiante previa autorización por parte del profesorado. También formarán parte del portfolio las actuaciones del alumno en clase y en las plataformas digitales que se habiliten. Se evaluará de 0 a 10 puntos.
- Pruebas de conocimiento (PC): Se realizaran pruebas escritas en las que se evaluara el conocimiento y la destreza adquiridas por el alumno en el conocimiento teorico y practico de la asignatura. Este aspecto se evaluara de 0 a 10 puntos.
Cada estudiante deberá firmar al comienzo del cuatrimestre un contrato de aprendizaje que afectará a la forma en la que se ponderará cada prueba de evaluación. El contrato de aprendizaje contendrá al menos los siguientes aspectos:
- Ponderación del TG (P1): entre el 50 y el 80 por ciento.
- Ponderación del POR (P2): entre el 10 y el 30 por ciento - Ponderación de la PC (P3): entre el 0 y el 30 por ciento.
- Reconocimiento individual de que todos y cada uno de los miembros del grupo han leído y comprendido la guía y proyectos docentes y las normas para la realización de prácticas.
Aquellos alumnos que no hayan entregado el contrato de aprendizaje se les aplicarán las siguientes ponderaciones: P1 = 50%, P2 = 20%, P3 = 30%
La nota final por evaluación continua y ordinaria se calculará siguiendo el siguiente método de cálculo: Nota = P1·TG + P2·POR + P3·PC
EVALUACIÓN CONTINUA
Para que un estudiante se considere evaluado de forma continua debe cumplir todas y cada una de las siguientes condiciones:
- Haber firmado y entregado el contrato de aprendizaje antes de la última clase de la segunda semana de clases.
- Haber realizado todas las pruebas de conocimiento que se organicen en horario lectivo y haber evaluado su trabajo en grupo.
- Obtener un minimo de 4 puntos sobre 10 de valoracion en cada una de las pruebas de evaluacion obligatorias (PCG y TG).
- Alcanzar un minimo de un 70% de asistencia a clase. Se controlara la asistencia de los alumnos a varias sesiones aleatorias de clase. Se entendera por asistencia la permanencia del alumno durante la totalidad de la sesion. El abandono injustificado o retraso en la asistencia sera considerado como NO asistencia.
EVALUACIÓN ORDINARIA
La evaluación de TG, POR y PC tendrá lugar en cada una de las convocatorias ordinarias establecidas por el centro. El estudiante deberá alcanzar en cada una de las partes una puntuación mínima de 5 puntos. En caso contrario la nota máxima que podrá alcanzar será la de suspenso(4).
Criterios de calificación
Aquel alumno que habiendo alcanzado una puntuación mínima de 5 puntos en TG, POR y/o PC y no alcance el aprobado podrá conservar las correspondientes calificaciones durante las convocatorias ordinarias establecidas para el presente curso. Esto no será aplicable para convocatorias de cursos posteriores.
CALENDARIO DE EXÁMENES
CENTRO: E.T.S. Ingeniería Informática
18/6/2014 0:0
Por definir
Fecha: Hora:
Aula:
1 ª Convocatoria
CENTRO: E.T.S. Ingeniería Informática
9/9/2013 0:0
Por definir
Fecha: Hora:
Aula:
2 ª Convocatoria
Anotaciones relativas al calendario de exámenes
La fecha de la tercera convocatoria así como los horarios y aulas específicos de cada convocatoria serán notificadas por la dirección del centro.
TRIBUNALES ESPECÍFICOS DE EVALUACIÓN Y APELACIÓN
SERGIO SEGURA RUEDA Presidente:
Vocal: PABLO NEIRA AYUSO
PABLO FERNANDEZ MONTES Secretario:
Primer suplente: CRISTINA RUBIO ESCUDERO BEATRIZ PONTES BALANZA Segundo suplente:
FERMIN CRUZ MATA Tercer suplente:
ANEXO 1:
HORARIOS DEL GRUPO DEL PROYECTO DOCENTE
Los horarios de las actividades no principales se facilitarán durante el curso.
GRUPO: Grp Clases Teóricas Desarrollo de Aplicacion. (961118)
Calendario del grupo
CLASES DEL PROFESOR: TRINIDAD MARTIN-ARROYO, PABLO