viernes, 20 de abril de 2012

Scrum I: La base

Scrum es un framework para la gestión y desarrollo de proyectos software mediante un enfoque iterativo e incremental. El objetivo de Scrum es poder resolver problemas complejos de manera productiva y creativa, creando un producto con la mayor calidad posible. Al ser un proceso con iteraciones de corta duración (como máximo un mes) el feedback obtenido del cliente es constante y la evolución es mas cercana a lo que desea el cliente.

Scrum esta compuesto de cinco elementos: equipo, roles, eventos, artefactos y reglas; siendo cada uno de ellos esencial para su funcionamiento. Estos elementos se cubrirán en detalle en otros articulos.

Hay tres pilares que hay que tener siempre en cuenta a la hora de trabajar con Scrum: transparencia, inspección y adaptación.

Transparencia
Los aspectos importantes del proyecto deben ser visibles para todo el entorno, usando un lenguaje común y bien definido asegurándonos que todos entienden lo mismo por el mismo termino.

Un clásico ¿Cuando algo esta terminado? Cada persona puede dar una respuesta diferente a esa pregunta.

Lo que se pretende con la transparencia es saber en todo momento en que punto nos encontramos con nuestro proyecto y hacia donde vamos.

Inspección
Sino tenemos transparencia llevar a cabo una inspección seria una tarea extremadamente tediosa, improductiva y seria realmente difícil evaluar la situación actual. Por eso al tener un proceso transparente facilita enormemente la inspección de nuestra situación actual y de como vamos avanzando hacia nuestro objetivo.

La inspecciones deben realizarse con frecuenta pero sin llegar al punto de que obstruya el trabajo. Las inspecciones van de la mano con las adaptaciones, en el siguiente punto se explicara como ponerlas en practica.

Adaptación
Luego de una inspección, los errores o desviaciones detectados que sobrepasen los limites de aceptación deben solucionarse.  Los ajustes deben hacerse cuanto antes mejor, minimizando así el grado de desviación, la cantidad de errores actuales, y se evita el arrastre de errores; todo esto ayuda a mantener la planificación y el coste inicial.

Formalmente Scrum define cuatro puntos de inspección y adaptación:
  • Sprint Planning
  • Daily Scrum
  • Sprint Review
  • Sprint Retrospective