En busca de la comprensión de Ágil

Est artículo es una adaptación de la publicación Agile 101 y tiene la finalidad de contribuir en la comprensión adecuada de lo que es Ágil y conceptos relacionados.

¿Qué es ágil?

Ágil es la capacidad de crear y responder al cambio. Es una forma de lidiar y tener éxito en un entorno incierto y turbulento.

Los autores del Manifiesto Ágil eligieron la etiqueta “Ágil” porque esa palabra representaba la adaptabilidad y la respuesta al cambio que era tan importante para su enfoque.

Ágil realmente se trata de pensar cómo podemos entender lo que está sucediendo en el entorno actual, identificar la incertidumbre a la que nos enfrentamos, y descubrir cómo podemos adaptarnos a eso mientras seguimos adelante.

¿Qué es el desarrollo de software ágil?

El desarrollo ágil de software es mucho más que solo frameworks tales como Scrum, Extreme Programming o Feature-Driven Development (FDD).

El desarrollo ágil de software es mucho más que solo prácticas tales como pair-programming, test-driven development, stand-ups, sesiones de planificación y sprints.

El desarrollo ágil de software es un término general para referirse a un conjunto de frameworks y prácticas basadas en los valores y principios expresados en el Manifiesto por el desarrollo ágil de software. Cuando se aborda el desarrollo de software de una manera particular, generalmente es bueno vivir de acuerdo con estos valores y principios y usarlos para ayudar a determinar las cosas correctas para su contexto particular.

Algo que diferencia a Ágil de otras aproximaciones de desarrollo de software es su enfoque en las personas que hacen el trabajo y la manera en que trabajan juntas. Las soluciones evolucionan a través de la colaboración entre equipos multifuncionales y autoorganizados que utilizan las prácticas apropiadas de acuerdo a su contexto.

La Comunidad de desarrollo Ágil de software se centra principalmente en la colaboración y la autoorganización de los equipos.

Esto no significa que no haya managers. Significa que los equipos tienen la capacidad para descubrir cómo afrontarán las cosas por su propia cuenta.

Significa que los equipos son multifuncionales. En estos equipos no debe existir roles específicos, más bien se debe asegurar que reúna las habilidades adecuadas para cumplir con su objetivo.

Todavía hay espacio para los managers. Los managers se aseguran de que los miembros del equipo tengan u obtengan las habilidades adecuadas. Los managers proporcionan el entorno que permite que el equipo tenga éxito. Los managers dejan que sus equipos descubran cómo se va a entregar los productos, pero intervienen para ayudar a sus sus equipos a resolver los problemas.

Cuando la mayoría de los equipos y organizaciones comienzan con el desarrollo ágil de software, se centran en las prácticas que ayudan con la colaboración y la organización del trabajo, lo cual es excelente. Sin embargo, otro conjunto importante de prácticas que no se siguen con tanta frecuencia, pero que deberían, son las prácticas técnicas específicas que se relacionan directamente con el desarrollo de software de una manera que ayude a los equipos a lidiar con la incertidumbre. Esas prácticas técnicas son esenciales y algo que no se debe pasar por alto.

Ágil es una mentalidad

En definitiva, Agile es una mentalidad manifestada por los valores y principios contenidos en el Manifiesto Ágil. Esos valores y principios proporcionan la orientación sobre cómo crear y responder al cambio y cómo lidiar con la incertidumbre.

Se podría decir que la primera oración del Manifiesto Ágil resume toda la idea: “Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros”.

Cuando se enfrente a la incertidumbre, intente algo que cree que podría funcionar, obtenga feedback y realice los ajustes correspondientes.

Tenga en cuenta los valores y principios cuando haga esto. Permita que su contexto guíe los frameworks, prácticas y técnicas que utiliza para colaborar con su equipo y brindar valor a sus clientes.

¿Qué son las metodologías ágiles?

Si Ágil es una mentalidad, ¿Que se puede decir sobre la idea de las metodologías Ágiles? Para responder a esta pregunta, puede resultar útil tener una definición clara de lo que es una metodología.

Alistair Cockburn indicó que una metodología es el conjunto de convenciones que un equipo acepta seguir. Eso significa que cada equipo tendrá su propia metodología, la cual será diferente, en pequeña o gran medida, con relación a las metodologías de los demás equipos.

Entonces, las metodologías ágiles son las convenciones que un equipo elige seguir de una manera que sigue los valores y principios ágiles.

“Espera un momento”, probablemente estén diciendo, “pensé que Scrum y XP eran metodologías ágiles”. Alistair aplicó el término framework a esos conceptos. Ciertamente, nacieron de la metodología de un solo equipo, pero se convirtieron en frameworks cuando se generalizaron para ser utilizados por otros equipos. Estos frameworks ayudan dando a conocer desde dónde un equipo comienza con su metodología, pero no deberían ser la metodología del equipo. El equipo siempre necesitará adaptar el uso de un framework para que encaje adecuadamente en su contexto.

¿Qué hay sobre Agile Project Management o Agile Business Analysis?

A medida que el desarrollo Ágil de software se hizo más popular, las personas que estaban involucradas en actividades de desarrollo de software, pero que no desarrollaron software de manera personal, buscaron algunas formas de aplicar estas ideas ágiles en su línea de trabajo.

El Manifiesto Ágil y los 12 Principios fueron escritos por un grupo de desarrolladores de software (y un tester) para abordar los problemas que enfrentaron los desarrolladores de software. Cuando piensas en Agile como una mentalidad, esa mentalidad se puede aplicar a otras actividades.

Cuando haces eso, Ágil se convierte en un adjetivo. Describe la forma en que realiza alguna actividad.

Cuando desee comprender la gestión ágil de proyectos, pregúntese “¿Cómo podríamos realizar la gestión de proyectos de una manera que nos permita crear y responder al cambio y enfrentar la incertidumbre?”

Cuando desee comprender el análisis comercial ágil, pregúntese “¿Cómo podríamos realizar el análisis comercial de una manera que nos permita crear y responder al cambio y enfrentar la incertidumbre?”

¿Qué hay sobre Business Agility?

Los dos conceptos mencionados anteriormente son ejemplos de un intento de mover a Ágil “fuera del software”. Esos esfuerzos han resultado recientemente en el movimiento Business Agility.

Si se extienda la idea de Ágil como una mentalidad, entonces las personas que buscan Business Agility se preguntan: “¿Cómo podríamos estructurar y operar nuestra organización de una manera que nos permita crear y responder al cambio y enfrentar la incertidumbre?”

Se podría decir que Business Agility es un reconocimiento de que, para que las personas de una organización operen con una mentalidad ágil, toda la organización necesita apoyar esa mentalidad. El desarrollo ágil de software nunca fue realmente ágil hasta que la organización cambió su estructura y operaciones para trabajar en un entorno incierto.

Leave a Reply

Your email address will not be published. Required fields are marked *