.

¿Sabes cómo funciona XP?

“Extreme Programming” o “Programación Extrema” es una de las llamadas metodologías Ágiles de desarrollo de software más exitosas. Es habitual relacionarla con scrum, y la combinación de ambas asegura un mayor control sobre el proyecto, y una implementación más efectiva y eficiente.

Uso de las metdologias Ágiles

XP está diseñada para entregar el software que los clientes necesitan en el momento en que lo necesitan. XP alienta a los desarrolladores a responder a los requerimientos cambiantes de los clientes, aún en fases tardías del ciclo de vida del desarrollo.

Modelo XP

La metodología XP define cuatro variables para cualquier proyecto de software: costo, tiempo, calidad y alcance. El método especifica que de estas cuatro variables, tres de ellas podrán ser fijadas arbitrariamente por actores externos al grupo de desarrolladores (clientes y jefes de proyecto), y el valor de la restante deberá será establecida por el equipo de desarrollo, quien establecerá su valor en función de las otras tres.

Por ejemplo, si el cliente establece el alcance y la calidad, y el jefe de proyecto el precio, el grupo de desarrollo tendrá libertad para determinar el tiempo que durará el proyecto. Se trata de establecer un equilibrio entre las cuatro variables del proyecto.

Ciclo de vida XP

Al igual que otras metodologías de gestión de proyectos, tanto Ágiles como tradicionales, el ciclo XP incluye:

Ciclo XP

  • Entender lo que el cliente necesita > Fase de Exploración
  • Estimar el esfuerzo > Fase de Planificación
  • Crear la solución > Fase de Iteraciones
  • Entregar el producto final al cliente > Fase de puesta en producción

Lo que caracteriza a XP, al igual que al resto de métodos Agiles es un ciclo de vida dinámico. ¿Cómo lo logra XP? Mediante ciclos de desarrollo cortos (llamados iteraciones), al fin de los cuales se generan unos entregables funcionales.

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 especificas de XP. Un proyecto con XP, implica de entre a 10 a 15 iteraciones habitualmente.

Prácticas XP

No voy a entrar en el detalle de cada una de las  reglas y prácticas, pues hay mucha información al respecto en la red. A continuación, te propongo una manera de agruparlas, en función del ámbito en el que aplican:

Prácticas eXtreme Programming

Espero que haya quedado un poco mas claro como funciona XP.

Saludos,

JLVG

8 respuestas a “¿Sabes cómo funciona XP?”

  1. Gustavo Villca dice:

    Buenos días Juan, estuve leyendo lo que publicó sobre la metodologia XP me gustó mucho pero tuve algunas dudas.
    Cómo puedo calcular la cantidad de iteraciones?
    Y de donde sale una iteracion?
    Estaría muy agradecido por su respuesta

    • Juan Luis Vila Grau dice:

      Hola Gustavo,

      Gracias por leer el blog, y por escribir.

      Respecto a la duda que planteas sobre las iteraciones varios comentarios:

      En principio, desde un enfoque 100% Ágil no deberíamos considerar el número de iteraciones que vamos a necesitar. Esto variará en función del avance del proyecto, las decisiones del cliente, etc. Ten en cuenta que de otra forma estaríamos siendo predictivos, cuando lo que buscamos es ser adaptativos.

      Dicho lo anterior, en la realidad es necesario estimar y llevar a cabo algún tipo de planificación. Para ello lo recomendable es usar la técnica de mapa de historias de usuario. A partir de la visión del producto redactamos unas épicas, que luego vamos descomponiendo en otras historias más pequeñas. A partir de aquí podemos planificar las releases o las entregas, para las cuales seguramente necesitaremos varias iteraciones.

      Puedes leer más aquí:
      https://managementplaza.es/blog/generar-backlog-producto-mapa-historias-usuario/
      https://managementplaza.es/blog/la-planificacion-los-entornos-agiles/

      El tamaño de l la iteración lo define a priori el Dueño de Producto, aunque es habitual que este cambio durante las iteraciones iniciales, especialmente si el equipo es nuevo o no esta habituado a trabajar junto. Si bien el Dueño del Producto define a priori el tamaño de la iteración, es el quipo de desarrollo el responsable de establecer la carga de trabajo durante el sprint (o iteración).

      Puedes leer más aquí:
      https://managementplaza.es/blog/no-modificarse-la-duracion-los-sprints-scrum/
      https://managementplaza.es/blog/importante-nunca-extiendas-la-duracion-una-iteracion/

      Espero que mi respuesta te haya sido de ayuda. Cualquier otra cuestión al respecto no dejes de escribir.

      Saludos cordiales,

      JLVG

  2. Richar García dice:

    Hola como estas? Me pareció excelente el artículo publicado en tu blog referente al Modelo XP.
    Te hago una consulta tendrías material para compartir acerca de Programación en lenguaje SQL Developer?
    Desde ya muchas gracias.
    Saludos.

    • Juan Luis Vila Grau dice:

      Hola Richar,

      Mcuhas gracias por leer el blog y por tu comentario.

      Estaré encantado de compartir contigo mataerial sobre gestión de proyectos, asgilidad, scrum y cualquier tema realcionado, pero lamento no poder ayudarte con lo que me pides.

      Saludos cordiales, y ¡hasta pronto!

  3. ManuelMD dice:

    Juan buena tarde (aquí en México).
    Muy interesante tu artículo.
    Yo estoy en la Administración y Control de Proyectos, sobre todo del sector Energético (Oil&Gas).
    Implementamos el PMI (PMBook) como nuestro estándar de metodología de administración de proyectos, sin embargo, en todo este 2018, hemos incursionado en la aplicación de metodologías ágiles y deseo aprender más de ellas, como por ejemplo XP.

    Considero que podemos combinar el uso de metodologías de administración de proyectos. Con ello volvemos más rentable la ejecución de los mismos proyectos al evitar «retrabajos» mediante la utilización de metodologías ágiles y atacar con ellas ciertos alcances de macro proyectos.

    ¿Qué me recomiendas leer para implementar de manera efectiva XP y algunas otras metodologías ágiles?

    Muchas gracias y felicidades por tu blog.

    Saludos!

    • Juan Luis Vila Grau dice:

      Hola Manuel,

      Muchas gracias por escribir, y enhorabuen a ti y tu organización por considerar un enfoque de gestión que integra un enfoque Ágil con otro más tradicional. En mi opinión, aún sin concoer las particularidaes de vuestro ámbito de gestión, es sin lugar a dudas el adecuado pues ni la Agilidad es la respuest a todos los problemas, ni lo que se venia haciendo antes está siempre mal.

      Dicho lo anterior, hay muchas prácticas de XP (Programación Extrema) que pueden extarpolarse y utilizarse en otros ámbitos; las reuniones de pie, la programación por pares (trabajo por pares), el enfoque iterativo e incremental o el empoderamiento del equipo. La mayoría, por no decir todas pueden aplicarse más allá del desarrollo de software, y muchas se inspiran en otrosámbitos.

      Respecto a las recomendaciones de lectura, para saber más sobre XP y dado tu ámbito de trabajo, un buen punto de partida será la siguiente web: http://www.extremeprogramming.org/

      Además, como bien dices, es conveniente seguir profundizando en los diferentes marcps de trabajo, metdologías y técnicas Ágiles: scrum, es sin lugar a dudas un refrencia obligada, lo mismo que Kanban. Puedes encontrar mucho material al respecto en nuestra web. El PMI también cuenta con una nueva versión Ágil desde este año: PMI-ACP.

      Sobre certificaciones, si estás interesado en la Agilidad sería un a buen idea que tú y tu equipo de trabajo consideráseis obtener alguna para conocer más en detalle en que consisten algunas téncias y como aplicarlas. Si tienes cualquier duda al respecto, podemos ayudarte.

      Por último, y no por ello menos importante, la Agilidad implica un cambio a todos los niveles (desde el nivel de entrega a la dirección del Proyecto, y la gestión de Programas y Portfolio, lo que se conoce como Agilidad del negocio) por todo ello es muy recomendable estar familiarizado con la Gestión del Cambio.

      Si necesitas ampliar la información, cualquier cuestión o comentario al respecto estaré encantado de hablarlo contigo.

      Saludos cordiales,

      JLVG

  4. andres dice:

    hola, exelente post, me gustaria saber en que tipo de proyectos seria conveniente usar xp

    • Juan Luis Vila Grau dice:

      Hola Andres,

      Gracias por escribir.

      El método XP como su nombre indica (Programación Extrema) está especialmente desarrollado para proyectos de software o desarrollo. Al respecto incluye muchas prácticas específicas de ingenieria del ámbito del desarrollo de software: pruebas de aceptación, pruebas unitarias, programación dirigida por pruebas, integración permanente, etc.

      Por otro lado, también es cierto que algunas de sus prácticas, se han extendido a otros métodos y marcos de trabajo, cómo todo lo que tiene que ver con la planificación, el uso de las historias de usuario o las reuniones de pie.

      Hasta pronto!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

AUTOR:  Juan Luis Vila Grau

SAFe® 4 Certified Agilist, PRINCE2® Practitioner, Scrum Product Owner (PSPO I), Scrum Master (PSMI), EXIN Agile Scrum Foundation, AgilePM® Foundation, Management_of_Risk (M_o_R®) Foundation. and an enthusiastic of Agile management. Especialistas en técnicas participativas para la gestión de proyectos, y en el Enfoque del Marco Lógico (EML). Faclilitador certificado en el método LEGO® Serious Play®

Utilizamos cookies de terceros para mejorar nuestros servicios. Si continúa navegando, considera que acepta su uso. Más información aquí.  CERRAR