Apoyados en una idea de trabajo colaborativo, los procesos Agile ofrecen múltiples beneficios. Una mayor flexibilidad ante los cambios de requerimientos, la realización de varias entregas sucesivas en un corto plazo y un inmediato feedback de los clientes son algunas de las ventajas de este tipo de metodología. Para dar más detalles de esta modalidad de implementación, entrevistamos a Pablo Soria, Consultor Comercial para Cuentas Corporativas en Finnegans.
Si bien la Metodología Waterfall representa el enfoque tradicional de gestión de proyectos en el desarrollo de software, ¿por qué es importante la Metodología Agile?
Es importante porque es un cambio de paradigma de implementación. En la tradicional metodología de Cascada o Waterfall, el desarrollo se inicia cuando el relevamiento y el diseño están terminados. El proyecto busca la mayor cantidad de funcionalidades posibles, las aborda simultáneamente y, tras un trabajo de largo plazo, se entrega una versión completa. Si bien en software de aplicaciones esto ya se dejó de hacer así hace muchos años, en el software de gestión se sigue con esta metodología. Esto se debe principalmente a que este tipo de sistemas atiende necesidades de procesos mucho más rígidos y estructurados.
Pablo Soria, Consultor Comercial de Finnegans
¿Cuáles son las principales diferencias que supone este cambio de paradigma?
La metodología de cascada busca implementar todo el proceso y la metodología ágil, inicialmente, busca implementar lo mínimo que se necesite para empezar a trabajar. Este cambio trae varios beneficios. Por un lado, implementar todo el proceso te puede llevar años, en el caso de empresas grandes. Esto se debe a que esa implementación de todos los procesos requiere relevar, entender, desarrollar, capacitar y luego hacer la puesta en marcha. En cambio, cuando se utiliza una metodología ágil, se plantea qué es lo mínimo que se necesita. Entonces, con ese mínimo de necesidad, el famoso MVP, es decir, el Mínimo Valor del Producto necesario para arrancar, rápidamente se puede entregar valor. Entonces el cliente empieza a utilizar el sistema en un plazo mucho más corto y luego se van desarrollando proyectos más chicos que se van implementando progresivamente para seguir sumándole funcionalidades al sistema. La diferencia de esto es que en la realización del relevamiento, el usuario habla de necesidades de los procesos vigentes en ese momento, mientras se está trabajando en la implementación de un cambio a partir de la incorporación de tecnología. Por esa razón, el usuario no sabe lo que va a necesitar en el futuro con el nuevo sistema porque no lo conoce. Entonces, si ya se le entrega la herramienta para que empiece a operar y así el usuario puede detectar necesidades a partir de la práctica, esto va a posibilitar un feedback mucho más enriquecedor. De esta manera, los puntos críticos del sistema se vuelven más fáciles de operar con metodologías ágiles porque ya el usuario tiene conocimiento y tiene certeza de lo que necesita. Es decir, cuando se implementa un cambio tecnológico, un nuevo sistema, necesariamente existe un cambio de metodologías y un cambio de procesos. Ese cambio de procesos también trae nuevos requerimientos que, mientras que no se realice ese cambio, no se conocen. Entonces, todos estos aspectos hacen que la metodología ágil sea menos riesgosa y más efectiva. En este sentido, la implementación por fases no solo entrega valor más pronto, de manera paulatina, sino que también permite que el usuario marque nuevas necesidades para solicitar el desarrollo de nuevas funcionalidades que las satisfagan. Por otra parte, la metodología de cascada implica mucho más estrés porque ese tipo de implementación involucra simultáneamente a todas las áreas de un sistema, por lo que se generan un montón de “cuellos de botella”. En cambio, la implementación por etapas no genera un estrés tan brusco y avanza en base a disponibilidades, a partir de adaptar la implementación al modelo de procesos y a las necesidades de mercado.
“La implementación Agile no solo entrega valor más pronto sino que también permite que el usuario marque nuevas necesidades para solicitar el desarrollo de funcionalidades que las satisfagan”
Dentro de la Metodología Agile, es importante establecer prioridades. ¿Cómo se lleva a cabo esa definición de prioridades?
Eso es clave, sobre todo a partir de los roles existentes dentro de los equipos de trabajo. Con la Metodología Agile los roles cambian y son mucho más claros. El Product Owner, por parte del cliente, es la persona que tiene que apoderarse del sistema, es quien representa el “filtro final” de todo lo que se va a desarrollar, al definir cuáles son los elementos que se tienen que ir implementando. Con este rol se facilita muchísimo la toma de decisiones en torno al proyecto. Para definir las prioridades se requieren también algunas herramientas. No solamente es cambiar los perfiles sino que también es incorporar herramientas para mejorar el diseño del proyecto. Se apunta a que los requerimientos sean mucho más tangibles, sean más visuales para el usuario, con un flujo de procesos. De esa manera las prioridades se van a ir definiendo en conjunto con el cliente, como un equipo de trabajo. Para que el proyecto sea un éxito es necesario que se trabaje en conjunto con el fin de definir necesidades y atender su satisfacción. Del lado de sistemas está el conocimiento, el “know how” sobre las mejores prácticas de sistemas y cómo se pueden solucionar ciertos problemas. A partir de desenmarañar el problema y plantear y explicar cuál sería la mejor solución, hay que llegar a un acuerdo con el cliente, quien es clave a la hora de definir prioridades.
También te puede interesar Cinco claves para las pymes de cara a la pospandemia
Teniendo en cuenta que el trabajo colaborativo es fundamental dentro de la Metodología Agile, ¿cuál es la diferencia del rol que tiene el cliente en este proceso?
El cliente está mucho más involucrado que en lo que era la implementación Waterfall. En ese tipo de procesos se hacía un relevamiento de varios meses. Luego se iba a producto, se hacía el desarrollo durante meses hasta que se realizaba la entrega. Recién ahí el cliente volvía a involucrarse para probar lo que se había entregado y corroborar su funcionamiento. En caso de requerir correcciones, se regresaba a Producto para volver a desarrollar, validar nuevamente y luego realizar una nueva entrega al cliente para que este vuelva a comprobar la eficiencia del proyecto. Si persistían los errores, este procedimiento se volvía a repetir hasta que finalmente se daba el OK. En el caso de la Metodología Agile este proceso cambia mucho debido a que se involucra mucho más al cliente porque es quien realmente sabe de sus problemáticas del día a día. Entonces debe contar cuál es el problema para que, desde sistemas, se entienda y se pueda plantear una solución y, en conjunto, decidir el camino a seguir. Como principal involucrado, en la Metodología Agile el cliente es partícipe de la definición de la solución.
“Para que el proyecto sea un éxito es necesario que se trabaje en conjunto con el fin de definir necesidades y atender su satisfacción”
Ante el requerimiento de un mayor involucramiento, ¿qué recepción encuentran por parte de los clientes para trabajar con esta nueva modalidad?
Al principio es difícil porque demanda más tiempo y atención. Pero es cuestión de explicar las ventajas para que se entiendan los beneficios. Una vez que esto se comprende y el cliente se empieza a involucrar en el proceso, se logra una muy buena experiencia porque el cliente se siente parte de la solución, al ayudar a construir la misma. Eso es muy bueno porque suma mucho más valor a ese sistema que se desarrolla a medida de las necesidades del cliente. Además, las herramientas gráficas, como los mapas de trabajo, permiten un rápido entendimiento de los procesos.
También te puede interesar La importancia de contar con información en tiempo real