¿Existe un buen modelo para elegir un enfoque ágil?

Soy gerente de proyectos en una organización extremadamente burocrática y orientada a la cascada, pero tengo la oportunidad de probar un enfoque ágil con un nuevo proyecto que estoy desarrollando.

Tengo experiencia con scrum y kanban, pero tengo la intención de analizar de manera integral las principales metodologías ágiles y determinar la mejor opción para el proyecto y la organización.

¿Existe un buen modelo o herramienta para ayudar a determinar la metodología ágil adecuada para la situación?

En ausencia de un buen modelo, ¿cuáles cree que son los criterios clave para elegir una metodología ágil específica? Y si realmente quieres ir por la borda, ¿qué peso (como porcentaje del total) le aplicarías a tus criterios?

El libro de Robert Wysocki sugiere algunos enfoques generales basados ​​en si el objetivo del proyecto es claro o no, los requisitos están completos, el cronograma es ajustado y si se esperan cambios en el alcance. Pero puede haber otros recursos que vale la pena revisar.

Una buena lectura para prepararse contra aquellos que intentan deformar y destruir la metodología ágil para adaptarse al "contexto" de la organización.
@NathanCooper Gracias. Una de mis citas favoritas para esa publicación de blog: "La única forma de tener éxito, además de tener un golpe de suerte, es construir un equipo que trabaje bien en conjunto y que haga las cosas. XP y Scrum son las mejores formas que conocemos. trabajar bien juntos".
Recomiendo encarecidamente centrarse más en la preparación/capacidad del equipo para adoptar una mentalidad ágil y objetivos frente a procesos. También debe involucrarlos en la evaluación de los puntos de partida del proceso. ¿Eso ralentizará el saque inicial? Definitivamente. Sin embargo, elegir un proceso para un equipo de forma aislada y luego capacitarlo puede obstaculizar muchos proyectos piloto; obtener "todos en el barco", por así decirlo.
El enlace del libro ha caducado, puede encontrar la versión archivada en web.archive.org/web/20091214011345/http://www.wysockiepm.com

Respuestas (5)

No sé mucho sobre cómo seleccionar metodologías (siempre usé Scrum como base y lo adapté a las necesidades específicas del proyecto y la organización), pero tenga en cuenta que ágil es más una mentalidad que un proyecto.

Si desea introducir una metodología ágil en una nueva organización, los puntos clave son:

  • Los miembros del equipo deben estar facultados y ser responsables del resultado (no es necesario que las autoridades superiores aprueben en la mayoría de los casos; por ejemplo, la OP debe poder cambiar el alcance sin involucrar al patrocinador)
  • Se requiere dedicación de toda la organización para permitir que incluso un solo equipo sea ágil (por ejemplo, no pudimos comenzar nuestro primer sprint porque el departamento de seguridad no autorizó a los miembros del equipo a obtener las llaves de la sala de desarrollo durante 2 semanas)
  • No es un maratón, es un sprint: necesitará poner energía continuamente, no habrá períodos más lentos (no habrá tiempo para sus otras responsabilidades; si está 100% en el proyecto, ningún otro trabajo encajará) en su horario)
  • Acepte el cambio: espere que los acuerdos que se hicieron ayer se revisen y posiblemente se deshagan mañana, no se preocupe por eso.
  • Sea flexible con respecto al resultado: lo que tiene en mente posiblemente no sea lo que obtendrá después de algunos cambios.
  • Y, lo más importante: confíe en los otros miembros del equipo: no debe jugar a la política empresarial o juegos de poder, está remando en el mismo bote.

Si tiene la suerte de que esos puntos sean aceptados (y respaldados por su organización), la metodología concreta es bastante irrelevante.

No estoy de acuerdo con el concepto de sprint, la transición hacia la agilidad es más probable que sea un maratón que un sprint. Tener un ritmo sostenible es clave, no hacer las cosas a un ritmo acelerado el 100 % del tiempo... lo más probable es que durante los primeros intentos el ritmo y la productividad realmente disminuyan. Por último, pero no menos importante, no tener ningún otro trabajo que se ajuste al horario como requisito previo puede ser bastante peligroso.
De acuerdo, me encantaría ver a un equipo escribir todo durante su primer proyecto Scrum/Agile. Hay una razón por la que la guía Scrum aconseja mantener los equipos juntos; no solo adquieren conocimientos sobre los conjuntos de habilidades de los demás, sino que también se vuelven más efectivos como equipo Scrum .
"No es un sprint, es un maratón, no deberíamos intentar ganarlo en los primeros 100 metros" fue una cita real de nuestro cliente durante un proyecto de introducción ágil, que tuvimos que rechazar respetuosamente (el contexto era que habían prefiero no presionarlo durante el primer sprint, ya que habrá mucho tiempo para tomar impulso más adelante).

Si, como usted dice, su organización es extremadamente burocrática y orientada a la cascada, no "perdería" demasiado tiempo pensando en qué hacer y, en cambio, comenzaría a hacer algo:

  1. Encuentra un problema para resolver
  2. Descubre cómo resolverlo
  3. Aplica tu solución
  4. Inspeccionar y adaptar

O, como sugiere Dave Thomas :

He aquí cómo hacer algo de manera ágil:

Qué hacer :

Descubre dónde estás

Da un pequeño paso hacia tu meta

Ajuste su comprensión en función de lo que aprendió

Repetir

Cómo hacerlo :

Cuando se enfrente a dos o más alternativas que ofrecen aproximadamente el mismo valor, tome el camino que facilite el cambio futuro.

Haga esto junto con su equipo, deje que la metodología crezca de la mano con el compromiso de las personas, especialmente si desea resultados duraderos.

Ah, y buena suerte ;)

No es realmente una respuesta, por así decirlo, pero le sugiero que vea esta charla muy interesante de Yuval Yeret: "Buenas y malas formas de impulsar la agilidad al estilo Kanban" . Presenta cómo impulsar la adopción de Agile usando Kanban, considerando cada pequeño cambio como una opción, y brinda buenos consejos sobre la gestión de cambios, al estilo Kanban.

Además, también puede leer una entrevista de Yuval Yeret por Ben Linders sobre el mismo tema.

(fuentes: infoq.com)

Primero: el desarrollo ágil de software se trata de cambiar su proceso para que se ajuste a sus necesidades. Scrum no es ágil, Kanban ( JIT ) no es ágil. Es su equipo cambiando procesos o creando sus propios procesos que se adapten a su situación: eso es lo que significa ser ágil.

En estos días entre las metodologías hay una clara comprensión de lo que es más rápido y se resuelve con mejor calidad. Dependerá de su calificación, equipo y organización lo que realmente puede aplicar:

  1. La entrega continua es la opción n.º 1 en la actualidad. Puede liberar a PRD incluso si las funciones no están listas (existen técnicas que permiten ocultar esos cambios). Pero necesitarías a alguien con experiencia para que funcione. Y puede resultar en una calidad más pobre que la siguiente opción si tiene un equipo de desarrollo débil.
  2. Just-in-time , Theory of Constraints : con estos, libera todas las tareas (o las agrupa en pequeños lotes). Si no eres fuerte en CD, esta es la mejor opción para comenzar. Es un poco más lento que CD y más rápido que Scrum, y resulta en muy buena calidad.
  3. Scrum : se basa en la iteración y tiene muchas actividades adicionales. Por lo tanto, da como resultado un desarrollo de menor calidad y más lento (mucho más lento). Pero sigue siendo mucho mejor que Waterfall.

Estos no siempre son mutuamente excluyentes. Nuevamente, lo más probable es que su situación necesite que se modifique algo. Y los procesos no tienen que ser estáticos: puede cambiarlos de un lado a otro según el estado de ánimo actual del equipo.

Te sugiero que lo mantengas simple y sigas estos pasos :)

  1. armar un equipo
  2. crear una cartera de productos
  3. calcule su cartera de pedidos
  4. inicio de un sprint o iteración

luego inspeccione, adapte y repita!

Buena suerte :)