View
214
Download
0
Category
Preview:
Citation preview
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Introducción a la asignaturaMADS-1.0Sesión 1
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
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 Artificial• Optativa, 6 créditos ECTS = 150 h. de trabajo
• Cada semana: 4 h. de clases presenciales + 5 h. de trabajo en casa• ~7,5 h. de estudio para cada parcial
• Contenidos según el plan de estudios: “Principios y prácticas ágiles. Historias de usuario. Modelado ágil. Integraciones continuas. Desarrollo dirigido por las pruebas. Ejemplos de metodologías ágiles: Programación extrema, Scrum, UP. Lenguajes y entornos de programación ágiles.”
Profesor: Domingo Gallardoe-mail: domingo.gallardo@ua.esTwitter: @domingogallardo
2
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
¿Qué sabéis de metodologías ágiles?
• ¿Conceptos aprendidos en otras asignaturas?• ¿Experiencia, trabajo, prácticas en empresa?• ¿Lenguajes y frameworks ágiles?• ¿Herramientas de integración y entrega continua?
3
Metodologías Ágiles de Desarrollo de Software, 2013-14Domingo Gallardo, DCCIA, Universidad de Alicante
Temario de teoría
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Tema 1: Valores y principios ágiles
2 semanas
• Desarrollo del software, características y modelos, aceptación del cambio
• Manifiesto ágil, repercusión del manifiesto en las metodologías de desarrollo
• Orígenes y fundamentos de las metodologías ágiles
• Valores y prácticas XP
5
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Tema 2: Metodologías ágiles: Scrum y Kanban (I)
2 semanas
• Repaso de la metodología Scrum• Fundamentos de Kanban:
visualización, ítems de trabajo, trabajo en progreso, flujo, mejora continua, límite en el WIP
• Kanban vs. Scrum
6
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Tema 3: Modelado ágil
1 semana
• Principios y prácticas de modelado ágil
• Técnicas iterativas de modelado y documentación
• Técnicas de ORM• NoSQL: Bases de datos no
relacionales
7
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Tema 4: Desarrollo Dirigido por los Tests y Pruebas ágiles
2 semanas
• Repaso del Desarrollo Dirigido por los Tests: filosofía, herramientas
• Principios y prácticas de pruebas ágiles
• Pruebas en las distintas fases de un proyecto ágil
8
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Tema 5: Integración y entrega continua
2 semanas
• Principios de la entrega continua de software
• Gestión de configuraciones, sistemas de control de versiones distribuidos
• Herramientas de integración continua, scripts de construcción y despliegue, infraestructura y entornos de integración, cloud
9
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Tema 6: Historias de usuario
1 semana
• Características de buenas historias de usuario
• Tests de aceptación• Historias de usuario en Scrum y
Kanban
10
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Tema 7: Metodologías ágiles: Scrum y Kanban (II)
2 semanas
• Estimación y planificación ágil• Kanban: evaluación, métricas• Integración de Scrum y Kanban• Estrategias para el cambio: cómo
pasar de no ágil a ágil
11
Metodologías Ágiles de Desarrollo de Software, 2013-14Domingo Gallardo, DCCIA, Universidad de Alicante
Prácticas
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Play Framework
• Framework de desarrollo rápido de aplicaciones web• Basado en Scala (también hay versión Java)• Arquitectura basada en acciones que responden a peticiones HTTP y
generan vistas basadas en plantillas• Modelo de datos y acceso a BD con Anorm (Scala)• Integra la gestión de dependencias usando sbt (similar a Maven)• Desarrollado y mantenido por TypeSafe• Otras herramientas: Git, Bitbucket, Heroku
13
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Temas y prácticas
• Tema 1: Play Framework en Scala (4 semanas, 2 prácticas)• Tema 2: Prácticas de Modelado ágil (2 semanas, 1 práctica)• Tema 3: Prácticas de TDD y Pruebas ágiles (2 semanas, 1 práctica)• Tema 4: Prácticas de entrega continua (2 semanas, 1 práctica)• Tema 5: Caso práctico de desarrollo de un proyecto (4 semanas, 1
práctica)
• Total: 5 prácticas individuales (10 semanas) y 1 práctica en grupo (4 semanas)
14
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Evaluación
• Prácticas 1 a 5 (individuales): 20 % (No recuperable julio)• Práctica en grupo: 10 % (No recuperable julio)• Parcial 1 de teoría (temas 1, 2 y 3): 20 % • Parcial 1 de prácticas (temas 1 y 2): 10 %• Parcial 2 de teoría (temas 4, 5, 6 y 7): 30 %• Parcial 2 de prácticas (temas 3, 4 y 5): 10 %
15
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
Bibliografía
• Lecturas obligatorias en todos los temas
• Manuales básicos sobre metodologías ágiles, Scrum, XP y Kanban:• Henrik Kniberg: Scrum and XP from the Trenches• Henrik Kniberg: Lean from the Trenches• David J. Anderson: Kanban
• Bibliografía de ampliación:• Kent Beck: Extreme Programming Explained (2 Edición)• Kent Beck: Test Driven Development• Scott Ambler: Agile Modeling• Mike Cohn: User Stories Applied• Mike Cohn: Succeeding with Agile• Kenneth S. Rubin: Essential Scrum• Jez Humble y David Farley: Continuous delivery• Lisa Crispin: Agile Testing
16
Metodologías Ágiles de Desarrollo de SoftwareDomingo Gallardo, DCCIA, Univ. Alicante
MADS-1.0Primer año de la asignatura
• Seguro que va a haber fallos• Todos estamos aquí para aprender, vamos a intentar mejorar la
asignatura entre todos• “Perfection is a direction, not a place”, Henrik Kniberg• El mejor proceso es el que promueve la mejora continua
17
Recommended