Metodología XP
Metodología XP
Metodología XP
(Revalidación)
Las empresas que apuestan por una Transformación Digital completa terminan por incluir, implantar y desarrollar
metodologías ágiles en el interior de sus departamentos para entregar los productos y/o servicios con una mayor calidad
y con unos costes y tiempos mucho más reducidos.
Las metodologías ágiles mejoran la satisfacción del cliente dado que se involucrará y comprometerá a lo largo de
todo el proyecto. En cada etapa se informará al cliente de los logros y progresos del mismo, con la visión de involucrarlo
directamente para sumar su experiencia y conocimiento, y así, optimizar las características del producto final obteniendo
en todo momento una visión completa de su estado.
R.E.R.Nº231-90. (Creación) R.M.N.Nº297-94. (Ratificación) R.D.Nº212-05-ED. (Revalidación)
Otra de las ventajas es la mejora de la motivación e implicación del equipo de desarrollo. Pero esta mejora no es
casual: las metodologías ágiles permiten a todos los miembros del equipo conocer el estado del proyecto en cualquier
momento, así, los compromisos son negociados y aceptados por todos los miembros del equipo.
Por otro lado, cabe destacar que optar por la aplicación de una gestión ágil permite ahorrar tiempo y costes. El
desarrollo ágil trabaja de un modo más eficiente y rápido, y con ello, se cumple de forma estricta el presupuesto y los
plazos pactados dentro de un proyecto.
Se trabaja con mayor velocidad y eficiencia. Una de las máximas de su aplicación es que se trabaja a través de
entregas parciales del producto, de este modo, es posible entregar en el menor intervalo de tiempo posible una versión
mucho más funcional del producto.
Gracias a las entregas parciales (centradas en entregar en primer lugar aquellas funcionalidades que aportan valor) y
a la implicación del cliente será posible eliminar cualquier característica innecesaria del producto.
El equipo de un proyecto XP
Los equipos de un proyecto de esta tipología y magnitud tienen normalmente las siguientes figuras y roles:
– Clientes: Establecen las prioridades y marca el proyecto. Suelen ser los usuarios finales del producto y
quiénes marcan las necesidades.
– Programadores: Serán los que se encargarán de desarrollar el Extreme Programming.
– Testers: se encargan de ayudar al cliente sobre los requisitos del producto.
– Coach: Asesoran al resto de componentes del equipo y marcan el rumbo del proyecto.
– Manager: Ofrece recursos, es el responsable de la comunicación externa y quien coordina las actividades.
En general, no obstante, los participantes en este tipo de equipos no siempre toman un rol fijo y contribuyen con los
conocimientos de cada uno en aras del beneficio colectivo.
Planificación
Por una parte, se deben planificar los plazos temporales del proyecto basándose en las exigencias del cliente. En
base a las estimaciones de coste y la dificultad del proyecto se marcan las prioridades y las fechas, no siempre de
forma precisa, pero sí orientativa.
R.E.R.Nº231-90. (Creación) R.M.N.Nº297-94. (Ratificación) R.D.Nº212-05-ED. (Revalidación)
Con la entrega de la planificación efectuada, se desarrolla la de la iteración en el que cada dos semanas se marca el
rumbo y se entrega el software útil después de cada uno de estos periodos bisemanales. Con esto se consigue que el
nivel de precisión sea mucho mayor, las estimaciones sobre los costes sean más exactas y la información mucho más
transparente.
Pruebas
Continuamente se han de efectuar una serie de pruebas automatizadas en base a los requisitos del cliente para
comprobar que todo funcione correctamente. Éstas han de hacerse de forma periódica y automática.
Con las planificaciones comentadas anteriormente se incluyen las entregas al final de cada iteración, éstas serán
siempre con el software probado y funcionando correctamente y será facilitado al cliente, que puede utilizarlo para
cualquier propósito, incluso para el usuario final. Los equipos XP también pueden hacer entregas a otros usuarios
finales.
Diseño y Programación
El diseño del programa suele ser simple y basado en la funcionalidad del sistema y se lleva a cabo durante todo el
proyecto, tanto durante la planificación de la entrega como en el de la iteración.
La programación del software se hace siempre en pareja, lo que se llama programar a dos manos. Se asegura con este
método que al menos un programador conoce y controla la labor de otro y queda revisado. La ventaja es que se produce
mejor código que en base a un programador, aunque la dificultad de la misma sea mayor.
El código es de todos, con el desarrollo de las pruebas automáticas y la programación a dos manos se incluye también
la posibilidad de que cualquiera pueda añadir y retocar parte del código, aunque eso sí, deba ser un estilo común y
cuyo resultado sea como si sólo lo hubiera hecho una persona.