XP Extreme Programming
Objetivos
Lean Startup y desarrollo de software ágil
Fases del desarrollo de software: alcance, descubrimiento, mapeo y entrega
Valores y principios de programación extremos
12 prácticas de programación extrema: prácticas fundamentales
Estimación y planificación ágiles, incluida la identificación de riesgos y oportunidades
Descubrimiento de productos: investigación de usuarios, identificación de valores comerciales y exploración técnica
Mapeo de requisitos: mapeo de impacto, mapeo de historias, MVP y planificación de lanzamientos
Entrega de software: estándar de codificación, propiedad colectiva del código, ritmo sostenible
Desarrollo basado en pruebas: por qué, qué y cómo
Ciclo TDD: rojo, verde y refactorización
Impulsar el desarrollo (diseño e implementación) de una historia de usuario
Aprenda el concepto de diseño emergente y por qué el diseño emergente
Descripción general de la refactorización, el principio de código limpio y la refactorización a patrones
Diseño de software: profundizando en los principios de diseño SOLID
Desarrollo impulsado por el comportamiento versus desarrollo impulsado por pruebas
Integración continua, entrega continua, implementación y lanzamientos
Introducción a la programación extrema, principios de la programación extrema
Lean Startup y desarrollo de software ágil
Fases del desarrollo de software: alcance, descubrimiento, mapeo y entrega
Valores y principios de programación extremos
12 prácticas de programación extrema: prácticas fundamentales
Estimación y planificación ágiles, incluida la identificación de riesgos y oportunidades
Descubrimiento de productos: investigación de usuarios, identificación de valores comerciales y exploración técnica
Mapeo de requisitos: mapeo de impacto, mapeo de historias, MVP y planificación de lanzamientos
Entrega de software: estándar de codificación, propiedad colectiva del código, ritmo sostenible
Desarrollo basado en pruebas: por qué, qué y cómo
Ciclo TDD: rojo, verde y refactorización
Impulsar el desarrollo (diseño e implementación) de una historia de usuario
Aprenda el concepto de diseño emergente y por qué el diseño emergente
Descripción general de la refactorización, el principio de código limpio y la refactorización a patrones
Diseño de software: profundizando en los principios de diseño SOLID
Desarrollo impulsado por el comportamiento versus desarrollo impulsado por pruebas
Integración continua, entrega continua, implementación y lanzamientos
diseno
Disponible en formato e-learning
Disponible en formato presencial
Disponible en formato a distancia
Subvención disponible
A través de Fundae, cumpliendo requisitos.
Duración
24 horas
- Dificultad 50%
- Nivel alcanzado 80%
Dirigido a
Conocimientos requeridos
Temario
Introducción a la programación extrema
Descripción general ágil y marco disponible
¿Qué es la programación extrema (XP)?
Cómo y por qué XP es diferente a Scrum
Valores, reglas y fases de XP
12 prácticas de programación extrema
Programación extrema: juego de planificación, pequeño lanzamiento y metáfora
Historia de usuario y estimación
Taller de redacción de historias de usuario
División de la historia del usuario
Ejecutar picos en historias complejas
Planificación de lanzamiento
Planificación de iteraciones
Especificación
Desafíos en la colaboración entre el negocio y el equipo de desarrollo
Cómo escribir una mejor especificación
Por qué se necesitan ejemplos para la especificación
Ejemplos de escritura en pepinillo
ATDD y BDD
Principios del desarrollo impulsado por pruebas de aceptación
Consecuencias de ATDD en la planificación y revisión de Sprint
Principios del desarrollo impulsado por el comportamiento
Practicar BDD con Cucumber / SpecFlow: instalación, funciones de escritura, pruebas e informes
Papel del Gerente de iteración y la tripulación al escribir la aceptación de escenarios
Desarrollo basado en pruebas
Enfoque de desarrollo impulsado por pruebas (TDD) y sus beneficios
Mejorando la calidad y el diseño del código por TDD
Diferentes tipos de pruebas: unitarias, de integración, funcionales
Prueba unitaria con el marco de prueba unitario
Comprender el ciclo de vida de una prueba en el marco de pruebas unitarias
Respeto del principio de aislamiento y control de los resultados de las pruebas.
Las simulaciones o simulan cómo se probó el código del dispositivo.
Uso de marcos de simulación
Organización de actividades de prueba
Metodología para corregir un error
Automatizar la ejecución de la prueba unitaria
Generando informes
Integración con Build Tool e IDE
Marcos de diseño
Definición y principios de marcos
Diseño Emergente
Principio de escalabilidad e implementación
Refactorización
Consecuencia de la deuda técnica y riesgo de «romper» el código
¿Dónde? ¿Cuando? ¿Cómo refactorizar?
3 etapas de refactorización
Soporte de TDD y ATDD durante la refactorización
Mejores prácticas y limitaciones
Trabajar con código heredado
Introducción a la integración continua
Principios, medio ambiente e infraestructura
Estrategias y patrones de ramificación para la integración continua.
Soluciones para la integración continua: Hudson, Jenkins, Cruise Control, Bamboo, TeamCity, Apache Continuum
Introducción a Jenkins
Dashboard y proyectos de salud
Principio de arquitectura y extensión
Instalación, configuración y uso de Jenkins
Compilaciones automatizadas con Jenkins
Pruebas de automatización con JUnit (TDD) y pepino (BDD / ATDD)
Pruebas ágiles
Importancia de las pruebas ágiles
Garantizar una mejor calidad de productos sprint a sprint
Marcos de automatización de pruebas
Prueba de cuadrantes y prueba de pirámides
Comentarios recientes