Programación Extrema
eXtreme Programming
Daniel Ochoa
Enrique Alcocer
William Munevar
Natalia Herrera Rey
Introducción
Metodologías Ágiles
Equipos ágiles
Incorpora al Cliente
Introducción
Metodologías Ágiles
Requerimientos cambiantes
Entrega rápida de software operativo
Manifiesto Ágil
Lodge Snowbird (montañas de Wasatch de Utah)
Extreme Programming
Scrum
DSDM
Adaptive Software
Development
...
Manifiesto Ágil
El manifiesto está conformado por tres
elementos claves que son:
La declaración del manifiesto
Los princip...
Manifiesto Ágil
Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler
James Grenning
Jim...
A través de este trabajo hemos
aprendido a valorar:
Individuos e interacciones
sobre
Procesos y herramientas
Software func...
Principios Ágiles
Imágenes por: Pablo Tortorella
1 Nuestra mayor prioridad es satisfacer al cliente
mediante la entrega te...
Principios Ágiles
Imágenes por: Pablo Tortorella
3 Entregamos software funcional
frecuentemente, entre dos semanas y dos
m...
Principios Ágiles
Imágenes por: Pablo Tortorella
5 Los proyectos se desarrollan en torno a individuos
motivados. Hay que d...
Principios Ágiles
Imágenes por: Pablo Tortorella
7 El software funcionando es la medida principal de
progreso.
8 Los proce...
Principios Ágiles
Imágenes por: Pablo Tortorella
9 La atención continua a la
excelencia técnica y al buen diseño
mejora la...
Principios Ágiles
Imágenes por: Pablo Tortorella
11 Las mejores arquitecturas, requisitos y
diseños emergen de equipos aut...
Programación eXtrema
La programación extrema (en inglés eXtreme
Programming o XP) fue desarrollada por Kent
Beck en 1996.
Primer libro sobre XP
En 1999 se publicó el
primer libro sobre está
metodología.
En 2004 se refinaría la
misma.
Los “extremo” de XP
Kent Beck:
“Llevar buenas prácticas de Ingeniería de
Software al extremo”
Práctica Extrema
Entregas in...
Problemas del desarrollo de SW
Tiempos
Requerimientos
Tiempos
Problemas del desarrollo de SW
Falsa
Riqueza
Cambio de
Personal
Mantenimiento
Defectos
El costo del cambio
Objetivos de la XP
Satisfacción
del Cliente
Trabajo en
Equipo
Valores de la XP
Comunicación
Valentía
Sencillez
Retroalimentación
Actividades básicas
Hacer
Pruebas
Codificar Diseñar
Escuchar
Las Cuatro Variables
Coste:
Máquinas,
especialistas y oficinas
Alcance:
Intervención del cliente
Tiempo:
Total y de Entreg...
¿Qué es lo novedoso aquí?
“Quiero estos requisitos
satisfechos para el día uno
del mes que viene, para lo
cual cuenta con ...
El equipo de desarrollo determinaría
la cuarta variable
Ciclo de vida
un proyecto con XP lleva 10 a 15 ciclos o iteraciones
Fases
Prácticas de la XP
Planificación Diseño
Desarrollo
Pruebas
Planificación
Plan de
entregas
Plan de
iteraciones
Reuniones
diarias
Historias de
Usuario
Diseño
Soluciones
Recodificación Metáforas
Simplicidad
Desarrollo del Código
Programación
por pruebas
Programación
en pares
Integraciones
Permanentes
Estandares
Desarrollo del Código
Ritmo
sostenido
Propiedad
colectiva del
código
Pruebas
Corrección de
errores
Pruebas de
aceptación
Pruebas
unitarias
Roles en un equipo XP
Programador Cliente
Roles en un equipo XP
Pruebas
(Tester)
Seguimiento
(Tracker)
Roles en un equipo XP
Entrenador Consultor
Roles en un equipo XP
Jefe de proyecto
(Big Boss)
Artefactos XP
- Historias de usuario
Escritas en términos del cliente, son una herramienta para dar a conocer los requerim...
Artefactos XP
Artefactos XP
- Tarea de ingeniería (Task Card)
Usadas para describir tareas que realizan el proyecto. Deben tener relació...
Artefactos XP
Críticas a eXtreme Programming
40 Horas semanales
Programación de pares
Problemas entre programadores
Diseñado para grupos...
Recursos
❏ JULIÁN Gómez. El laboratorio de las TI [En línea]. [Fecha de consulta: 10 abril 2014].
Disponible en: http://ww...
Programación Extrema - XP
Próxima SlideShare
Cargando en…5
×

Programación Extrema - XP

1.499 visualizaciones

Publicado el

Manifiesto Ágil - Metodologías ágiles: Programación Extrema / Extreme Programming

Publicado en: Tecnología
1 comentario
1 recomendación
Estadísticas
Notas
Sin descargas
Visualizaciones
Visualizaciones totales
1.499
En SlideShare
0
De insertados
0
Número de insertados
5
Acciones
Compartido
0
Descargas
117
Comentarios
1
Recomendaciones
1
Insertados 0
No insertados

No hay notas en la diapositiva.

Programación Extrema - XP

  1. 1. Programación Extrema eXtreme Programming Daniel Ochoa Enrique Alcocer William Munevar Natalia Herrera Rey
  2. 2. Introducción Metodologías Ágiles Equipos ágiles Incorpora al Cliente
  3. 3. Introducción Metodologías Ágiles Requerimientos cambiantes Entrega rápida de software operativo
  4. 4. Manifiesto Ágil Lodge Snowbird (montañas de Wasatch de Utah) Extreme Programming Scrum DSDM Adaptive Software Development Crystal Feature-Driven Development Pragmatic Programming
  5. 5. Manifiesto Ágil El manifiesto está conformado por tres elementos claves que son: La declaración del manifiesto Los principios que soportan la declaración Los mentalizadores y simpatizantes de la declaración
  6. 6. Manifiesto Ágil Kent Beck Mike Beedle Arie van Bennekum Alistair Cockburn Ward Cunningham Martin Fowler James Grenning Jim Highsmith Andrew Hunt Ron Jeffries Jon Kern Brian Marick Robert C. Martin Steve Mellor Ken Schwaber Jeff Sutherland Dave Thomas Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros.
  7. 7. A través de este trabajo hemos aprendido a valorar: Individuos e interacciones sobre Procesos y herramientas Software funcionando Documentación extensiva Colaboración con el cliente Negociación contractual Respuesta ante el cambio Seguir un plan Esto es, aunque valoramos los elementos de la derecha, valoramos más los de la izquierda.
  8. 8. Principios Ágiles Imágenes por: Pablo Tortorella 1 Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor. 2 Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.
  9. 9. Principios Ágiles Imágenes por: Pablo Tortorella 3 Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo más corto posible. 4 Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto.
  10. 10. Principios Ágiles Imágenes por: Pablo Tortorella 5 Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo. 6 El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara.
  11. 11. Principios Ágiles Imágenes por: Pablo Tortorella 7 El software funcionando es la medida principal de progreso. 8 Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.
  12. 12. Principios Ágiles Imágenes por: Pablo Tortorella 9 La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad. 10 La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.
  13. 13. Principios Ágiles Imágenes por: Pablo Tortorella 11 Las mejores arquitecturas, requisitos y diseños emergen de equipos auto- organizados. 12 A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia.
  14. 14. Programación eXtrema La programación extrema (en inglés eXtreme Programming o XP) fue desarrollada por Kent Beck en 1996.
  15. 15. Primer libro sobre XP En 1999 se publicó el primer libro sobre está metodología. En 2004 se refinaría la misma.
  16. 16. Los “extremo” de XP Kent Beck: “Llevar buenas prácticas de Ingeniería de Software al extremo” Práctica Extrema Entregas incrementales e integración continua Programación de a pares Desarrollo guiado por pruebas Cliente in situ Buena Práctica Software funcionando Revisiones de código Sistemas de pruebas estructurado Tener alineado al cliente
  17. 17. Problemas del desarrollo de SW Tiempos Requerimientos Tiempos
  18. 18. Problemas del desarrollo de SW Falsa Riqueza Cambio de Personal Mantenimiento Defectos
  19. 19. El costo del cambio
  20. 20. Objetivos de la XP Satisfacción del Cliente Trabajo en Equipo
  21. 21. Valores de la XP Comunicación Valentía Sencillez Retroalimentación
  22. 22. Actividades básicas Hacer Pruebas Codificar Diseñar Escuchar
  23. 23. Las Cuatro Variables Coste: Máquinas, especialistas y oficinas Alcance: Intervención del cliente Tiempo: Total y de Entregas Calidad: Externa e Interna
  24. 24. ¿Qué es lo novedoso aquí? “Quiero estos requisitos satisfechos para el día uno del mes que viene, para lo cual cuenta con este equipo. ¡Ah, y ya saben que la calidad es lo primero!”
  25. 25. El equipo de desarrollo determinaría la cuarta variable
  26. 26. Ciclo de vida un proyecto con XP lleva 10 a 15 ciclos o iteraciones
  27. 27. Fases
  28. 28. Prácticas de la XP Planificación Diseño Desarrollo Pruebas
  29. 29. Planificación Plan de entregas Plan de iteraciones Reuniones diarias Historias de Usuario
  30. 30. Diseño Soluciones Recodificación Metáforas Simplicidad
  31. 31. Desarrollo del Código Programación por pruebas Programación en pares Integraciones Permanentes Estandares
  32. 32. Desarrollo del Código Ritmo sostenido Propiedad colectiva del código
  33. 33. Pruebas Corrección de errores Pruebas de aceptación Pruebas unitarias
  34. 34. Roles en un equipo XP Programador Cliente
  35. 35. Roles en un equipo XP Pruebas (Tester) Seguimiento (Tracker)
  36. 36. Roles en un equipo XP Entrenador Consultor
  37. 37. Roles en un equipo XP Jefe de proyecto (Big Boss)
  38. 38. Artefactos XP - Historias de usuario Escritas en términos del cliente, son una herramienta para dar a conocer los requerimientos del proyecto a desarrollar. Las historias de usuario tienen tres aspectos: ● Tarjeta ● Conversación ● Prueba de aceptación
  39. 39. Artefactos XP
  40. 40. Artefactos XP - Tarea de ingeniería (Task Card) Usadas para describir tareas que realizan el proyecto. Deben tener relación con una Historia de Usuario. - Tarjetas CRC (Clase - Responsabilidad - Colaborador) Forma de trabajo grupal donde se encuentran los objetos del dominio de la aplicación a resolver.
  41. 41. Artefactos XP
  42. 42. Críticas a eXtreme Programming 40 Horas semanales Programación de pares Problemas entre programadores Diseñado para grupos pequeños
  43. 43. Recursos ❏ JULIÁN Gómez. El laboratorio de las TI [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: http://www.laboratorioti.com/2014/02/17/historia-de-las-metodologias-agiles/ ❏ WARD Cunningham. Manifesto for Agile Software Development. [Fecha de consulta: 10 abril 2014]. Disponible en: http://agilemanifesto.org/ ❏ ARQUITECTURA DSN_XP. Historia: El manifiesto ágil. [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: http://dsnxpagile.blogspot.com/2013/02/historia-el-manifiesto-agil.html ❏ CHILE ÁGIL. Introducción Ágil a eXtreme Programming. [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: http://www.slideshare.net/chileagil/introduccin-gil-a-extreme-programming- webprendedor08-350127 ❏ PABLO, Tortorella. Kleer - Principios Ágiles. [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: https://www.youtube.com/watch?v=V5LaKpjcgKQ ❏ Extreme Programming: A gentle introduction. [En línea]. [Fecha de consulta: 15 abril 2014]. Disponible en: http://www.extremeprogramming.org/ ❏ Joskowicz, José. Reglas y Prácticas en eXtreme Programming.[En línea].[Fecha de consulta: 12 abril 2014].Disponible en:http://iie.fing.edu.uy/~josej/docs/XP%20-%20Jose%20Joskowicz.pdf ❏ Escribano, Gerardo. Introducción a Extreme Programming.[En línea]. [Fecha de consulta: 12 abril 2014]. Disponible en: http://es.scribd.com/doc/105125372/Metodologia-agil-XP

×