La compañía de TI y ciberseguridad ITQ Latam, a través de su Gerente de Cuentas Estratégicas, Andrés Muñoz, dio a conocer los principales beneficios del “desarrollo ágil”.
A su juicio, hoy las organizaciones requieren cada vez más cambios para evolucionar rápidamente con sus sistemas de información. En el desarrollo de software, la abundancia de requerimientos y la necesidad de priorizar la atención son uno de los más frecuentes dilemas a los que se ven enfrentados los desarrolladores. En ese contexto, la adopción de metodologías ágiles que permitan una escalabilidad permanente, de manera rápida y evitando grandes costos, es una opción muy atractiva.
El desarrollo del “software ágil” es una alternativa en la gestión tradicional de proyectos TI, en la cual el foco está en las personas para que éstas sean quienes colaboren y decidan con su equipo de trabajo. Este modelo potencia la planificación continua, así como las pruebas permanentes y la integración conjunta del código y los despliegues.
Para llevarlo a cabo existen diversas metodologías, basadas en el Manifiesto Ágil, documento elaborado por expertos de la industria del software que sintetiza las mejores prácticas en dicho campo de la ingeniería.
Una de las principales características del modelo es el desarrollo iterativo y un enfoque en la interacción, la comunicación y la reducción de artefactos intermedios que consumen muchos recursos. Desarrollar en iteraciones permite al equipo adaptarse rápidamente a las necesidades cambiantes. Trabajar en instalaciones cercanas, centrándose en la comunicación, permite que los equipos puedan tomar decisiones y actuar sobre ellas de inmediato, en lugar de esperar respuestas de otras instancias posteriores.
Asimismo, la reducción de los artefactos intermedios que no agregan valor a la entrega final representa más recursos, que se pueden dedicar al desarrollo del producto en sí y su terminación oportuna.
De acuerdo a Andrés Muñoz, Gerente de Cuentas Estratégicas de ITQ, sus principales beneficios son alineamiento entre el cliente y el equipo de desarrollo; gestión regular de las expectativas del cliente basada en resultados tangibles; resultados anticipados (time to market); gestión sistemática del Retorno de Inversión (ROI); capacidad para abordar los requisitos cambiantes, incluso si llegan tarde al desarrollo; aplana la jerarquía organizacional; en intervalos regulares, el equipo reflexiona sobre la forma de ser más efectivo y ajusta su conducta en consecuencia; transparencia y coordinación en el equipo, todos saben qué tienen que hacer y qué hace cada uno; auto-enriquecimiento: transferencia del conocimiento; establecimientos de puntos de control para realizar un seguimiento adecuado sin limitar la libertad y creatividad del equipo…
Otras ventajas son la priorización de requerimientos de acuerdo a su valor, además que proporciona la mínima funcionalidad de forma que solo se desarrolla lo necesario. Asimismo evita escribir código innecesario, prevalece la simplicidad, lo que conlleva la eliminación del trabajo innecesario. Al mismo tiempo implica un versionado rápido y continuas pruebas durante todo el desarrollo, ya que se realizan testeos por cada iteración de no más de un mes de trabajo. Por si fuera poco, permite dividir el trabajo en módulos minimizando los fallos y el costo, y si surge cualquier error, se sabe rápido, disminuyendo riesgos mientras permite solucionar rápidamente los problemas que impiden que los equipos progresen.
Más información en www.itqlatam.com
?