SCRUM VS XP
En este texto veremos dos métodos
agiles de programación: XP y SCRUM. Veremos la definición y las características
de cada uno, los roles (función de cada persona en el equipo), artefactos (documentos),
y una tabla comparativa entre los dos.
Definición: Se dará una corta definición
de cada proceso para darle al lector una idea general de cada método
·
XP: Es una metodología agil centrada en
potenciar las relaciones interpersonales como la clave para el éxito en
desarrollo de software, promoviendo el trabajo en equipo. Se basa en la
realimentación continua entre el cliente y el equipo de desarrollo de software.
·
SCRUM: Es un método ágil que nos permite centrarnos
en ofrecer el más alto valor de negocio en el menor tiempo. Se podría decir que
el objetivo principal es maximizar las ganancias que inversión de la empresa.
Características: En esta sección
se pondrán características de ambos métodos
·
XP: Hay requisitos imprecisos y muy cambiantes,
y existe un alto riesgo técnico.
·
SCRUM: Equipo Auto-Organizado; El producto
avanza en una serie de Sprints de dos semanas a un mes de duración; Los
requisitos son capturados como elementos
de una lista de “Product Backlog”; No hay prácticas de ingeniería prescritas.
Roles: Esta sección es de suma
importancia puesto que se verá los roles en cada método y que hace cada rol en
el proyecto
-XP:
·
Cliente: Escribe las historias de usuario y las
pruebas funcionales para validar su implementación. Además asigna la prioridad
a las historias de usuario.
·
Tester: Ayuda al cliente a escribir las pruebas
funcionales. Ejecuta las pruebas regularmente y difunde los resultados en el
equipo.
·
Encargado de Seguimiento (Tracker): Proporciona
realimentación al equipo. Verifica el grado de acierto entre las estimaciones
realizadas en tiempo real dedicado para mejorar en un futuro.
·
Entrenador (Coach): Es responsable del proceso
global. Debe proveer guías el equipo de forma que se apliquen las practicas XP.
·
Consultor: Es un miembro externo del equipo con
un conocimiento específico en algún tema necesario para el proyecto.
·
Gestor (Big Boss): Es el vínculo entre los
clientes y los programadores.
-SRUM:
·
Product Owner: Es el responsable por la
rentabilidad del producto, es el cliente del proyecto.
·
ScrumMaster: Es un experto de Scrum, sea segura
que el equipo siga la teoría de Scrum, las prácticas y las reglas.
Encuentra técnicas para hacer efectivo
el productBacklog. Remueve impedimentos, esto quiere decir que es el escudo del
equipo de interferencias externas.
·
Team: Es
un equipo multifuncional esto quiere decir que los miembros deben ser capaces
de ejecutar varias tareas, muchas son compartidas con el método de arriba , los
miembros deben ser full-time.
·
StakeHolder: Conjunto de personas que no forman
parte del proyecto, pero que pueden ser beneficiados con el mismo.
Artefactos: En este apartado se
verán los documentos que ayudan al proceso de cada método.
-XP:
·
Historias de Usuario: Son el documento que se
utiliza para especificar los resultados del software. Se trata de tarjetas de
papel en las cuales el cliente describe brevemente las características que el
sistema debe poseer. Este documento es dinámico y flexible.
·
Tareas de Ingeniería
·
Pruebas de Aceptación
·
Pruebas Unitarias y de Integración
·
Plan de Entrega
·
Código
-SCRUM:
·
ProductBacklog: Lista de requisitos de usuario
·
SprintBacklog: Se decide cómo alcanzar el
objetivo del sprint, Se hace una lista de las tareas, que es el documento,
estas tareas tiene que estar basadas en los temas del product.
·
BurndownCharts: Es una representación gráfica de
los pendientes que se tiene.
Proceso: En esta sección se ve cómo
trabaja cada método y la logística que los rige.
-XP:
En XP el proceso esta dado por 6 pasos
·
El
cliente define el proceso de negocio que se va a llevar a cabo para realizar el
proyecto
·
El programador estima el esfuerzo necesario para
su implementación.
·
El cliente selecciona qué construir, de acuerdo
con sus prioridades y las restricciones de tiempo.
·
El programador construye ese valor de negocio.
·
Vuelve al paso 1.
-SCRUM:
·
Sprint Planning: Reunión durante la cual el Product Owner presenta las historias del
backlog por orden de prioridad, donde el equipo determina la cantidad de
historias que puede comprometerse a completar en ese sprint, para luego,
decidir y organizar cómo se va a lograr.
·
Sprint:
Iteración de con un limite de tiempo, donde la iteración es entregada en un
sistema operativo nuevo.
·
Daily
sprint meeting: Reunión diaria de cómo máximo 15 min. en la que el equipo
comenta que hizo el día anterior, que hará hoy y si hay impedimentos.
·
Demo y
retrospectiva: Reunión que se hace después de cada sprint para comentar como
mejorar lo hecho o perfeccionarlo.
|
XP
|
SCRUM
|
|
Las iteraciones de entrega son de una a tres
semanas
|
Las iteraciones de entrega son de 2 a 4 semanas y
se conocen como sprint
|
|
Las tareas que se van terminando en las
diferentes entregas son susceptibles a modificaciones durante el transcurso
de todo el proyecto.
|
Al finalizar un sprint, las tareas que se han
realizado ya no se vuelven a tocar en ningún momento.
|
|
El equipo de desarrollo sigue estrictamente el
orden de prioridad de tareas definido por el cliente
|
El Scrum Team trata de seguir el orden prioridad
que marca el product Owner en el sprintBacklog
|
|
Se centra más en la propia programación o
creación del producto.
|
Esta más enfocado en la administración de un
proyecto.
|
|
Trabajan en parejas
|
Los miembros trabajan individualmente
|
Conclusión: No
se puede decir cuál es mejor o cual es peor, todo depende de la situación y del
proyecto que se va a desarrollar, como pudimos ver, SCRUM es un proceso ágil,
mientras que XP es una metodología por lo tanto no se puede hacer una
preferencia, son cosas muy distintas en muchos aspectos, aunque como se puede
observar también tienen cosas en común, ambas siguen el documento de método ágil.
Bibliografía:
Ernesto
Grafeuille. (2008). Introducción a Scrum
Métodologías
Ágiles en el Desarrollo de Software;José H. Canós, Patricio Letelier y Ma
Carmen Penadés;DSIC -Universidad Politécnica de Valencia;Camino de Vera s/n,
46022 Valencia
Que es Scrum. 2015, de proyectosagiles Sitio
web: https://proyectosagiles.org/que-es-scrum/