Scrum: metodología ágil en gestión de proyectos

13 Mayo 2011

project1A la hora de llevar a cabo la gestión de proyectos, hay diversos tipos de metodologías, las cuales están diseñadas para gestionar distintos tipos de proyectos y así poder adaptar cualquier proyecto a la metodología idónea para él.

Cuando realizamos proyectos software la metodología más usada y que mejor permite gestionar el proyecto es la metodología Scrum. Esta es una metodología de gestión de proyectos ágil.

En Scrum se van a definir los puntos de partida para poder desarrollar un proyecto, se definen las partes del proyecto y los roles que participan en el mismo.

Es una metodología orientada a la obtención de resultados. Se da en ámbitos donde los requisitos que conforman el proyecto son cambiantes o están poco definidos. Estará focalizada en la realización de las tareas que integran las distintas fases de desarrollo de un proyecto.

La elección de una metodología ágil como es el caso de Scrum, se hace en base a las particularidades que los proyectos software presentan. Se valora más la capacidad de respuesta al cambio frente al seguimiento del plan, se valora que funcionen los productos obtenidos frente a la elaboración de documentación innecesaria. Se da un proceso continuo de comunicación con los clientes frente a una negociación cerrada contractualmente y valora las personas y las iteraciones frente a los procesos y las herramientas de la metodología clásica marcada por PMI.

Scrum define los elementos que forman el proyecto y los roles que participan en el mismo. Así podemos ver que los elementos que forman un proyecto se dividen en :

Pila de productos (product backlog): recoge los requisitos solicitados por el cliente
Pila Sprint (sprint backlog): enumera los trabajos que debe realizar el equipo para generar el incremento previsto en el producto.
Incrementos o iteraciones: son los resultados obtenidos en cada sprint.

Dentro de los roles que participan en un proyecto, Scrum diferencia en dos grupos:

Roles “cerdo” o aquellos comprometidos con el proyecto formados por: Dueño del producto, Jefe equipo de trabajo y el propio equipo de trabajo
Roles “gallina” que son aquellos que no son parte del proceso Scrum pero deben tenerse en cuenta. Formado por los usuarios del producto, los proveedores e inversores, y los managers del producto.

En Scrum, uno de los puntos fundamentales es la comunicación entre las partes, por eso se llevarán a cabo reuniones para poner en común los aspectos del proyecto o comunicarle al cliente la situación y estado del producto. Dentro de las reuniones de Scrum podemos diferenciar:

Planificación Sprint: es una jornada previa al inicio de cada Sprint en la que se determinan las tareas a realizar y los objetivos a conseguir en cada iteración
Seguimiento de Sprint: cada día se realizará una breve reunión donde se mostrará el estado del proyecto. Los participante sindicarán que hicieron el día anterior y que van a hacer ese día. También recogerá los posibles problemas que se pueden dar al llevar a cabo las tareas.
Revisión de Sprint: se hará una retrospectiva del Sprint, donde todos los miembros dejarán sus impresiones sobre el Sprint superado. Se realiza para poder obtener una mejora continua del proceso.

Los documentos que se generan con metodología Scrum son mucho menos que los que se generan a través de la gestión de proyectos empleando metodologías clásicas, como las basadas en PMI. Aún así, con Scrum se generará una documentación necesaria para poder desarrollar el proyecto. Esta documentación será la referente a la Pila de Producto (donde se recogen los requisitos del producto), a la Pila de Sprint (describirá como se dividen los sprint en sus tareas correspondientes), y la documentación sobre el Burn Down (que es una gráfica que mide la cantidad de requisitos en el backlog del proyecto pendientes al comienzo de cada Sprint).

Los beneficios que aporta emplear la metodología de gestión ágil de proyectos, y en este caso en particular, la metodología Scrum se pueden resumir en:

Gestión regular de los requerimientos del cliente: se hará a través de la lista de requisitos que el cliente crea y gestiona, donde quedan reflejadas sus expectativas a nivel de requisitos, valor, coste y las entregas. El cliente comprueba de manera regular si se van cumpliendo sus expectativas, da feedback, ya desde el inicio del proyecto puede tomar decisiones informadas a partir de resultados objetivos y dirige estos resultados del proyecto, iteración a iteración, hacia su meta. Se ahorra esfuerzo y tiempo al evitar hipótesis.
Resultados anticipados: El cliente puede empezar a utilizar los resultados más importantes del proyecto antes de que esté finalizado por completo. Esto le permitirá sacar al mercado un producto antes que su competidor, puede hacer frente a urgencias o nuevas peticiones de clientes. Mejorando su “Time to Market”.
Flexibilidad y adaptación: El cliente redirige el proyecto en función de sus nuevas prioridades, de los cambios en el mercado, de los requisitos completados que le permiten entender mejor el producto, de la velocidad real de desarrollo. Al final de cada iteración el cliente puede aprovechar la parte de producto completada hasta ese momento para hacer pruebas con consumidores y tomar decisiones en función del resultado obtenido.
Retorno de la inversión (ROI): El cliente maximiza el ROI del proyecto. Cuando el beneficio pendiente de obtener es menor que el coste de desarrollo, el cliente puede finalizar el proyecto.
Mitigación de riesgos: El equipo tiene que gestionar los problemas que pueden aparecer en una entrega del proyecto. La cantidad de riesgo a que se enfrenta el equipo está limitada a los requisitos que se puede desarrollar en una iteración.
Productividad y calidad: Los miembros del equipo sincronizan su trabajo diariamente y se ayudan a resolver los problemas que pueden impedir conseguir el objetivo de la iteración. Las personas trabajan más enfocadas y de manera más eficiente cuando hay una fecha límite a corto plazo para entregar un resultado al que se han comprometido. La consciencia de esta limitación temporal favorece la priorización de las tareas y fuerza la toma de decisiones. Se asegura la calidad del producto de manera sistemática y objetiva, a nivel de satisfacción del cliente, requisitos listos para ser utilizados y calidad interna del producto.
Alineamiento entre cliente y equipo: Todos los participantes en el proyecto conocen cuál es el objetivo a conseguir. El producto se enriquece con las aportaciones de todos.
Equipo motivado: Las personas están más motivadas cuando pueden usar su creatividad para resolver problemas y cuando pueden decidir organizar su trabajo

En resumen, Scrum ayudará a gestionar los proyectos ya que es un proceso en el que se aplican de manera regular un conjunto de mejores prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto.

  • Print
  • Facebook
  • Google Bookmarks
  • email
  • Live
  • Meneame
  • MySpace
  • Netvibes
  • PDF
  • Twitter

Escribe un comentario