Guías Docentes Electrónicas
1. DATOS GENERALES
Asignatura:
MÉTODOS AVANZADOS DE DESARROLLO SOFTWARE
Código:
42368
Tipología:
OPTATIVA
Créditos ECTS:
6
Grado:
346 - GRADO EN INGENIERÍA INFORMÁTICA (AB)
Curso académico:
2018-19
Centro:
604 - E.S. DE INGENIERIA INFORMATICA ALBACETE
Grupo(s):
17 
Curso:
4
Duración:
C2
Lengua principal de impartición:
Inglés
Segunda lengua:
Uso docente de otras lenguas:
English Friendly:
S
Página web:
Bilingüe:
N
Profesor: VALENTIN VALERO RUIZ - Grupo(s): 17 
Edificio/Despacho
Departamento
Teléfono
Correo electrónico
Horario de tutoría
ESII / 1.A.14
SISTEMAS INFORMÁTICOS
2499
valentin.valero@uclm.es

2. REQUISITOS PREVIOS

Los requisitos previos para poder asimilar convenientemente la asignatura son:

  • Conocer y aplicar los fundamentos del desarrollo de software y los conceptos y principios del diseño orientado a objetos (Metodologías de Programación)
  • Conocer el Lenguaje Unificado de Modelado - UML (Ingeniería del Software I)
  • Analizar y diseñar software a diferentes niveles de abstracción (Ingeniería del Software I) 
  • Tener la capacidad para plasmar el análisis y diseño de software en código fuente (Ingeniería del Software I)

Desde el punto de vista práctico, y a nivel informativo, utilizaremos el lenguaje de programación Java y el entorno de desarrollo Eclipse.
 

3. JUSTIFICACIÓN EN EL PLAN DE ESTUDIOS, RELACIÓN CON OTRAS ASIGNATURAS Y CON LA PROFESIÓN

A lo largo del tiempo, el desarrollo de software ha evolucionado considerablemente.

En un principio, los desarrollos se llevaban a cabo de manera totalmente artesanal. A medida que los desarrollos comenzaron a aumentar su complejidad, surge lo que se denominó la crisis del software. Esta crisis ha estado siendo abordadacon la creación de procesos y metodologías de desarrollo de software que incluyen nuevos paradigmas de programación. En consecuencia, el desarrollo de software fue tomando una forma más ingenieril.

Como en todas las ingenierías, la utilización de modelos como herramienta de especificación de productos software complejos se ha extendido. Los modelos como herramienta de especificación y diseño de software nos permiten simplificar algo que podemos "ver", para poder manipularlo y razonar sobre él.

Los métodos avanzados de desarrollo de software se basan en la utilización de modelos como elementos centrales del desarrollo de software, de la misma forma que los ingenieros civiles utilizan planos para construir puentes o los ingenieros electrónicos utilizan representaciones gráficas de circuitos.

La utilización de modelos brinda muchas ventajas, como la detección de problemas en las etapas tempranas del desarrollo o la no dependencia de las plataformas, tecnologías, o lenguajes implicados.

Una aplicación en la que estos métodos son particularmente eficientes es la generación de líneas de productos de software (familia de aplicaciones relacionadas).


4. COMPETENCIAS DE LA TITULACIÓN QUE LA ASIGNATURA CONTRIBUYE A ALCANZAR
Competencias propias de la asignatura
Código Descripción
INS1 Capacidad de análisis, síntesis y evaluación.
INS4 Capacidad de resolución de problemas aplicando técnicas de ingeniería.
IS3 Capacidad de dar solución a problemas de integración en función de las estrategias, estándares y tecnologías disponibles.
IS4 Capacidad de identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales.
IS6 Capacidad para diseñar soluciones apropiadas en uno o más dominios de aplicación utilizando métodos de la ingeniería del software que integren aspectos éticos, sociales, legales y económicos.
PER1 Capacidad de trabajo en equipo.
SIS3 Aprendizaje autónomo.
UCLM2 Capacidad para utilizar las Tecnologías de la Información y la Comunicación.
5. OBJETIVOS O RESULTADOS DE APRENDIZAJE ESPERADOS
Resultados de aprendizaje propios de la asignatura
Descripción
Demostrar capacidades de evaluación de alternativas siempre desde una perspectiva ingenieril.
Demostrar capacidades para la definición y explotación de líneas de producto software.
Manejar diferentes estrategias de diseño y desarrollo software, siendo capaz de decidir la mejor de ellas para abordar un problema dado.
Resultados adicionales
No se han establecido.
6. TEMARIO
  • Tema 1: Descripción de diferentes perspectivas de desarrollo software
    • Tema 1.1: Introducción
    • Tema 1.2: Terminología y conceptos
  • Tema 2: Introducción a los conceptos asociados con el DDM (Desarrollo Dirigido por Modelos)
    • Tema 2.1: Modelos y UML
    • Tema 2.2: Meta-modelos y MOF
    • Tema 2.3: Object Constraint Language
    • Tema 2.4: Eclipse Modeling Framework
    • Tema 2.5: Lenguajes Específicos de Dominio
    • Tema 2.6: Graphical Modeling Framework
  • Tema 3: Herramientas y técnicas asociadas al desarrollo de aplicaciones basadas en DDM
    • Tema 3.1: Transformación de modelos
    • Tema 3.2: Modelos de Marcado
    • Tema 3.3: Transformaciones modelo a modelo (ATL)
    • Tema 3.4: Transformaciones modelo a texto (ACCELEO)
  • Tema 4: Estudio de líneas de producto como ejemplo de aplicación de DDM
    • Tema 4.1: Introducción a las líneas de productos de software
    • Tema 4.2: Ejemplos
7. ACTIVIDADES O BLOQUES DE ACTIVIDAD Y METODOLOGÍA
Actividad formativa Metodología Competencias relacionadas (para títulos anteriores a RD 822/2021) ECTS Horas Ev Ob Rec Descripción *
Enseñanza presencial (Teoría) [PRESENCIAL] Método expositivo/Lección magistral IS3 IS4 IS6 0.42 10.5 N N N Teoria
Talleres o seminarios [PRESENCIAL] Aprendizaje cooperativo/colaborativo IS3 IS4 PER1 0.7 17.5 S N N Teoría
Tutorías individuales [PRESENCIAL] Aprendizaje cooperativo/colaborativo IS3 IS4 IS6 0.18 4.5 N N N Teoría
Pruebas de progreso [PRESENCIAL] Pruebas de evaluación INS1 INS4 IS3 IS4 IS6 0.1 2.5 S S S Teoría
Enseñanza presencial (Prácticas) [PRESENCIAL] Aprendizaje orientado a proyectos INS4 IS3 IS4 PER1 0.8 20 S S N Práctica
Pruebas de progreso [PRESENCIAL] Pruebas de evaluación INS4 IS3 IS4 PER1 0.2 5 S S S Práctica
Estudio o preparación de pruebas [AUTÓNOMA] Trabajo autónomo IS3 IS4 IS6 1.5 37.5 N N S Teoria
Elaboración de informes o trabajos [AUTÓNOMA] Aprendizaje cooperativo/colaborativo INS1 INS4 IS4 PER1 SIS3 UCLM2 0.9 22.5 S N N Teoria
Elaboración de memorias de Prácticas [AUTÓNOMA] Aprendizaje orientado a proyectos INS1 INS4 IS3 IS4 IS6 PER1 SIS3 UCLM2 1.2 30 N N S Prácticas
Total: 6 150
Créditos totales de trabajo presencial: 2.4 Horas totales de trabajo presencial: 60
Créditos totales de trabajo autónomo: 3.6 Horas totales de trabajo autónomo: 90

Ev: Actividad formativa evaluable
Ob: Actividad formativa de superación obligatoria
Rec: Actividad formativa recuperable

8. CRITERIOS DE EVALUACIÓN Y VALORACIONES
  Valoraciones  
Sistema de evaluación Estudiante presencial Estud. semipres. Descripción
Pruebas de progreso 30.00% 0.00% [ESC] La Teoría se evalúa a partir de la realización de cuestionarios de selección múltiple semanales de entre aproximadamente 10 y 30 preguntas.

Las preguntas multiple-choice suman 1 punto si son correctas, restan 0,5 sin son incorrectas y 0 si no se contestan.
Realización de prácticas en laboratorio 45.00% 0.00% [LAB] Consta de 4 prácticas divididas en dos partes: tutorial y ejercicios.
La evaluación se realiza sobre los ejercicios, con rúbricas perfectamente definidas en cada práctica.

Los temas que se tendrán en cuenta son:
- Práctica 1: EMF (25%)
- Práctica 2: GMF (30%)
- Práctica 3: ATL (20%)
- Práctica 4: ACCELEO (25%)
Elaboración de trabajos teóricos 15.00% 0.00% [INF] Se evalúa la presentación de un trabajo teórico en relación a la integración de aspectos éticos, sociales, legales y económicos en un dominio particular
Valoración de la participación con aprovechamiento en clase 10.00% 0.00% [PRES] Entrega de seminarios
Total: 100.00% 0.00%  

Criterios de evaluación de la convocatoria ordinaria:
Las actividades a evaluar son:
1) Pruebas de progreso (cuestionario teórico),
2) Realización de prácticas de laboratorio (entrega y evaluación de prácticas),
3) Elaboración de trabajos teórico (informe) y
4) Participación en seminarios (entrega de seminarios).

Los requisitos mínimos para aprobar las asignatura son:
1) Se necesitan aprobar TODOS los cuestionarios de teoría [1],
2) Se necesitan aprobar las prácticas (PROMEDIO) [2],
3) Entrega del del trabajo teórico (OPCIONAL) [3] y
4) Se necesita estar presente en los seminarios (NO SE RECUPERAN) [4].

Evaluación:
La nota de la asignatura será la suma ponderada de las prácticas, los cuestionarios de teoría, el trabajo de teoría y la entrega de seminarios.

Recuperación de Teoría (cuestionarios):
Si el alumno no ha aprobado TODOS los cuestionarios, entonces deberá realizar un examen escrito que consta de 40 preguntas: 30 preguntas de selección múltiple y 10 preguntas de desarrollo.

Las preguntas de selección múltiple suman 1 punto si son correctas, restan 0,5 sin son incorrectas y 0 si no se contestan. Las preguntas de desarrollo si son correctas, suman 1 punto (deben estar perfectas), sino no cuentan. Hay 120 minutos para hacer el examen.

Recuperación de Prácticas:
Si el alumno no ha superado las prácticas entonces debe presentar las prácticas de manera INDIVIDUAL.
Dichas prácticas, serán evaluadas bajo los mismos criterios y rúbricas de evaluación que han sido definidas durante la asignatura.
Para evaluar las prácticas se debe pedir turno al menos 7 días antes de la fecha de la convocatoria para concretar día y hora de la evaluación.
Particularidades de la convocatoria extraordinaria:
El modo de evaluación es similar al ordinario. Para aprobar la asignatura en esta convocatoria:
1) se debe aprobar un cuestionario teórico que puede tener una longitud extra de hasta un 50% en cuanto a la cantidad de preguntas.
2) se deben aprobar TODAS las prácticas.

En el caso de la recuperación de las prácticas, se sigue el mismo criterio, son individuales y debe concertarse una cita al menos 7 días antes de la convocatoria para su evaluación.
Particularidades de la convocatoria especial de finalización:
Modo de evaluación idéntico al extraordinario.
9. SECUENCIA DE TRABAJO, CALENDARIO, HITOS IMPORTANTES E INVERSIÓN TEMPORAL
No asignables a temas
Horas Suma horas

Tema 1 (de 4): Descripción de diferentes perspectivas de desarrollo software
Actividades formativas Horas
Enseñanza presencial (Teoría) [PRESENCIAL][Método expositivo/Lección magistral] 2.5
Pruebas de progreso [PRESENCIAL][Pruebas de evaluación] .75
Estudio o preparación de pruebas [AUTÓNOMA][Trabajo autónomo] 5.5
Periodo temporal: 1 semana

Tema 2 (de 4): Introducción a los conceptos asociados con el DDM (Desarrollo Dirigido por Modelos)
Actividades formativas Horas
Enseñanza presencial (Teoría) [PRESENCIAL][Método expositivo/Lección magistral] 5
Talleres o seminarios [PRESENCIAL][Aprendizaje cooperativo/colaborativo] 11.5
Tutorías individuales [PRESENCIAL][Aprendizaje cooperativo/colaborativo] 2.75
Pruebas de progreso [PRESENCIAL][Pruebas de evaluación] 1.25
Enseñanza presencial (Prácticas) [PRESENCIAL][Aprendizaje orientado a proyectos] 10
Pruebas de progreso [PRESENCIAL][Pruebas de evaluación] 3
Estudio o preparación de pruebas [AUTÓNOMA][Trabajo autónomo] 18
Elaboración de informes o trabajos [AUTÓNOMA][Aprendizaje cooperativo/colaborativo] 16
Elaboración de memorias de Prácticas [AUTÓNOMA][Aprendizaje orientado a proyectos] 15
Periodo temporal: 6 semanas

Tema 3 (de 4): Herramientas y técnicas asociadas al desarrollo de aplicaciones basadas en DDM
Actividades formativas Horas
Enseñanza presencial (Teoría) [PRESENCIAL][Método expositivo/Lección magistral] 2
Talleres o seminarios [PRESENCIAL][Aprendizaje cooperativo/colaborativo] 5
Tutorías individuales [PRESENCIAL][Aprendizaje cooperativo/colaborativo] 1.75
Pruebas de progreso [PRESENCIAL][Pruebas de evaluación] .5
Enseñanza presencial (Prácticas) [PRESENCIAL][Aprendizaje orientado a proyectos] 10
Pruebas de progreso [PRESENCIAL][Pruebas de evaluación] 2
Estudio o preparación de pruebas [AUTÓNOMA][Trabajo autónomo] 9
Elaboración de informes o trabajos [AUTÓNOMA][Aprendizaje cooperativo/colaborativo] 6.5
Elaboración de memorias de Prácticas [AUTÓNOMA][Aprendizaje orientado a proyectos] 15
Periodo temporal: 6 semanas

Tema 4 (de 4): Estudio de líneas de producto como ejemplo de aplicación de DDM
Actividades formativas Horas
Enseñanza presencial (Teoría) [PRESENCIAL][Método expositivo/Lección magistral] 1
Talleres o seminarios [PRESENCIAL][Aprendizaje cooperativo/colaborativo] 1
Estudio o preparación de pruebas [AUTÓNOMA][Trabajo autónomo] 5
Periodo temporal: 2 semanas

Actividad global
Actividades formativas Suma horas
Comentarios generales sobre la planificación: Esta planificación es ORIENTATIVA, pudiendo variar a lo largo del periodo lectivo en función de las necesidades docentes, festividades, o por cualquier otra causa imprevista. La planificación semanal de la asignatura podrá encontrarse de forma detallada y actualizada en la plataforma Campus Virtual (Moodle)
10. BIBLIOGRAFÍA, RECURSOS
Autor/es Título Libro/Revista Población Editorial ISBN Año Descripción Enlace Web Catálogo biblioteca
 
Anneke Kleppe, Jos Warmer, Wim Bast MDA Explained, The Model Driven Architecture: Practice and Promise Addison-Wesley 978-0321194428 2003 https://www.oreilly.com/library/view/mda-explained-the/032119442X/  
Jesús García Molina, Félix O. García Rubio, Vicente Pelechano, Antonio Vallecillo, Juan Manuel Vara, Cristina Vicente-Chicote Desarrollo de Software Dirigido por Modelos: Conceptos, Métodos y Herramientas Ra-Ma 978-84-9964-215-4 2013  
Marco Brambilla, Jordi Cabot, and Manuel Wimmer Model-Driven Software Engineering in Practice: Second Edition Morgan & Claypool 9781627057080 2017 https://mdse-book.com/  
Oscar Pastor, Juan Carlos Molina Model-Driven Architecture in Practice. A Software Production Environment Based on Conceptual Modeling Springer 978-3540718673 2007 https://link.springer.com/book/10.1007%2F978-3-540-71868-0  
Stephen J. Mellor, Kendall Scott, Axel Uhl, Dirk Weise MDA Distilled, Principles of Model Driven Architecture Addison-Wesley Professional 978-0201788914 2004  



Web mantenido y actualizado por el Servicio de informática