fbpx
Mainframe-Cobol
Optimización de la cadena batch en la industria financiera-IT Patagonia

¿Por qué es importante optimizar los procesos batch?

A medida que se incrementan los volúmenes transaccionados diariamente y cambian los hábitos de los usuarios en el modo de operar con las entidades financieras, una de las principales preocupaciones del sector es reducir los tiempos de los procesos batch, especialmente la ventana batch

La clave hoy pasa por extender al máximo la disponibilidad de los servicios, aspirando a tener activos los canales online 24×7. También por la capacidad para reaccionar ágilmente ante eventualidades o imprevistos, y solucionar problemas de forma oportuna.

En este artículo, además de analizar esta problemática, compartimos el aporte de valor de la herramienta OPTI de IT Patagonia, que garantiza que los procesos se optimicen, eliminen o depuren, según sea necesario, y tengan un impacto positivo en los tiempos de la cadena batch, con una automatizada generación de reportes, análisis y monitoreo, que facilita el control y posibilidad de resolución de incidencias en forma temprana y ágil. 

¿Qué es un proceso batch, una cadena batch y una ventana batch?

Antes de comenzar a analizar la problemática descrita, es importante definir tres elementos esenciales para la operatoria habitual de una entidad financiera.

Un proceso batch es un conjunto de tareas críticas para la operación diaria de una entidad financiera, que deben cumplirse para que al día siguiente cada una de sus sucursales y sus medios virtuales -como las aplicaciones móviles o el sitio web-, funcionen de forma correcta, en tiempo y forma.  

En tanto, la cadena batch es una secuencia de tareas o procesos que se ejecutan en lotes, uno tras otro, como parte de un proceso automatizado. Estos micro procesos suelen estar diseñados para realizar operaciones repetitivas o intensivas, en recursos que no requieren interacción en tiempo real. 

La cadena batch puede incluir actividades como la recolección de datos, el procesamiento, la generación de informes y la distribución de resultados.

Su gestión eficiente es crucial para optimizar el rendimiento del sistema y garantizar la eficiencia en el procesamiento de grandes volúmenes de datos. 

En un sistema financiero, la cadena batch puede incluir procesar cuentas corrientes, y dentro de esas cuentas corrientes, de pago de sueldos. También el procesamiento de transacciones diarias, la generación de estados de cuenta, el cálculo de intereses y la actualización de registros.

Por su parte, la ventana batch o ventana crítica batch, refiere al período de tiempo durante el cual se ejecutan procesos en lotes o batch, generalmente fuera del horario de operación normal de una sucursal.

Es el momento en el que corren los procesos necesarios e imprescindibles para la operación, teniendo en cuenta que en todo proceso bach hay partes esenciales y otras que no son críticas.

Como señala Maximiliano Casalaspro, Data Center Services Manager de IT Patagonia, es importante destacar que los procesos batch no requieren interacción en tiempo real y pueden ejecutarse de manera diferida, ya que no son determinantes para las operaciones inmediatas de la sucursal. 

Algunos ejemplos de estos son la generación de reportes de cuentas corrientes y el mantenimiento de cajas de ahorro, que no necesitan realizarse durante el horario de atención al cliente.

La práctica común es programarlos para que se ejecuten durante la noche, cuando la carga de trabajo en el sistema es menor y hay menos usuarios interactuando. Esto minimiza el impacto en el rendimiento del sistema durante el horario diurno, cuando se espera un mayor tráfico de usuarios y transacciones en tiempo real. 

Esta separación entre procesos en tiempo real y procesos batch permite optimizar la utilización de recursos y garantizar un funcionamiento eficiente y sin interrupciones del sistema durante el horario de atención al cliente. 

Además, al ejecutar los procesos batch en una ventana de tiempo específica, se pueden establecer cronogramas y prioridades para asegurar que las tareas críticas se completen dentro de plazos específicos y se eviten conflictos con otras operaciones del sistema.

El desafío de la optimización: por qué hacerlo

Optimizar el proceso batch es crucial para maximizar la eficiencia operativa.

Esto se da como resultado de reducir el tiempo de procesamiento, minimizar el uso de recursos y mejorar la escalabilidad del sistema. 

Y conduce a una mayor productividad, menor costo operativo y mejor experiencia para los usuarios finales, ya que les garantiza un procesamiento rápido, confiable y de alta calidad de grandes volúmenes de datos o tareas en lotes.

Para las organizaciones financieras, es imprescindible operar en tiempo y forma. A partir de este objetivo, la duración del proceso batch debe ser lo más reducida posible, ya que en general, mientras está corriendo, muchas operaciones no funcionan y se reduce la disponibilidad de servicio. 

Un ejemplo claro de esto último se da cuando una persona ingresa al home banking y quiere hacer un pago de una tarjeta de crédito a las dos de la mañana. Eventualmente puede ocurrir que el sistema indique que la operación no se puede hacer en ese momento. 

En ciertos casos, algunas entidades bancarias permiten que la transacción quede programada para realizarse a partir de las seis de la mañana. Pero en ocasiones ocurre que la persona no puede completar la operación en el momento en el que lo necesita. 

Esta situación, que suele generar frustración y comprometer la satisfacción del usuario ocurre porque durante ese lapso, el proceso batch está en curso y no se puede realizar ninguna operación. 

Entonces, lo que se busca es achicar esa ventana batch para que la operatoria sea lo más corta posible, y que el usuario pueda operar de forma normal. 

La importancia de poder hacerlo reside en la necesidad de adaptarse a los nuevos hábitos de las personas. A diferencia de años anteriores, hoy con el celular estamos constantemente haciendo transferencias, entrando a ver la cuenta bancaria, o haciendo compras con una tarjeta de crédito o débito, incluso en horarios nocturnos. 

Comportamientos como estos sin duda aumentaron en forma significativa el tiempo de interacción con las entidades. Además de exigir mucho más al proceso batch. 

En la actualidad, estamos constantemente operando o haciendo consultas a los bancos a través del celular.
En la actualidad, estamos constantemente operando o haciendo consultas a los bancos a través del celular.

¿Cómo se optimiza un proceso batch?

Optimizar el proceso batch implica una serie de pasos clave, destinados a mejorar la eficiencia y el rendimiento general del sistema

Lo importante es tener en cuenta que la optimización del proceso batch no es un evento único, sino un esfuerzo continuo que requiere supervisión, ajustes iterativos y adaptación constante, a medida que evolucionan los requisitos del sistema y las condiciones operativas.

En primer lugar, requiere una exhaustiva evaluación del flujo de trabajo existente, para identificar cuellos de botella, ineficiencias y áreas de mejora potencial

Esto puede implicar el análisis de la arquitectura de software, el diseño de algoritmos y la optimización de consultas de base de datos para reducir el tiempo de ejecución. 

Una vez identificados los puntos de mejora, se pueden aplicar técnicas de optimización, como la paralelización de tareas, el ajuste de parámetros, la optimización de consultas y el uso eficiente de la memoria y los recursos de hardware disponibles. 

Además, la implementación de herramientas de supervisión y análisis continuo es crucial para monitorear el rendimiento del proceso batch y realizar ajustes según sea necesario para garantizar su óptimo funcionamiento a lo largo del tiempo.

Optimizar la ventana batch implica mejorar la eficiencia y el rendimiento general del sistema. 
Optimizar la ventana batch implica mejorar la eficiencia y el rendimiento general del sistema. 

Por otra parte, la optimización del proceso batch también puede beneficiarse de la automatización y la programación de tareas para minimizar la intervención manual y reducir el riesgo de errores humanos. 

La implementación de flujos de trabajo automatizados y la programación de tareas recurrentes puede ayudar a agilizar el proceso y garantizar una ejecución consistente y confiable. 

Además, es fundamental realizar pruebas exhaustivas para validar los cambios realizados durante el proceso de optimización, y asegurar que no se introduzcan nuevos problemas o degradaciones en el rendimiento. 

¿Cuánto dura una ventana batch?

El tiempo de duración de una ventana batch, durante el cual se produce la falta de disponibilidad de servicios, es variable. Depende mucho de cada entidad bancaria y los horarios que dispongan a estos efectos. 

Si bien se puede mencionar un promedio de entre 4 a 6 horas, hay entidades con menor cantidad de transacciones que solo requieren tres horas para correr todo su proceso. En el caso de los bancos con mucho volumen para procesar, la ventana puede tener una duración de entre 5 y 6 horas.

Incluso, hay días con mucha carga de transacciones, como puede ser un fin de mes, cuando hay muchos pagos de sueldos, o el día posterior a un fin de semana largo, sobre todo carnaval o Semana Santa, donde los tiempos se tienden a extender hasta las 8 horas. 

Por lo tanto, frente a un inconveniente en el proceso batch, cuanto más grande sea el nivel operativo de la entidad, menor tiempo tendrá para solucionarlo y evitar que impacte en la apertura de sucursales

De allí que sea muy importante la capacidad de organizar, sanear, curar y optimizar las cadenas batch. 

El objetivo es que en los días complejos el tiempo de duración de la ventana no se vea afectado ni se prolongue más de lo necesario, para evitar que se vea afectada la operatoria del día siguiente. Sobre todo en horarios de apertura de sucursales o en los que la gente opera con mayor frecuencia.

La capacidad para organizar, sanear, curar y optimizar las cadenas batch es vital para asegurar la disponibilidad de los servicios cuando se los requiere.
La capacidad para organizar, sanear, curar y optimizar las cadenas batch es vital para asegurar la disponibilidad de los servicios cuando se los requiere.

Impacto de la cadena batch en el procesamiento de las transacciones

El proceso batch ejecuta todas las operaciones que no son online durante el día. 

Por ejemplo, la liquidación de sueldos, el mantenimiento de las cuentas, la generación de resúmenes o los pagos de intereses de tarjeta se procesan por la noche. 

También la generación o renovación de plazos fijos, que si bien se hacen en el momento que lo solicita el cliente, quedan en un estado “frizado” y se procesan en horarios nocturnos, cuando la entidad bancaria empieza a impactar todas las operaciones del día. 

Durante el proceso batch, las entidades no están generalmente 100% disponibles, ya que existen muchas operaciones que no se pueden hacer en ese momento.

Por ello, se trabaja en optimizar el batch con el objetivo de reducir esos tiempos y que el sistema esté el menor tiempo posible indisponible, permaneciendo habilitado de modo online.

Así lo analiza Maximiliano, destacando que siempre el objetivo de todas las entidades bancarias es estar 7×24 disponibles a nivel operativo, que todo sea online y dejar de tener batch, o que sea muy acotado. “Se aspira a que las aplicaciones no se vean afectadas por el proceso batch. Por eso, es tan importante el trabajo que hacemos en nuestro Centro de excelencia Mainframe en cuánto a la optimización”, apunta. 

Si bien cuando no hay disponibilidad 100% del home banking es en horarios de madrugada, es importante optimizar y reducir el proceso batch en la mayor medida posible. Además, hay que asegurar que cualquier inconveniente que pueda ocurrir en un proceso batch no impacte en la operatoria del día siguiente. 

¿Puede una entidad bancaria estar 100% disponible 7×24? 

Romper con el esquema batch es muy complejo, porque los procesos que son batch tienen que correr y hay muchos que no están preparados para hacerlo online. 

Esta situación requiere un cambio a nivel programación. Es un camino largo para recorrer y mientras tanto, el foco está puesto en reducir el tiempo del proceso batch.

Por otra parte, siempre existen factores inevitables que pueden causar interrupciones, además del mantenimiento programado y las actualizaciones de sistemas. Algunos son: fallos de hardware imprevistos, ataques cibernéticos y desastres naturales, entre otros inconvenientes.

No obstante, el aspiracional de lograr la mayor aproximación a ese objetivo ideal siempre está presente e implica un fuerte motor para la mejora continua.

¿Cómo optimizar los procesos batch? 

En relación a aquellos sistemas, programas o tareas que están dentro de la ventana batch, que son críticos para la operatoria normal del día siguiente y que insumen mucho tiempo, lo que debe hacerse es optimizarlos con nuevas y mejores prácticas o las que hoy se utilizan

El objetivo es que funcionen más eficientemente y sus tiempos de ejecución se reduzcan en un 40% o 60%.

En cuanto a las cadenas bach que tienen muchos años de ejecución, Maximiliano explica que se debe verificar si efectivamente es necesario que estén ahí y, en el caso que no sean necesarias, depurarlas y eliminarlas.

Por ejemplo, una entidad que usaba la red interbancaria de cajeros automáticos Red Link y cambia a Banelco, debe analizar si se eliminaron todos los procesos propios de Red Link o no, para evitar inconvenientes. “Teniendo en cuenta este ejemplo, lo que hacemos es verificar que efectivamente no haya ningún proceso de Link corriendo y queden solo los de Banelco”, comenta nuestro experto.

De esta manera, la entidad se asegura que lo que esté corriendo dentro de la ventana crítica sea aquello que es obligatorio para que al día siguiente funcionen bien sus sucursales. Además de lograr, en paralelo, que la ventana crítica insuma el menor tiempo posible. 

Beneficios asociados a la optimización del proceso batch

Además de lograr que los tiempos de ejecución se reduzcan entre un 40% y un 60%, la optimización aporta otras ventajas.

Una de ellas es agilizar la detección de los procesos batch. Un beneficio que provee nuestra exclusiva herramienta OPTI, la cual cuenta con 15 años de actividad en el mercado y está instalada en todos nuestros clientes.

Para visualizar su aporte de valor hay que imaginarse que los grandes bancos corren entre 50.000 y 100.000 procesos diarios. 

Ante este volumen sería muy difícil que los equipos identificaran qué procesos optimizar, si no tuvieran una solución con las características que tenemos nosotros.

OPTI garantiza que el proceso que se optimice, elimine o depure sea el que realmente tiene un impacto en los tiempos de la cadena. Automatizando la generación de reportes, análisis y monitoreo, y facilitando los controles que se le hacen al batch. 

La herramienta hace una “foto” del proceso batch y, en aproximadamente dos y tres semanas, permite saber en dónde hay que optimizar y reducir los tiempos. 

“Luego, trabajamos con un equipo especializado en las distintas plataformas, que se encargan de optimizar estos programas o sanear y depurar las cadenas, para que los tiempos se reduzcan”, señala Maximiliano. 

Si bien hay un scheduler que ejecuta los procesos de la cadena batch, se necesita gente calificada que lo opere y garantice que los procesos terminen en tiempo y forma

“Es un trabajo en conjunto que marca el valor diferencial por el cual las entidades financieras nos siguen eligiendo, ya que les permitimos seguir mejorando los tiempos del proceso batch”, completa nuestro gerente de Data Center Services. 

OPTI garantiza que el proceso que se optimice, elimine o depure sea el que realmente tiene un impacto en los tiempos de la cadena.
OPTI garantiza que el proceso que se optimice, elimine o depure sea el que realmente tiene un impacto en los tiempos de la cadena.

¿Cuáles son los desafíos o problemáticas de los procesos batch?

Entre los principales retos que se presentan, se encuentra la existencia de plataformas Mainframe con programas desarrollados en Cobol II -u otras versiones de cierta antigüedad-, cuando lo ideal es contar con Cobol 6. 

También, sucede que se toman archivos desordenados o con una lógica del programa que está armada para un cierto volumen, que con los años cambió”, advierte Maximiliano. 

En este tipo de situaciones se necesita volver a ajustar los programas y, a nivel de bases de datos, ajustar los índices. 

A medida que va cambiando la tecnología se modifica la manera de acceder a los datos, y es necesario actualizar. De igual manera cambia la manera de operar y, como consecuencia de ello, la lógica de los programas. 

Por ejemplo, antes se debía ir a una sucursal bancaria para renovar un plazo fijo y ahora se puede hacer desde un celular. 

También pueden presentarse cadenas batch muy desorganizadas.

OPTI: una radiografía de los procesos batch en pocas semanas

Tras muchos años de trabajo con clientes del ecosistema financiero, en los que como empresa adquirimos un profundo conocimiento del proceso batch y de las necesidades del sector, desarrollamos la herramienta OPTI. 

Uno de los disparadores fue la necesidad de poder detectar de forma temprana los desvíos y desarrollar la capacidad de proyectar a qué hora terminarían los procesos batch.

Se trata de una herramienta con inteligencia propia que, en base a una serie de indicadores y estadísticas de las que se nutre por medio del scheduler, detecta los horarios en los que terminará el batch en cualquier momento de la semana, y proyecta los siguientes 6 meses. 

En constante evolución, a partir de las necesidades de nuestros clientes, OPTI está hoy implementada en el 80% de los principales bancos de la Argentina

¿Cómo se produce la monitorización de los procesos batch? Ejemplo de aplicación de OPTI

Los shedulers se encargan de administrar las tareas que se ejecutan bajo una premisa determinada. Por ejemplo, que se ejecuten en un horario puntual, una vez que termina una tarea o frente a un determinado evento. A medida que esto ocurre, se van disparando distintas tareas y eventos. 

OPTI se sincroniza con cualquiera de los shedulers actualmente disponibles en el mercado, como Control-M, Probatch y Shopdrack. 

Realiza un seguimiento adicional y permite detectar si hay una tarea que tenga muchas cancelaciones o sufra de distintos inconvenientes, que pueden llegar a afectar los tiempos del proceso batch.

Entonces, OPTI monitorea constantemente todos los procesos, de una manera eficiente, lo cuál sería muy difícil hacer de otra manera, ya que a veces se presentan hasta 50.000 procesos para controlar.

La herramienta avisa si, por ejemplo, hay un proceso que con el paso de los días va a empezar a durar cada vez más. De esta manera, se evita que el problema estalle de golpe y permite tomar acciones preventivas y tempranas para poder solucionar la problemática. 

La inteligencia artificial de OPTI permite entender cuándo hay un desvío, con un nivel de interpretación lógico: no es lo mismo un aumento de un 50% en un proceso de 1 minuto que de uno de 40 minutos. 

La herramienta sabe por sí sola cuando estos procesos son de poca o mucha duración, si están dentro de la ventana bach y si pueden llegar a afectar el horario.  

Conclusiones

Las entidades financieras tienen como uno de sus principales desafíos optimizar sus procesos batch y reducir su ventana crítica, para mejorar la disponibilidad de los servicios y reducir los tiempos de ejecución

De hecho, la optimización de los procesos batch se posiciona como un elemento clave para garantizar la operatividad continua y la satisfacción del cliente, en un entorno cada vez más digitalizado y exigente.

El papel que desempeña en este proceso la herramienta OPTI de IT Patagonia es fundamental, ya que permite identificar, monitorear y mejorar la eficiencia de los procesos batch. 

Conozca también las Claves para modernizar el Mainframe que permiten transformar los ecosistemas core a las necesidades del mercado actual.

es_AR