El documento presenta la asignatura MADS - Introducción a la asignatura. Se divide en cuatro bloques temáticos que cubren valores y principios ágiles, eXtreme Programming, metodologías lean y Kanban, e integración y entrega continua. Incluye prácticas individuales y grupales utilizando tecnologías como Spring Boot, Git y GitHub para aplicar las metodologías ágiles estudiadas. La evaluación consiste en exámenes, prácticas y un proyecto final grupal aplicando las técnicas ágiles a lo
Sesión 4 del curso Metodologías Ágiles de Desarrollo de Software de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Trabajo de Ingeniería del Software en el que se introduce el ciclo de vida Scrum y se exploran tres herramientas para implementarlo: Trello, Taiga y Jira
Una presentación del marco de trabajo de Scrum. Apunta a establecer en breves imágenes los roles, procesos y artefactos necesarios para la agilidad de proyectos de desarrollo de software o tecnologías de información.
Sesión 6 del curso Metodologías Ágiles de Desarrollo de Software de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Cruzando el abismo educativo de la ingeniería de software utilizando Software...Applied Computing Group
`Cruzando el abismo educativo de la ingenieria de software utilizando Software como Servicio y computación en nube'
Prof. Armando Fox
Facultad de Informática, Universidad de California, Berkeley
fox@cs.berkeley.edu
JISBD'2012 (XVII Jornadas de Ingeniería del Software y Bases de Datos)
Jornadas SISTEDES 2012 (17 a 19 septiembre de 2012)
Universidad de Almería
Sesión 4 del curso Metodologías Ágiles de Desarrollo de Software de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Trabajo de Ingeniería del Software en el que se introduce el ciclo de vida Scrum y se exploran tres herramientas para implementarlo: Trello, Taiga y Jira
Una presentación del marco de trabajo de Scrum. Apunta a establecer en breves imágenes los roles, procesos y artefactos necesarios para la agilidad de proyectos de desarrollo de software o tecnologías de información.
Sesión 6 del curso Metodologías Ágiles de Desarrollo de Software de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Cruzando el abismo educativo de la ingeniería de software utilizando Software...Applied Computing Group
`Cruzando el abismo educativo de la ingenieria de software utilizando Software como Servicio y computación en nube'
Prof. Armando Fox
Facultad de Informática, Universidad de California, Berkeley
fox@cs.berkeley.edu
JISBD'2012 (XVII Jornadas de Ingeniería del Software y Bases de Datos)
Jornadas SISTEDES 2012 (17 a 19 septiembre de 2012)
Universidad de Almería
Los métodos ágiles enfatizan las comunicaciones cara a cara en vez de la documentación. Los requisitos y soluciones evolucionan mediante la colaboración de grupos auto organizados y multidisciplinarios.
Expositoras
María Fernanda Escudero., PMP
Project Manager
mescudero@thoughtworks.com
María José Ormaza
Business Intelligence
mjormaza@thoughtworks.com
Sesión 3 del curso Metodologías Ágiles de Desarrollo de Software de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Workshop de gestión ágil de proyectos, haciendo foco en Scrum y otras metodologías para maximizar la productividad y la eficiencia de equipos de trabajo.
DevOps Practices and how to implement it using VSTSFernando Mejía
¿Qué es DevOps? ¿Por qué invertir esfuerzos en prácticas DevOps? Cuales son sus ventajas y como implementarlo fácilmente usando visual studio team services.
Sesión 2 del curso "Metodologías Ágiles de Desarrollo de Software" de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Los métodos ágiles enfatizan las comunicaciones cara a cara en vez de la documentación. Los requisitos y soluciones evolucionan mediante la colaboración de grupos auto organizados y multidisciplinarios.
Expositoras
María Fernanda Escudero., PMP
Project Manager
mescudero@thoughtworks.com
María José Ormaza
Business Intelligence
mjormaza@thoughtworks.com
Sesión 3 del curso Metodologías Ágiles de Desarrollo de Software de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Workshop de gestión ágil de proyectos, haciendo foco en Scrum y otras metodologías para maximizar la productividad y la eficiencia de equipos de trabajo.
DevOps Practices and how to implement it using VSTSFernando Mejía
¿Qué es DevOps? ¿Por qué invertir esfuerzos en prácticas DevOps? Cuales son sus ventajas y como implementarlo fácilmente usando visual studio team services.
Sesión 2 del curso "Metodologías Ágiles de Desarrollo de Software" de la Universidad de Alicante (http://www.dccia.ua.es/dccia/inf/asignaturas/MADS/2013-14)
Aletas de Transferencia de Calor o Superficies Extendidas.pdfJuanAlbertoLugoMadri
Se hablara de las aletas de transferencia de calor y superficies extendidas ya que son muy importantes debido a que son estructuras diseñadas para aumentar el calor entre un fluido, un sólido y en qué sitio son utilizados estos materiales en la vida cotidiana
EDT (Estructura de Desglose de Trabajo).pdffranco14021
• EDT: Estructura Desagregada del Trabajo
(Desagregar: Separar dos cosas que estaban unidas)
• WBS: Work Breakdown Structure
• Representa TODO el trabajo que se debe realizar en un Proyecto
•Equivale al índice de un libro
3. Qué vamos a hacer hoy
1. ¿Experiencia en desarrollo y en metodologías ágiles?
2. Explicación de la plani
fi
cación y contenidos de la asignatura
3. Actividad: vídeo Product Ownership in a Nutshell
3
6. Preguntas
• ¿Has desarrollado alguna aplicación completa y para usuarios
fi
nales?
• ¿Qué conoces de las metodologías ágiles?
• Lo contestamos en Mentimeter y comentamos los resultados después.
6
8. Datos de la asignatura
• Grado en Ingeniería Informática (4º curso)
• Especialidad: Ingeniería del Software
• Ficha de la asignatura
• Departamento de Ciencia de la Computación e
Inteligencia Arti
fi
cial
• Optativa, 6 créditos ECTS = 150 h. de trabajo
• Cada semana: 4 h. de clases presenciales +
5 h. de trabajo en casa
• ~5 h. de estudio para cada control
• Profesor: Domingo Gallardo
e-mail: domingo.gallardo@ua.es
Twitter: @domingogallardo
8
Plataforma docente
Apuntes teoría
Apuntes prácticas
9. Los contenidos de la asignatura evolucionan
• Algunos cambios en los últimos años:
• Uso de Spring Boot
• GitHub y Git
• XP y Kanban
• Encuesta al
fi
nal de la asignatura
9
"Algunos temas de teoría se
han hecho algo pesados"
"Es confuso usar 3 tableros
distintos (GitHub, Trello,
Wiki)"
"La gestión de
con
fi
guraciones es
demasiado complicada"
10. Mejora continua y Kaizen
• "“Perfection is a direction, not a place”, Henrik
Kniberg
• Kaizen, TPS (Toyota)
• Ciclo PDSA - Edwards Deming
10
Mejora continua, cambio incremental
12. Plani
fi
cación y evaluación
• Bloque 1: Valores y principios ágiles para el
desarrollo del software (3 semanas)
• Bloque 2: XP (4 semanas)
• Bloque 4: Metodologías lean y Kanban (2
semanas)
• Bloque 3: Integración y entrega continua (3
semanas)
2 Exámenes tipo test - 15% cada uno
1 Vídeo de divulgación - 10%
12
👉 Teoría (40%)
•Práctica 1 (Individual): Introducción a Spring Boot
(1 semana) - 10%
•Práctica 2 (Individual): Aplicación ToDoList
(4 semanas) - 25%
•Práctica 2 (Individual): Integración continua y TDD
(3 semanas) - 25%
•Práctica 3 (grupo): Trabajo en equipo (2 semanas) - 15%
•Práctica 4 (grupo): Iteración de desarrollo (3 semanas) - 25%
👉 Prácticas (40%)
Evaluación C4 (julio)
• Examen
fi
nal de teoría y prácticas - 45% y 25%
• Cali
fi
cación de prácticas del curso - 30%
👉 Examen de prácticas (20%)
14. Bloque 1: Valores y principios ágiles para el desarrollo del software
3 semanas
• Desarrollo del software,
características y modelos,
aceptación del cambio.
• Mani
fi
esto ágil, repercusión del
mani
fi
esto en las metodologías
de desarrollo, orígenes y
fundamentos de las
metodologías ágiles.
14
15. Bloque 2: XP (eXtreme Programming)
4 semanas
• Valores y prácticas XP.
• Historias de usuario.
• TDD, Desarrollo Dirigido por los Tests.
• Diseño para el cambio: refactorización y
SOLID.
15
16. Bloque 3: Metodologías lean y Kanban
2 semanas
• Fabricación lean, empresa lean, desarrollo de
software lean.
• Fundamentos de Kanban: visualización, ítems de
trabajo, trabajo en progreso,
fl
ujo, mejora
continua, límite en el WIP
• Kanban vs. Scrum, “Scrumban”
16
Next Ten
Features
Ideas Features Development System
Test
User
Acceptance
Test
FLOW
Production
The leftmost column is where ideas come in. These are high level-feature areas.
20 • Chapter 4. The Project Board
17. Bloque 4: Integración y entrega continua
3 semanas
• Git como sistema de control de versiones,
fl
ujos de
trabajo con Git.
• Principios de la entrega continua de software.
• Herramientas y tecnologías para la integración
continua, scripts de construcción y despliegue,
infraestructura y entornos de integración, cloud.
17
19. Tecnologías
• Spring Boot
• Framework de desarrollo rápido de aplicaciones web,
usado en producción en múltiples empresas. Uno de
los frameworks Java más demandados por el
mercado.
• Arquitectura MVC con controladores que responden a
peticiones HTTP y generan vistas basadas en plantillas
• Modelo de datos y acceso a BD con JPA
• Integra la gestión de dependencias Maven
• Otras tecnologías:
• Git, GitHub
• Acciones de GitHub
• Docker
19
20. Prácticas
• Práctica 1 (1 semana): Primera aplicación en Spring Boot. Spring Boot,
• Práctica 2 (4 semanas): ToDoList en Spring Boot. Spring Boot, Git, GitHub. Metodología de
trabajo Git y GitHub.
• Práctica 3 (3 semanas): Tests en Spring Boot y TDD. Integración continua con GitHub y
Docker.
• Práctica 4 (2 semanas): Con
fi
guración del
trabajo en equipo. Flujo de trabajo Git y
GitHub modi
fi
cado para el trabajo en
equipo. Uso de pull requests.
• Práctica 5 (4 semanas): Iteración de
desarrollo. Seleccionaremos las historias de
usuario y las desarrollaremos durante una
iteración de desarrollo, practicando las
metodologías vistas en la asignatura.
Mejoraremos también el tablero de GitHub
para acercarlo más a un tablero de Kanban.
20
21. Bibliografía
• Extensa bibliografía organizada en los apuntes
con enlaces a O'Reilly
• Agile en general y Scrum
• EXtreme Programming
• Buenas prácticas de desarrollo
• Lean y Kanban
• Todos los libros están en la Play List de O'Reilly
Metodologías Ágiles.
• Para acceder a la cuenta de O'Reilly debes
darte de alta con el correo electrónico de la UA
(más información).
21
23. ¿Qué recordáis de Scrum?
• Suponemos que ya habéis visto Scrum en alguna asignatura del curso pasado.
• ¿Qué elementos recordáis de Scrum?:
• Roles
• Eventos
• Artefactos
23
24. Vídeo de Henrik Kniberg:
Agile Product Ownership in a nutshell
• Aunque se centra en el rol del PO, es un resumen muy completo sobre Scrum (y
también con alguna idea de otras metodologías).
• Debes tomar notas y anotar los conceptos/ideas que vayan apareciendo en el
vídeo.
• Al
fi
nal vídeo haremos un par de actividades para la puesta en común,
buscando conocer cómo habéis interpretado los conceptos/ideas del vídeo.
Usaremos también Mentimeter.
24