¿Por qué el desarrollo ágil es tan polarizador?

Esta es una pregunta interesante. Supongo que un elemento importante para responder a esta pregunta es el cambio en la mentalidad de las personas que Agile requiere:

Desde la perspectiva de los equipos de desarrollo:

  • ahora se espera que los equipos funcionen como unidades interdisciplinarias y autoorganizadas (con diseñadores, desarrolladores y evaluadores a menudo trabajando en paralelo)
  • El papel clásico de un Project Manager se vuelve redundante en Agile y es reemplazado por un ScrumMaster y los propios desarrolladores, que ahora son en gran parte responsables de planificar y estimar el trabajo.
  • Con las reuniones diarias de pie, los tableros de scrum y los gráficos quemados, hay mucha más visibilidad sobre el progreso del proyecto y sobre quién está haciendo qué (o no según sea el caso)
  • los equipos tienden a trabajar en sprints a corto plazo, que pueden ser intensos y generalmente comienzan con una reunión central de planificación de sprint y terminan con una reunión de revisión de sprint en la que la funcionalidad de trabajo real se demuestra al cliente o parte interesada

Desde la perspectiva del cliente:

  • En la mayoría de los proyectos ágiles, solo se congelan los plazos. La funcionalidad es flexible
  • esto introduce un elemento de incertidumbre que lleva un tiempo acostumbrarse
  • Dado que Agile es un proceso iterativo, los clientes podrán ver y probar los incrementos de productos de forma continua. En muchos casos, estos incrementos estarán lejos del artículo terminado (particularmente en términos de apariencia)
  • con el cliente en el rol de Propietario del producto, que se usa comúnmente en Agile, existe la expectativa de una mayor participación (tanto en términos de revisiones de productos como de toma de decisiones) en comparación con el rol del cliente en los proyectos más tradicionales de Waterfall
  • los clientes tendrán que intentar resistir el impulso de agregar una característica o un cambio durante una iteración ya que cada sprint se basará en un número fijo de características que se desarrollarán

Siento que con Agile es importante no quedar demasiado empantanado por la metodología, el lado del proceso de las cosas. Después de todo, Agile en sí mismo es una metodología flexible y en evolución.

En cambio, creo que para que Agile tenga éxito, es importante adaptar los principios que sustentan a Agile de tal manera que funcionen para el proyecto, los desarrolladores y el propietario del producto en cuestión.

Podemos ver esto desde dos lados, la persona “en el piso” y los gerentes.

La transición a una organización ágil es muy dolorosa, muchos de los viejos hábitos tienen que desaparecer, especialmente para la administración. Para algunos, eso no es fácil, por lo que su impresión de agilidad es que es una transición para peor porque han perdido muchas herramientas de su bolsa de herramientas y podrían no estar interesados ​​en adquirir nuevas habilidades.

Una transición ágil mejorará las cosas para la organización en general y los equipos, pero para algunos será peor.

Mi colega, Ebba Kraemer, pronunció un discurso en el encuentro Vegas SCRUM sobre la controversia de despojar a sus jefes. Puedes encontrar las diapositivas aquí:
La controversia de desempoderar a tus jefes

Si lo miramos desde la persona “en el piso”, creo que la mayoría de las organizaciones no explican qué tan ágil les mejorará. Las personas que no saben mucho sobre el desarrollo ágil pueden percibir fácilmente el cambio como una nueva moda administrativa y continuarán trabajando como siempre lo han hecho. Lo que a su vez causará fricción con los que compran el cambio.

Con todo, las razones anteriores combinadas con el comportamiento de culto de algunos “agilistas” conducen a una visión muy polarizada del tema.

Agile se está polarizando principalmente porque se practica mal en más entornos de los que se practica correctamente, y cuando se “vende” a las empresas, no entienden que no se trata solo de una metodología de desarrollo, sino de un enfoque general para el diseño y la implementación del producto. el tablero: cambia la forma de comercializar, vender, brindar soporte, capacitar, diseñar, construir y lanzar productos.