metodologías ágiles en programación

Los desarrolladores son cada día más cotizados por las empresas, ya que son los protagonistas de las transformaciones digitales que se están produciendo durante el último tiempo. Como una forma de gestionar mejor su trabajo, es que han diseñado las metodologías ágiles, las cuales según el programador chileno Sebastián Findling, son formas más eficientes de gestionar tareas para obtener mejores resultados.

Una de las consecuencias de la pandemia, es que muchas empresas se están dando cuenta de que el camino digital es la clave. Ya sea que busquen crear un sitio web con funciones especializadas o una aplicación, siempre necesitarán la ayuda de un programador. Una de las formas de gestionar su trabajo es a través de las denominadas metodologías ágiles, las cuales según el desarrollador chileno Sebastián Findling, representan la mejor manera de ordenar tareas para obtener buenos resultados.

“Una metodología ágil es una forma de organizar un equipo de trabajo basándose en objetivos pequeños, pero importantes. Estos se pueden completar en plazos comúnmente de 2 semanas denominados sprints, al cabo de los cuales se presentan los avances al equipo comercial, inversionistas y otros miembros relevantes de la empresa”, señala Sebastián Findling.

Por sus órdenes y jerarquías, representan una contraposición a metodologías más clásicas como la Carta Gantt, en donde usualmente se definen objetivos más grandes en periodos más largos de tiempo, los cuales a criterio de algunos, pueden ralentizar el logro de algunas metas.

¿Qué tipo de metodologías ágiles existen?

A lo largo de los años, diferentes metodologías ágiles han sido desarrolladas, tales como Extreme Programming XP, Agile Inception o Design Sprint, pero las más utilizadas son Scrum y Kanban. Esta última, se basa en un tablero que puede ser virtual o físico, en donde se ordenan tres columna de tareas: “Por hacer”, “Haciendo” y “Terminadas”. Para gestionar los avances se realizan reuniones de equipo diarias de unos 15 minutos, en donde participan los programadores y el jefe de proyecto.

Sin embargo, para Sebastián Findling, la mejor metodología ágil es Scrum, ya que cambia la jerarquía de trabajo. “En Scrum, a diferencia de Kanban, los programadores no tienen un jefe directo al cual reportar, sino que se relacionan con un Product Owner, quien es el que hace de puente con la empresa contratante y sus requerimientos”, indica.

El equipo de trabajo en la metodología Scrum, se compone de: Los Stakeholders, quienes son los representantes de los ideales de la empresa; Un Product Owner, persona quien se relaciona directamente con los StakeHolders; un Scrum Master, quien es el trabajador con más experiencia en programación y el que estructura todo el trabajo; Equipo de programadores, grupo de especialistas en desarrollo de software. Todos ellos trabajan en torno a pequeñas metas que deberán cumplir en periodos de dos semanas, dentro de las cuales deberán ir presentando avances ante la compañía.

¿Cuáles son las principales ventajas del método Scrum?

Una de las principales características de la metodología Scrum, es que representa un avance exponencial de las metas de un proyecto. Esto quiere decir que, a modo de comparación, este tipo de gestión laboral se asemeja a la construcción de un rompecabezas, en donde poco a poco se va armando el producto final, que en el caso de la programación vendría siendo el software.

Según Sebastián Findling, con más de 10 años de experiencia utilizando esta metodología, el Scrum tiene varias ventajas que se pueden enumerar. Estas son:

  1. La fuerza de trabajo no tiene que lidiar con los Stakeholders, los que muchas veces terminan por entorpecer el proceso con cierto tipo de solicitudes. Con Scrum, esta situación se evita, ya que todos los requerimientos de la empresa son recepcionados por el Product Owner. Éste es quien los gestiona junto al Scrum Master.
  2. En Scrum la figura del jefe tradicional no existe. Es reemplazada por una persona de experiencia en programación, quien en vez de presionar al resto para el cumplimiento de metas, los asesora. En este sentido, las reuniones diarias de equipo son muy valiosas para saber qué tipo de problemas van surgiendo y cómo resolverlos.
  3. Los avances presentados de forma bisemanal, permiten acceder a un vistazo muy frecuente del avance del producto, lo que otorga estabilidad a todas las áreas de la empresa.
  4. En Scrum, todos tienen roles muy bien definidos, por lo que todos saben qué esperar del otro. Por lo tanto, se evitan sorpresas.

¿Quiénes ocupan este tipo de metodología?

Por su estructura, las metodologías ágiles se ocupan para ordenar las empresas. Esto con el objetivo de lograr que los productos que ofrecerán al mercado se desarrollen en un menor tiempo, sin tener que pasar a llevar la calidad en el intertanto. Esto se logra con roles bien definidos y con calendarios de trabajos bien estructurados.

Dentro de la industria hay grandes empresas que utilizan Scrum, como lo son Amazon y parte de Google. No obstante, en nuestro país también hay ejemplos. “En Chile está LATAM Airlines. Allí, todo su desarrollo informático se realiza mediante Scrum, permitiendo que las necesidades del negocio salgan al mercado en muy poco tiempo. Se han podido adaptar rápidamente a cambios como el sistema de Ancillaries, que a otros les tomó bastante tiempo adecuarse”, explica Sebastián Findling.

Por el momento, se espera que muchas más empresas implementen este tipo de metodologías. Esto a raíz de que cada se requieren más proyectos que impulsen lo digital. Sin embargo, cualquier empresa podría implementar métodos como el Scrum incluso si no desarrolla softwares. Esta metodología significa una mejora en el ambiente laboral y en los resultados para las compañías.