Flexibilidad en Agile

Flexibilidad, tubo flexible.
CC0 Dominio publico

Hola a todos. Hace poco comencé con un ciclo de «desmitificar agile» escribiendo algunos artículos sobre mitos. Hoy traigo a debate sobre la flexibilidad en Agile. ¿A que llamamos flexibilidad? ¿Cual es el umbral, los limites, hasta donde si y donde no se es flexible?. Bueno, paso a plasmar mi reflexión al respecto.

En principio creo que para entender esta reflexión sera necesario entender a Agile como una forma de pensar, un pensamiento, una filosofía, y no como una metodología. Hace poco escribí un articulo separando esto, y dando a entender que Agile NO es una metodología. Necesario para entender hasta donde la flexibilidad en Agile.

Flexibilidad en metodologías

Las metodologías ágiles en su esencia suelen ser flexibles, y marcos teóricos que en la realidad no suelen poder ser implementados al 100%. Es por este motivo que a la hora de implementar metodologías ágiles se suele tener que ser flexible, adoptando de estas sus componentes necesario.

El ejemplo de SAFe

Si utilizamos como ejemplo el marco de escalado SAFe, este posee muchos roles, eventos, y artefactos. Muchísimos objetos, tanto que suele marearnos al ver la imagen del marco por primera vez. Pero… ¿Es posible implementar SAFe tal como se presenta en el marco de trabajo?

El mismo marco de trabajo nos da la respuesta a esta pregunta. El marco de trabajo establece que todos esos componentes no son necesarios implementarlos en su totalidad, si no mas bien tomar los que sean necesarios en la aplicación de la organización. Si vemos en su totalidad el marco de trabajo y lo analizamos, su implementación pura resultaría imposible. Al ser imposible su implementación total e implementar solo los componentes necesarios estaríamos siendo flexibles, tomando lo que nos sirve y dejando de lado lo que no. Agregando también, por que no, componentes que creemos necesarios, nuevos roles, artefactos o eventos que se requieran en base a la practica. Pero entonces, si agregamos componentes, descartamos otros, ¿seguiría siendo SAFe?

Podríamos decir que si, sigue siendo SAFe, siempre que siga sus principios y valores. Y acá lo fundamental, no importa los componentes que se usen, para ser SAFe solo importa se sigan dichos valores y principios, de lo contrario, podríamos decir que es un marco basado en SAFe, y esto también seria valido, seria SAFe, no, pero si un marco basado en el mismo.

Flexibilidad en valores y principios

En mi opinión los valores y principios son quienes definen la identidad del marco. Pero esto no significa no pueda cambiar. Los marcos de trabajo evolucionan, su forma de existir va mutando. Entonces, sus valores y principios también podrían mutar. Pero claro, no es una tarea sencilla, ahí es la organización detrás, una comunidad o empresa, quien en algún momento de la existencia del mismo, deberá redefinir estos. Eso significa, que no es imposible cambiarlos. Pero creo que, como mencione antes, si uno decide no adoptar alguno de estos, no podriamos llamar al marco con su nombre original, si no mas bien como un marco nuevo basado en el original.

Flexibilidad en Agile

Cuando hablamos de Agile, no hablamos de un marco de trabajo en si, si no mas bien de un modelo de pensar, una cultura. Entonces, ¿en agile tenemos componentes como en los marcos de trabajo? No, no existen, solo tenemos Valores y principios a seguir.

El arte de la simpleza

Como bien mencione varias veces, agile es una forma de pensar, una cultura, y es muy pero muy simple, básica. Solo se basa en 4 valores, y 12 principios. Estos valores y principios nacieron para el desarrollo de software, y ahí es donde en poco mas voy a hablar de la flexibilidad en Agile.

Cualquier marco de trabajo, que se compatibilice con estos valores y principios seria un marco de trabajo agile.

Ser flexible

Como todo, existe un umbral de tolerancia, donde se puede llegar a un punto en el que se quiebra lo que queremos flexionar. Para ser Agile, se debe respetar los valores y principios. Pero, no significa se deban seguir al pie de la letra cual fanático religioso siguiendo su libro sagrado.

Para ser flexible se debe entender que se busca con estos valores y principios, ya que en si no son importantes en su redacción si no lo que significan, su mensaje que trasmiten. Pero esto no significa que podamos tergiversarlo a nuestro criterio, rompiéndolos, ya que si se pierde su significado, o su objetivo, lo que se haga dejaría de ser «Agile».

Ejemplo de flexibilidad

Basado en lo que mencione mas atrás, y para no ser muy «enroscado», me gustaría dar un ejemplo. Utilizando al segundo valor «Software funcionando sobre documentación extensiva», me gustaría entrar en su significado. En el mundo del software solía suceder que teníamos carpetas y carpetas, libros enteros, para a veces poder documentar la necesidad de plasmar un simple mensaje de texto de pocas lineas de código. Para programar se requería menos de 1 hora, pero documentar días. Lo que menciona este Valor, no es no documentar, si no hacerlo en su medida justa, que no sea un desperdicio, que lo que importa mas es que el software este funcionando.

Ahí entendiendo de que va ese Valor, entonces podriamos flexibilizarlo, mencionando que se podría ser agile, si en lugar de software funcionando hablamos de mueble funcional, por ejemplo, sobre planos complejos. Por ahí construir un mueble usando un simple bosquejo que quede a modo documentación alcanza, cumpliendo así la premisa del segundo valor Agile.

Entonces, ahí modificamos el Valor Agile, pero, seguiríamos siendo ágiles igual.

Anti ejemplo, que pasa si…

Ahora, me gustaría dar un anti ejemplo, que pasaría si, por ejemplo en el cuarto valor, seguimos un plan a rajatabla cuando el mercado exigió un cambio radical en el producto. Si por ejemplo, se asigna a un equipo trabajar en una solución, como el mejor método para diseñar reproductores para «cintas magnéticas para audio HD», cuando al poco tiempo se estandarizo el CD, y el formato es completamente diferente. El diseño podría sufrir un cambio en medio, usar mismos parlantes, pero diferente lector de medios. Pero como lo negociado, lo pactado era la cinta el proyecto sigue igual. Me temo que ahí no estamos siendo flexibles, estamos NO siendo ágiles, mas allá de que los otros 3 valores y 12 principios se están empleando.

Conclusión

En lo personal creo que todo puede flexibilizarse, PERO, siempre existe un punto donde se puede perder la esencia, lo que buscamos originalmente. En Agile podemos ser flexibles, claro que si, pero no deja de existir un punto donde ya por flexibilizarlos dejamos de serlo. En este mundo es muy común escuchar «hacemos Scrum PERO…» y eso no esta mal visto, es esperable. Lo que no seria esperable, es que dichos «peros» sea una larga lista de acciones y actitudes que atenten contra los valores y principios básicos, ya que ahí si perderían su esencia.

Lo que uno debe estar abierto, es a pensar que si perdemos esa esencia básica, y el desvió es muy grande, no significar «estar mal». Simplemente deberíamos ser honestos cono nosotros mismos y pensar que aplicar Agile tal vez no sea la necesidad, y se requieran otras formas de pensar mas adecuadas. O si lo que realmente se quiere es ser Agile, entonces se debería revisar esos desvíos para así poder reducirlos, buscar cambiar la forma de pensar, adaptarnos, para poder cumplir con la esencia de la agilidad que buscamos.

Como lo ven? Que opinan al respecto? Cual creen seria el punto de quiebre ustedes?

Comparte si te gusta!

Si te gusta este articulo y querés ayudarme a mantener el sitio podes donarme un cafecito haciendo click aquí: Invitame un café en cafecito.app

Un comentario en «Flexibilidad en Agile»

  1. cuando se trata de equipos de trabajo, recomiendo que los líderes siempre tengan enfoque en los objetivos, pero flexibilidad para lograrlos y aceptar las singularidades de cada equipo, abriendose así a novedosos aportes que pueden llegar a ser acertados cambios. Muy linda nota Zele 😉

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *