lunes, 28 de mayo de 2018

Agile team: El rol Iteration Manager

El rol Iteration Manager



El Iteration Manager (IM) es un Facilitador del Delivery iterativo que vela por que el equipo tenga todas las capacidades para entregar el mejor valor posible. En resumen, es una función dentro de los equipos de desarrollo Agile que se enfoca internamente en el equipo, facilitador de equipo, y en la facilitación del proceso de desarrollo y de entrega. 

Es un rol que algunas empresas usan como abstracción del rol de Scrum Master (de Scrum). El Iteration Manager busca lograr que su equipo logre ser un equipo ágil de alto desempeño y que mejore continuamente. Algunas empresas lo usan como un híbrido de Coach o Scrum Master y Manager (Project Manager).


Origen del término


El término Iteration Manager se originó en 2001 en la oficina de Thoughtworks en Chicago, donde uno de los equipos de Martin Fowler estaba usando eXtreme Programming (XP). El rol del administrador de iteraciones ha aparecido con más frecuencia en el espacio ágil australiano. En Australia se dio cuenta del rol a mediados y finales de la década de 2000 cuando varias organizaciones, incluido Suncorp Group, comenzaron a adoptar Agile. El término también fue manejado en apuntes de PMI para equipos de delivery. En PMI el rol de Scrum Master lo llaman Team Facilitator o Team Lead, pero también han sugerido en algún apunte el uso de Iteration Manager.



Cuando se implementa el rol


El rol no es propio de un marco de trabajo específico sino que es un término ad-hoc, híbrido o producto de sircunstancias particulares en la adopciones de Agile. Algunos escenarios son los siguientes:
  • La organización adopta enfoques Agile híbridos (es decir, el uso de elementos de PMI, Scrum, Kanban, XP, etc.) en lugar de usar un marco Agile único como Scrum o un framework puro con su terminología indicada; y en el sorteo o en la elección de nombres gana Iteration Manager.
  • La organización tiene Project Manager y consideran que el Project Manager es necesario. Los dos roles están destinados a complementarse entre sí y trabajar en estrecha colaboración o como un único rol: el Iteration Manager.


¿Qué hace un Iteration Manager?


En términos prácticos, los Iteration Managers se aseguran de que su equipo madure en los principios y prácticas Agile. Se aseguran de que el equipo siga correctamente los eventos (reuniones), eliminan los impedimentos y los mantienen enfocados en sus prioridades día a día.


El Iteration Manager se asegura de que se programen, organicen, lleven a cabo y faciliten las siguientes ceremonias ágiles comúnmente utilizadas (ya sea por el Iteration Manager o idealmente por otra persona del equipo):
  • Daily Standup (también conocido como Daily Scrum).
  • Story Kickoffs. El Story Kick-off es una oportunidad para aclarar cualquier duda o ambigüedad relacionada con la historia y alinear las expectativas de todos los involucrados y el entendimiento del equipo. Esto es una práctica ágil y en Scrum no existe como evento aunque el Product Owner con ayuda del Scrum Master es quien habitualmente hace algo semejante.
  • Retrospectivas (retrospective en Scrum).
  • Showcases (también conocido como Sprint Review).
  • Planificación de Iteración / Lanzamiento (también conocida como Sprint Planning).
Capacita a los miembros del equipo para que sean autosuficientes y organicen todos los eventos (ceremonias o meetings) mencionadas anteriormente.

Se asegura de que se completen todas las acciones de seguimiento resultantes de los eventos del marco de trabajo.

Se asegura, como mínimo, de que se realice la planificación para la Iteración actual y la siguiente (también conocida como Sprint).

Se asegura de que las Historias hayan sido estimadas por el equipo:
  • La prioridad es estimar las Historias en la Iteración actual y la siguiente (si aún no se ha hecho).
  • Estimar todo el backlog permite la planificación y el reporte de lanzamientos/proyectos (ver más abajo).
  • Estas dos actividades se pueden realizar como parte del Refinamiento del Product Backlog (también conocido como Backlog Grooming).
  • La estimación puede realizarse de diferentes formas dependiendo de la organización, como Story Points, tamaños de camisetas, Cycle Time, o cualquier enfoque adecuado y acordado.
  • Se asegura de que el equipo se enfoque en las prioridades más altas trabajando en estrecha colaboración con el Project Manager y el Product Owner.

Se asegura de que el equipo actualice regularmente el estado de sus tarjetas de Historias (es decir, en qué columna se encuentran) moviendo las tarjetas física y/o electrónicamente.

Se asegura de que las Historias correctas estén en la Iteración acordada (en el Muro de Historias físico y en las herramientas electrónicas como JIRA/Rally/Trello), basándose en las prioridades.

Elimina cualquier impedimento que bloquee el progreso del equipo del proyecto (o lo escalan al Project Manager cuando corresponda).

Con la ayuda del Project Manager y el Product Owner, protege al equipo de distracciones e interferencias externas con la entrega del proyecto.

Capacita a todos los miembros del equipo del proyecto (incluidos el Project Manager y el Product Owner) para que comprendan los valores, principios y prácticas ágiles.

Brinda entrenamiento en autoorganización, multidisciplinariedad y entrega de proyectos/productos.

Instruye qué hacer cuando Agile aún no se ha adoptado y entendido por completo en toda la organización.

Se asegura de actualizar el gráfico Burn down (vista de iteración del progreso) a lo largo de la iteración para mostrar cómo está realizando el seguimiento el equipo

Se asegura de actualizar el gráfico Burn up (versión/vista de progreso del proyecto) al final de cada iteración.

Mantiene constantemente informado al Gerente de Proyecto/Propietario del Producto sobre los impactos en el Alcance y el Tiempo.

Al centrarse internamente en el equipo, el administrador de iteraciones ayuda al equipo a trabajar de la manera más eficaz y eficiente posible. 

Cuida de su equipo para garantizar que pueda cumplir y superar las expectativas y producir valor para la organización. 

El objetivo es ayudar al equipo a ser más ágil.


Hay que recordar que como no es un rol de alguna metodología o guía en particular, las responsabilidades que tenga dependerá de la organización que lo implemente. Estas actividades y responsabilidades mostradas aquí son solo orientativas.

¿Es semejante al Scrum Master?


Como vimos, en gran medida un Iteration Manager hace lo que hace un Scrum Master. Aunque el Scrum Master está atado al framework Scrum. Pero un Iteration Manager estaría atado, conceptualmente, al desarrollo iterativo. O sea que no haría método Kanban, por ejemplo. Un Iteration Manager no solo podría usar metodologías livianas como Scrum y Crystal, sino que también podría implementar metodologías semi-pesadas o híbridas como RUP, Blue Watch o PMI/Scrum (DAD/Scrum).

Algunas personas usan los dos títulos indistintamente. Hay quienes opinan que aunque tienen responsabilidades muy similares, sin embargo, hay una diferencia sutil en la cantidad de entrenamiento que brindan al equipo y al resto de la organización. El Scrum Master es responsable de entrenar al resto de la organización en el proceso Scrum, sin embargo, el Gerente de Iteración generalmente solo se enfoca en el equipo (Ryan McKergow, 2015).

Otros opinan que solo se usa el término Iteration Manager para no usar el de Scrum Master.



Diferencias con el Project Manager


El rol Iteration Manager está pensado para liderar un equipo ágil con foco en el equipo y el desarrollo iterativo (Scrum, Iteration in DAD, etc.), en cambio el Project Manager está pensado para actividades más orientadas a proyectos y organizacionales, para desarrollo predictivo (PMI ed. 6, waterfall, RUP, etc.).
El Project Manager puede tener actividades como las siguientes:
  • Planear fuerza de trabajo (workforce) y personal (staffing).
  • Controlar y monitorear el financiamiento de proyectos.
  • Gestionar la salud y conflictos del equipo o entre equipos.
  • Evaluación de personal y crecimiento profesional del personal.
  • Gestión organizacional de stakeholders de proyectos.
  • Planeación de proyectos con delegación.
Estas actividades no compatibilizan con las de un Iteration Manager. Podrían coincidir si se trata de un rol fusión entre Project Manager y Scrum Master.



Referencias:



No hay comentarios:

Publicar un comentario