Programación Extrema

Preview:

Citation preview

Métodos ágiles de programación

Sesión 4. Programación Extrema

Martínez Ortiz RamsésGarcía Vázquez José Fernando

Programación Extrema

¿Qué es?

• Metodología ligera de desarrollo de software que se basa en la simplicidad, la comunicación y la realimentación o reutilización del código desarrollado.

Ventajas

• Programación organizada

• Menor taza de errores

• Satisfacción del programador

Desventajas

• Es recomendable utilizarlo en proyectos de corto plazo

• Altas comisiones en caso de fallar

Características

• Desarrollo interactivo e incremental

• Pruebas unitarias continuas

• Programación en pareja

• Corrección de todos los errores

• Refactorización del código

• Propiedades del código compartioda

• Simplicidad

• Fase de Exploración (Planeación). En esta fase los usuarios escriben las tarjetas de historia que ellos quieren que sean incluidas en la primera versión. Cada una de las tarjetas de historia describen una funcionalidad que será añadida al programa.

• Fase de planificación (Diseño) . En esta fase se establece la prioridad de las diferentes historias y se acuerda el contenido de la primera entrega del proyecto.

Fases

• Fase de iteraciones (Codificación y pruebas). Esta fase incluye la realización de diferentes fases antes de liberar la primera versión del producto.

• Fase de producción. En esta fase se llevan a cabo un conjunto de pruebas extras, de rendimiento y funcionamiento que son necesarias antes de poder entregar el producto al cliente

Fases

• Fase de mantenimiento. Una vez se ha liberada la primera versión a los usuarios, el proyecto se debe mantener en el entorno de producción siempre y cuando aún hayan iteraciones en fase de producción.

• Fase de cierre del proyecto. Es la fase en que los clientes ya no tienen más historias que deban ser implementadas. La documentación del proyecto se realiza en esta fase, ya que ni la arquitectura, ni el diseño, ni el código sufrirán cambio alguno

Fases

Ciclo XP

• Comunicación

• Sencillez

• Retroalimentación

• Valentía

• Humildad

Valores

• Realimentación veloz

• Modificaciones incrementales

• Trabajo de calidad

• Asunción de simplicidad

Principios fundamentales

• Codificar

• Hacer pruebas

• Escuchar

• Diseñar

Actividades principales

Gracias