Por: Ponmeena Shankar Kannan Kanagaraj

 

En la era digital, es imperativo que los bancos adopten cambios para volverse más ágiles y mantener su ventaja competitiva. Aún cuando los bancos ya han implementado vías ágiles de software delivery, aún tienen dificultades para adoptar métodos modernos como Desarrollo Guiado por Pruebas (TDD, por su siglas en inglés), Desarrollo Impulsado por la Prueba de Aceptación (ATDD, por sus siglas en inglés) y Desarrollo Guiado por Comportamiento (BDD, por sus siglas en inglés).

 

Es esencial para los bancos transformar su modelo de software delivery, de modo que puedan brindar una experiencia personalizada y mejorar su respuesta ante las siempre cambiantes necesidades de los clientes. Sin embargo, la transformación no es fácil para ningún tipo de organización, y en especial, no es fácil para los bancos, debido a una serie de retos entre los cuales destacan:

 

  1. Identificar las diferencias: Las técnicas modernas de software delivery como TDD, ATDD y BDD pueden parecer ser todas lo mismo -guiadas por el objetivo de habilitar un suministro progresivo-. Sin embargo, aunque las tres tecnologías sirven para implementar una entrega incremental de software y mejorar la productividad del desarrollador, cada una tiene sus raíces en diferentes matices y persiguen objetivos distintos. Es importante entender estas diferencias e implementaciones específicas.
  2. Enfoque Estandarizado: Desafortunadamente, no existe un enfoque estándar o simplificado para adoptar técnicas modernas de software delivery. Elegir un uso adecuado es clave para una implementación exitosa. La mayoría de los bancos tienen un escenario empresarial complejo, lo que hace que sea esencial definir una estrategia de implementación específica y bien pensada, con base en el escenario actual en cuanto a herramientas y tecnología, así como en las dependencias del sistema.
  3. Falta de automatización: La automatización es clave para la exitosa adopción de técnicas modernas de software delivery. Sin embargo, algunas instituciones bancarias suelen estar atrasadas en cuanto a automatización de pruebas e infraestructura, lo cual impacta de manera directa en su servicio al cliente. Si bien existen ciertas formas aisladas de automatización dentro de la infraestructura, pruebas y desarrollo de cada programa o proyecto, es ideal que la automatización sea unificada para lograr una implementación eficaz de técnicas modernas de software delivery.
  4. Pruebas y desarrollo de software aislados: La mayoría de los bancos aún siguen un modelo lineal en el que el desarrollo de software corre a cargo de un equipo, y las pruebas de software corren a cargo de otro equipo, mediante una organización de pruebas centralizada. Este modelo funciona bien en modelos tradicionales de software delivery. Sin embargo, en los modelos más modernos, este patrón podría crear vacíos en la comunicación y problemas de colaboración.

 

Modelos modernos de software delivery: factores clave a considerar

 

Las instituciones bancarias han buscado introducir un sinfín de soluciones innovadoras para brindar al cliente una experiencia personalizada y así mantenerse competitivas. En la situación actual, la habilidad de un banco para replantear su negocio alrededor de un propósito y de adaptarse a las difíciles condiciones del mercado, será factor clave para ofrecer estas soluciones de forma rápida, segura, y sin salirse de su presupuesto. Estos son los factores clave que los bancos deben tomar en cuenta para adoptar técnicas modernas de software delivery:

 

  • Cambio cultural: La implementación de técnicas modernas de software delivery demanda un enorme cambio cultural en distintas áreas dentro de un banco. Después de preseleccionar un caso de uso adecuado (proyecto/programa) y antes de la implementación, es necesario crear un plan de gestión del cambio con la intención de promover una mentalidad de «fallar rápido, fallar a menudo», al tiempo que se incorporan nuevas técnicas. Los objetivos de la implementación de técnicas modernas de software delivery, así como los pre-requisitos, estrategia de implementación, calendarización, riesgos y beneficios se deben comunicar de manera clara con los interesados de todos los niveles, además de asegurar su aceptación por parte de la dirección ejecutiva.
  • Empezar poco a poco: Difícilmente una institución bancaria podrá permitirse el riesgo de implementar técnicas modernas de software delivery a gran escala, ni tampoco de implementarlas en un programa crítico que ya esté en marcha. Todos los proyectos/programas deben ser revisados exhaustivamente y se debe pre-seleccionar el proyecto que haga más sentido para comenzar con la implementación de cualquier técnica moderna de software delivery. La elección del caso de uso correcto pavimenta el camino hacia una transformación sin contratiempos, y la adopción exitosa puede ayudar gradualmente a extender el uso a otros proyectos/programas y áreas de la empresa.
  • Un modelo basado en un equipo centralizado de software delivery: Es recomendable que los bancos implementen la operación de software delivery con un modelo centralizado, que incorpore equipos altamente integrados entre sí, con enfoque en negocio, desarrollo y realización de pruebas, de modo que se garantice una alta colaboración, comunicación y transparencia. Este modelo es muy beneficioso para soportar la adopción de técnicas modernas de software delivery, al incluir pruebas de unidad (TDD), pruebas de aceptación (ATDD), o pruebas que verifiquen el comportamiento (BDD) del software para impulsar el desarrollo, al tiempo que se realizan pruebas funcionales y no funcionales en una etapa temprana de desarrollo de software.
  • Gobernanza: A medida que el modelo se expande a lo largo de múltiples proyectos/programas y áreas de negocio dentro del banco, el establecimiento de un Centro de Excelencia (CoE, por sus siglas en inglés) o una Oficina de Consultoría en Transformación (TAO, por sus siglas en inglés), podría ayudar a clarificar el propósito, estandarizar las herramientas, normalizar stacks tecnológicos, evaluar niveles de madurez y adherencia a la práctica Agile Dev/Ops, crear y mantener manuales para habilitar la automatización, las primeras estrategias en la nube, etc.

 

Reflexiones finales

 

Para facilitar una implementación exitosa de técnicas modernas de software delivery, y para navegar sin problemas el proceso de transformación, las instituciones bancarias deben establecer un equipo de consultoría en transformación, identificar los casos de uso adecuados, y definir una estrategia de implementación pragmática y por etapas que cubra las áreas de enfoque antes mencionadas. Las técnicas modernas de software delivery, como TDD, ATDD o BDD han facilitado la gestión de riesgos asociados con productos o software de entrega incrementada. En pocas palabras, para lograr una transformación bancaria sustentable y exitosa, los bancos y sus líderes de TI deberán adoptar el riesgo para mantenerse competitivos y así ofrecer al cliente una experiencia sin contratiempos.

Deja un comentario