Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Ampliación de Ingeniería del Software Michel Maes michel.maes@urjc.es Óscar Soto oscar.soto@urjc.es 01-2023 Micael Gallego Correo: micael.gallego@urjc.es Twitter: @micael_gallego Presentación de la Asignatura Francisco Gortázar Correo: francisco.gortazar@urjc.es Twitter: @fgortazar 01-2023 ©2023 Micael Gallego, Francisco Gortázar, Michel Maes, Óscar Soto Algunos derechos reservados Este documento se distribuye bajo la licencia “Atribución-CompartirIgual 4.0 Internacional” de Creative Comons Disponible en https://creativecommons.org/licenses/by-sa/4.0/deed.es https://creativecommons.org/licenses/by-sa/4.0/deed.es 3 3 3 Datos de la Asignatura •Ampliación de Ingeniería del Software Tipo: Obligatoria Materia: Ingeniería del Software Período de impartición: Segundo semestre Créditos: 6 ● Clase: 28 clases de 2h 56h→ ● Trabajo total: 180h (58h clase / 124h fuera) Web: Aula Virtual 4 4 4 Objetivos Cubrir conceptos avanzados relacionados con la Ingeniería del Software La asignatura previa Ingeniería del Software proporciona una introducción a la materia y cubre los procesos básicos – Requisitos – Análisis – Diseño Esta asignatura cubre el fin del ciclo de desarrollo incluyendo – Pruebas del Software – Gestión de la Configuración – Mantenimiento del Software y Calidad – Gestión de proyectos • Tradicional • Ágil 5 5 5 Objetivos •El temario de la asignatura se divide en 5 temas: Tema 1: Pruebas y calidad del software Tema 2: Mantenimiento y evolución del software Tema 3: Gestión de la configuración del software Tema 4: Gestión de proyectos Tema 5: Procesos ágiles en la gestión de proyectos 6 6 6 Temario Tema 1: Pruebas y calidad del software – Introducción – Pruebas unitarias y de integración – Pruebas de sistema – Calidad Software – Análisis estático de código 7 7 7 Temario Tema 2: Mantenimiento y evolución del software – Introducción – Refactorización – Desarrollo dirigido por las pruebas 8 8 8 Temario Tema 3: Gestión de la configuración del software – Introducción – Control de versiones del software – Integración continua – Entrega y despliegue continuo 9 9 9 Temario Tema 4: Gestión de proyectos – Introducción – Gestión del proyecto: personal, proceso y producto – Estrategias de dirección y equipos de proyecto – Planificación de proyectos 10 10 10 Temario Tema 5: Procesos ágiles en la gestión de proyectos – Introducción – Programación extrema (XP) – Lean – Scrum – Kanban 11 11 11 Metodología Docente Aulas (Móstoles): – X 9:00-11:00 Lab. Polivalentes II 109(61) – J 13:00-15:00 Lab. Polivalentes II 108(60) La asignatura es muy práctica – Se intercalan explicaciones teóricas con ejercicios – Se dejará algún tiempo para realización de ejercicios por parte de los alumnos – Es muy recomendable practicar en clase con el profesor 12 12 12 Metodología Docente • Dedicación a la asignatura: 6 créditos ECTS corresponden a 180h (56h clase / 124h fuera) ● Clase: 56h (28 sesiones de 2h) – Clases magistrales – Presentación de ejemplos – Casos prácticos a resolver por los alumnos – Realización de las prácticas – Preguntar dudas / pedir ayuda ● Resto del tiempo: 124h – Hacer ejercicios – Hacer las prácticas – Estudiar contenidos para el examen 13 13 13 Metodología Docente •Software necesario: Google Chrome, Visual Studio Code, Java 17, Maven 3.8, Eclipse STS •Software libre •Se recomienda traer el portátil a clase (eso facilita trabajar en el aula y en casa) 14 14 14 Evaluación •Prácticas: 60% – Práctica 1: 20% – Práctica 2: 20% – Práctica 3: 20% •Examen: 40% – Presencial en fecha oficial 15 15 15 Evaluación Es necesario aprobar cada prueba por separado (con un 5 o más) para aprobar la asignatura – La nota será la media ponderada (de acuerdo a los porcentajes indicados) Las pruebas superadas se guardan para la convocatoria extraordinaria – Pero no para cursos posteriores Las fechas de entrega de las prácticas se indicarán a través del foro general de la asignatura en el aula virtual – Asegúrate de estar suscrito a él (por defecto debéis estar suscritos) Las prácticas se pueden hacer en grupos de hasta 2 personas 16 16 16 Evaluación •Prácticas: – 3 Prácticas – Práctica 1: Testing de aplicaciones Web (Contenido del Tema 1) – Práctica 2: Desarrollo de una aplicación utilizando TDD (Contenido del Tema 2) – Práctica 3: Puesta en práctica de un sistema de integración continua de una aplicación web (Contenido del Tema 3) 17 17 17 Evaluación •Examen: – Parte práctica (3 puntos): Programación de un test (en papel) – Parte teórica (7 puntos): ● Preguntas cortas (4 puntos) ● Preguntas tipo test (3 puntos) 18 18 18 Calendario Día Actividades de clase 25 Enero Presentación asignatura (Hoy) 26 Enero Tema 1.1 Introducción al Testing 1 Febrero Tema 1.2 Pruebas Unitarias - Introducción y Casos de Test 2 Febrero Tema 1.2 Pruebas Unitarias – Aserciones y Dobles 8 Febrero Tema 1.3 Desarrollo Web con Spring y Java 9 Febrero Tema 1.4 Pruebas de Sistema: Web / Presentación Práctica 1 15 Febrero Tema 1.5 APIs REST con Spring y Java 16 Febrero Tema 1.6 Pruebas de sistema: API REST 22 Febrero Resolución de dudas - Práctica 1 23 Febrero Tema 1.7 Calidad del software 1 Marzo Tema 1.7 Calidad del software 2 Marzo Tema 1.8 Análisis estático de código 8 Marzo Tema 2.1 Introducción al mantenimiento software 9 Marzo Tema 2.2-2.3 – TDD y Refactorización / Presentación Práctica 2 19 19 19 Calendario Día Actividades de clase 15 Marzo Resolución de dudas - Práctica 2 16 Marzo Tema 3.1-3.2 – Introducción a G. de la Configuración y Git 22 Marzo Tema 3.3 – Introducción a Integración Continua 23 Marzo Tema 3.4 – Integración Continua con GitHub Actions 29 Marzo Tema 3.5 – Artefactos, repositorios y versiones 30 Marzo Tema 3.6 – Entrega Continua con Docker y Github Actions 12 Abril Tema 3.7 – Despliegue Continuo con GitHub actions 13 Abril Presentación Práctica 3 - Resolución de dudas 19 Abril Tema 4.1 Gestión de proyectos: Conceptos 20 Abril Tema 4.2 Gestión de proyectos: Planificación 26 Abril Tema 4.2Gestión de proyectos: Planificación 27 Abril Tema 5 – Procesos ágiles en gestión de proyectos 3 Mayo Tema 5 – Procesos ágiles en gestión de proyectos 4 Mayo Resolución de dudas – Exámen Bibliografía Ingeniería del Software – Ian Sommervile – Addison Wesley – 2011 https://brain.urjc.es/permalink/f/1frnn0d/34URJC_ALMA5110675305000421 6 https://brain.urjc.es/permalink/f/1frnn0d/34URJC_ALMA51106753050004216 https://brain.urjc.es/permalink/f/1frnn0d/34URJC_ALMA51106753050004216 Bibliografía Effective unit testing – Lasse Koskela – Hanning – 2013 https://www.oreilly.com/library/view/effective-unit-testing/9781935182573/?a r https://www.oreilly.com/library/view/effective-unit-testing/9781935182573/?ar https://www.oreilly.com/library/view/effective-unit-testing/9781935182573/?ar Bibliografía Test driven development – Kent Beck – Addison Wesley – 2002 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_safari_books_1_0321146530 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_safari_books_1_0321146530 Bibliografía Refactoring: improving the design of existing code –Martin Fowler – Addison Wesley – 2019 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_safari_books_978013475768 1 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_safari_books_9780134757681 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_safari_books_9780134757681 Bibliografía Continuous Integration: Improving Software Quality and Reducing Risk – Paul Duvall, Steve Matyas, Andrew Glover – Addison Wesley – 2007 https://brain.urjc.es/permalink/f/1frnn0d/34URJC_ALMA5184922590004216 https://brain.urjc.es/permalink/f/1frnn0d/34URJC_ALMA5184922590004216 Bibliografía Extreme Programming explained: embrace change – Kent Beck, Cynthia Andres– Addison Wesley – 2004 https://brain.urjc.es/permalink/f/1frnn0d/34URJC_ALMA5184545440004216 https://brain.urjc.es/permalink/f/1frnn0d/34URJC_ALMA5184545440004216 Bibliografía The agile samurai – Jonathan Rasmusson – Pragmatic Programmers – 2017 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_askewsholts_vlebooks_978168 0504958 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_askewsholts_vlebooks_9781680504958 https://brain.urjc.es/permalink/f/1fkqgl0/TN_cdi_askewsholts_vlebooks_9781680504958 Slide 1 Slide 2 Datos de la Asignatura Objetivos Objetivos Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Metodología Docente Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26
Compartir