Contenido producido por el director de nuestro equipo de desarrollo, Luiz Henrique Felix.
Al principio de la pandemia no sabíamos cómo iban a estar las cosas; cuando nos comunicaron que tendríamos que trabajar desde casa, fue un poco inquietante: llevaba poco más de un mes en el cargo y sabía que se avecinaba un gran reto.
Las primeras semanas en la oficina en casa fueron las más difíciles, porque necesitábamos mantener de alguna manera la misma dinámica que teníamos en persona, sólo que ahora, a distancia, ¿y cómo podíamos hacerlo?
Fue entonces cuando comencé a estudiar las metodologías ágiles, que describiré en los siguientes párrafos.
Justo cuando empecé a estudiar metodologías ágiles, lo primero con lo que me topé fue «El Manifiesto Ágil», que es una declaración de los principios en los que se basa el desarrollo ágil de software. Se basa en doce principios, cuya idea central es la satisfacción del cliente mediante entregas rápidas y la mejora continua. Para lograrlo, utilizamos como herramienta principal el diálogo entre los equipos, junto con la participación de otros equipos más cercanos al desarrollo, como el comercial y el de soporte, de modo que, gracias a los comentarios recabados de todos, podamos mejorar constantemente el software y satisfacer las necesidades del cliente.
Una de las cosas que he aprendido a lo largo de este recorrido ha sido el verdadero significado de la expresión«MVP» ( Minimum Viable Product) o«producto mínimo viable». El MVP no es más que la entrega de un software que el cliente ya puede utilizar, aunque aún no se hayan implementado todas las funcionalidades previstas en la hoja de ruta; de este modo, conseguimos agilizar la entrega y, al mismo tiempo, ir mejorando el software, ya que, al estar el cliente utilizándolo, lo perfeccionamos basándonos en los comentarios recabados, es decir, todos salen ganando.
Para que las entregas se produzcan en el plazo definido en la hoja de ruta, utilizamos algunos métodos que nos ayudan en estas entregas, junto con el marco Scrum. Este marco no es un proceso lineal, sino un conjunto de conceptos y técnicas dentro del cual se pueden emplear otros procesos o técnicas. Analizar la eficacia relativa de las prácticas de gestión y desarrollo para poder mejorarlas. Nos da varias técnicas que se pueden utilizar para la gestión, y una de ellas son las reuniones diarias y las reuniones de sprints. Las reuniones diarias son reuniones de no más de 15 minutos, que hacemos para alinear cuáles serán las actividades a realizar en el día y cuál será la dirección del equipo, yo como gerente de estos equipos hago tres preguntas básicas: qué hicieron ayer, qué harán hoy y si hay algo que pueda impedir que la actividad que se realizaría hoy, no se realice. Con estas tres preguntas obtenemos una visión global y sabemos si podemos tener algún posible problema, además de abordar los impedimentos. Las reuniones sprint son encuentros que suelen celebrarse cada semana y duran hasta una hora. Yo y los equipos, nos reunimos con la junta, y presentamos el progreso de las actividades que se realizaron en el período, recoger sus comentarios y ajustar las actividades sobre la base de estos comentarios, así que tenemos una dirección para el siguiente sprint.
Junto con Scrum, utilizamos ITIL,la Biblioteca de Infraestructura de Tecnologías de la Información( Information Technology Infrastructure Library ). Se trata de un conjunto de buenas prácticas detalladas para la gestión de servicios de TI que se centra en la alineación de dichos servicios con las necesidades del negocio y tiene como objetivo promover una gestión orientada a la prestación eficiente de servicios al cliente. En la práctica, ITIL funciona como una guía en la que, en lugar de definir procesos, seguimos buenas prácticas, lo que, en cierta medida, hace que la gestión de los equipos y el flujo de trabajo de los procesos sean mucho más dinámicos, ya que no quedamos limitados a procesos concretos. También utilizamos una técnica de flujo de trabajo de procesos denominada Kanban, un término japonés que significa «tarjeta». El sistema recibió este nombre de la propia empresa que lo desarrolló, Toyota. No es más que un sistema ágil y visual para el control de la producción o la gestión de tareas, en el que utilizamos un tablero virtual con columnas denominadas de la siguiente manera: « pendientes, en curso, a la espera de algo o alguien, aprobación y finalizados», y tarjetas que van «pasando» de una columna a otra a medida que se van ejecutando las actividades. El Kanban facilita enormemente el avance del desarrollo del proyecto, ya que nos permite saber de forma visual y clara en qué proceso nos encontramos, siempre con información detallada en las tarjetas de cada una de las actividades, de modo que podamos utilizar estos datos en las reuniones de sprint y de revisión.
Entre todos estos métodos, marcos y herramientas, el más importante siempre será el que mejor se adapte a la necesidad de tu equipo, un consejo que doy es: no te estanques en el framework o metodología x o y, porque esto puede en lugar de ayudar, acabar entorpeciendo y limitando a tu equipo, en su lugar utiliza lo mejor de cada uno en función de tu realidad, siempre teniendo en cuenta el objetivo final, que es el desarrollo ágil de software y la buena gestión de equipos.Siempre estamos revisando nuestros equipos para tener tiempo de cambiar la dirección de los mismos si es necesario, lo que hace que el proceso de desarrollo sea mucho más dinámico.
