Para conocer sobre esta metodología y su relevancia para las empresas, conversamos con Federico Gómez, experto en Ingeniería de Software, con vasta experiencia en automatización, integración y orquestación de infraestructura, datos y procesos de negocios.
¿Cómo te dedicaste a la automatización y orquestación de procesos?
De manera temprana en mi carrera profesional tuve la oportunidad de trabajar para una de las consultoras más importantes de Córdoba que había desarrollado un producto global de Workflow & BPM y contaba con grandes clientes, entre ellos, a una empresa que iba camino a ser el principal emisor de tarjetas de crédito de la Argentina. Esta empresa se encontraba en un momento de gran crecimiento y necesitaba una reingeniería de uno de sus procesos de negocio para que este pueda escalar dinámicamente acorde a la demanda creciente, producto de su expansión. Específicamente, se trataba de su sistema de seguimiento de gestiones de apertura de cuenta y asignación de límites crediticios lo cual representaba una parte esencial de su negocio. Más concretamente, todo lo que ocurre desde el pedido inicial del cliente hasta que este recibe su tarjeta de crédito lista para ser usada.
¿Cuál era la necesidad? El proceso original era lento, ineficiente y propenso a errores debido a que incluía una gran cantidad de tareas manuales y cuyo avance se registra usando correos electrónicos, planillas de cálculo y hasta el envío físico de formularios de un área a otra. Los objetivos fueron muy claros, la gerencia buscaba reducir el tiempo total requerido, incrementar la calidad y mejorar el seguimiento de las gestiones.
El escenario era el adecuado para el trabajo que consistió en la implementación de un sistema de automatización y orquestación de todas estas tareas.
¿Podrías contar un poco qué es esto de la orquestación y cómo ayudó a solucionar estos problemas?
Así como en la música la orquestación busca que un gran conjunto de instrumentos individuales toque a tiempo y en tempo, en software, la orquestación asegura que los procesos, sistemas y servicios ocurran en el momento adecuado y en el orden correcto. Vale aclarar que hay distintos tipos de orquestación: junto con la orquestación de procesos también existe la orquestación de datos y la orquestación de infraestructura (DevOps). En el caso de esta empresa, la orquestación de datos y procesos permitió modelar un proceso eficiente de negocios basado en una cadena de automatizaciones, eliminando los silos de datos dispersos y unificándolos en un solo sistema de información que pudo ser utilizado para mejorar la toma de decisiones en tiempo real y posibilitó la mejora continua del proceso. Concretamente, los tiempos de entrega que antes eran de varias semanas y, en algunos casos, de hasta meses logramos reducirlos a unos pocos días con el valor agregado de poder tener un conocimiento detallado del estado de cada gestión. Esta implementación fue reconocida por el Workflow Management Coalition como mejor solución BPM para América Latina.
Mencionas la orquestación de infraestructura. ¿De qué se trata? ¿Tenés algún ejemplo concreto?
La orquestación de infraestructura más que nada se refiere a la automatización del aprovisionamiento, manejo y escalabilidad de los recursos de computación en la nube, también conocido como DevOps, que permite una administración dinámica de recursos según las necesidades de procesamiento en tiempo real optimizando los costos y buscando una excelente experiencia del usuario en todo momento. Tener esto orquestado hoy en día se ha convertido en una necesidad para cualquier empresa sin importar su tamaño. Un caso reciente de implementación exitosa en esta área fue con una empresa líder en el sector de alta educación que tenía serios problemas de escalabilidad y grandes costos operativos derivados de una mala estrategia en el uso de su infraestructura. Mi trabajo consistió en orquestar la creación de todos sus recursos en la nube con mínima intervención manual a través de mecanismos que posibilitan el aumento de su capacidad de manera automática en periodos de alta demanda y la reducción inmediata de los recursos cuando estos ya no son necesarios, lo que le permitió bajar costos con su proveedor de servicios en la nube en un 50% y mejorar notablemente la experiencia del usuario al ofrecer tiempos de respuesta más rápidos y una disponibilidad permanente sin importar la demanda.
¿Cuál crees que es la clave del éxito de esta metodología?
Existen varias razones, pero quizás la principal es que se basa en particionar un proceso complejo en tareas simples y pequeñas que facilitan la estimación, asignación y paralelización del trabajo total requerido. Esto ayuda a definir puntos de verificación de avance del proyecto lo que permite la corrección temprana ante eventuales desviaciones. Desacoplar la lógica de negocios en pequeñas tareas flexibiliza además la introducción de cambios para poder adaptarse rápidamente a nuevas necesidades. Otra ventaja es que este enfoque favorece la participación de las distintas áreas de la empresa en la definición de los atributos importantes que el sistema debe contemplar más allá de que el modelado en sí del proceso de negocio estará a cargo de un ingeniero o arquitecto de software quien será el principal responsable de diseñar la estrategia de orquestación.
¿Como arquitecto de software experto en orquestación, cómo describirías este rol?
Para poder definir la arquitectura de un sistema de orquestación vas a necesitar primero tener un conocimiento global del negocio. Luego identificar las áreas y los sistemas involucrados en el proceso de negocio a modelar lo que implica múltiples reuniones con equipos interdisciplinarios para capturar requerimientos y negociar especificaciones. Una vez que se entiende el sistema que se necesita se puede modelar el proceso de negocio y crear todas las tareas a cumplir por el equipo de desarrollo que producirá las funcionalidades individuales que luego serán orquestadas según la plataforma elegida. Este proceso siempre será continuo e incremental y requiere de distintas habilidades comunicacionales y técnicas. El arquitecto no solo responderá por los requerimientos funcionales, sino también en última instancia por la escalabilidad, flexibilidad y facilidad de mantenimiento del sistema de Orquestación.
¿Cuál es la tendencia en el sector de orquestación en este momento?
Actualmente este sector se encuentra en un momento de alto crecimiento. Poseer una plataforma adecuada de orquestación es la clave para la excelencia en los procesos de negocios. Todas las nuevas tecnologías se están desarrollando para poder ser orquestadas e integradas con el resto de los procesos existentes en cada Compañía en respuesta a demandas de los clientes cada vez más complejas. Actualmente, por ejemplo, ya estamos hablando de Orquestación de sistemas de Aprendizaje Automático (MLO). En cuanto al mercado, la predicción actual es que las necesidades de orquestación van a crecer de 4.000 a 23.000 millones de dólares sólo en esta década. ¿La razón? Las nuevas tecnologías van a seguir emergiendo y eso es algo que va a seguir en ascenso. La orquestación será la clave estratégica para mantener el control de esa diversidad de procesos y tecnologías.
¿Cuáles son tus desafíos actuales?
Actualmente me encuentro ayudando en su estrategia de Orquestación a una compañía norteamericana que provee herramientas de Inteligencia de Negocios para equipos de marketing y ventas. Los procesos de negocio son realmente complejos y se necesita integrar una gran cantidad de sistemas desarrollados con distintas tecnologías. La compañía posee además un equipo de desarrollo global con recursos instalados en distintas zonas horarias del mundo. El desafío es grande, pero el mercado y la oportunidad también lo son.