Extreming programming

Páginas: 9 (2091 palabras) Publicado: 13 de febrero de 2012
Extreming Programming (XP)
La Programación Extrema es una metodología ligera de desarrollo de software descrito originalmente por Kent Beck, se basa en la simplicidad, la comunicación y la realimentación o reutilización del código desarrollado. Propone nuevas formas de desarrollo y de comunicación. Las técnicas y principios que siguen son:

▪ El código se revisa continuamente, programandopor parejas, es decir dos personas en una misma máquina.
▪ Se realizan continuamente pruebas: pruebas unitarias, es decir, pruebas para cada clase que se crea y pruebas funcionales, pruebas realizas por el cliente para ver que se satisfacen los requisitos.
▪ También se han de realizar pruebas cada vez que se añade una nueva clase o se modifica una existente, estás pruebas se llaman deintegración.
▪ Se desarrolla siempre intentando expresar el código en su forma más sencilla.
▪ Las iteraciones se preveen con una duración de entre 1 y 3 semanas.


MODELO XP

La metodología XP define cuatro variables para cualquier proyecto de software: costo, tiempo, calidad y alcance. El ciclo de vida de un proyecto XP incluye, al igual que las otras metodologías, entender loque el cliente necesita, estimar el esfuerzo, crear la solución y entregar el producto final al cliente. Sin embargo, XP propone un ciclo de vida dinámico, donde se admite expresamente que, en muchos casos, los clientes no son capaces de especificar sus requerimientos al comienzo de un proyecto. Por esto, se trata de realizar ciclos de desarrollo cortos (llamados iteraciones), con entregablesfuncionales al finalizar cada ciclo. En cada iteración se realiza un ciclo completo de análisis, diseño, desarrollo y pruebas, pero utilizando un conjunto de reglas y prácticas que caracterizan a XP.

Si bien el ciclo de vida de un proyecto XP es muy dinámico, se puede separar en fases:

Fase de exploración
Es la fase en la que se define el alcance general del proyecto. En esta fase, el clientedefine lo que necesita mediante la redacción de sencillas “historias de usuarios”. Los programadores estiman los tiempos de desarrollo en base a esta información. Debe quedar claro que las estimaciones realizadas en esta fase son
primarias (ya que estarán basadas en datos de muy alto nivel), y podrían variar cuando se analicen más en detalle en cada iteración. Esta fase dura típicamente un par desemanas, y el resultado es una visión general del sistema, y un plazo total estimado.

Fase de planificación
La planificación es una fase corta, en la que el cliente, los gerentes y el grupo de desarrolladores acuerdan el orden en que deberán implementarse las historias de usuario, y, asociadas a éstas, las entregas. Típicamente esta fase consiste en una o varias reuniones grupales deplanificación. El resultado de esta fase es un Plan de Entregas, o “Release Plan”.

Fase de iteraciones
Esta es la fase principal en el ciclo de desarrollo de XP. Las funcionalidades son desarrolladas en esta fase, generando al final de cada una un entregable funcional que implementa las historias de usuario asignadas a la iteración. Como las historias de usuario no tienen suficiente detalle como parapermitir su análisis y desarrollo, al principio de cada iteración se realizan las tareas necesarias de análisis, recabando con el cliente todos los datos que sean necesarios. El cliente, por lo tanto, también debe participar activamente durante esta fase del ciclo. Las iteraciones son también utilizadas para medir el progreso del proyecto. Una iteración terminada sin errores es una medida clarade avance.

Fase de puesta en producción
Si bien al final de cada iteración se entregan módulos funcionales y sin errores, puede ser deseable por parte del cliente no poner el sistema en producción hasta tanto no se tenga la funcionalidad completa. En esta fase no se realizan más desarrollos funcionales, pero pueden ser necesarias tareas de ajuste (“fine tuning”).

Para conseguir estos...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Computer Programming
  • Xtream Programming
  • Lean Programming
  • Extreme Programming
  • Dynamic Programming
  • Extreme Programming
  • Dynamic Programming
  • KPL Kid's Programming Lenguage

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS