domingo, 26 de febrero de 2017

XP VS SCRUM

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/


No hay comentarios:

Publicar un comentario