
En mi artículo anterior “Nunca más cree un mapeo manualmente!” Intenté mostrar nuestra idea para asegurarnos de que ya no necesite crear asignaciones en plataformas de integración como SAP Integration Suite, SAP Process Orchestration, etc. de forma manual si utiliza un enfoque generativo de desarrollo basado en pruebas. En este artículo, me gustaría mostrar los siguientes pasos con este enfoque y mostrar cómo puede ocurrir una generación típica de un programa de mapeo.
Si desea obtener más información sobre qué es el desarrollo basado en pruebas generativas, eche un vistazo rápido a esta sección «¿Qué es un desarrollo orientado a pruebas generativo (TDD generativo) y por qué es un gran avance en el desarrollo, la entrega y el mantenimiento de la plataforma de integración de SAP??” aquí «Nunca más cree un mapeo manualmente!”
Tomemos un ejemplo de migración de plataforma de integración. Es posible que deba migrar una asignación ABAP de un sistema SAP PI/XI de doble pila muy antiguo a SAP Integration Suite o tal vez tenga un sistema SAP PO y la asignación se realiza en una asignación de mensajes, pero contiene 20 UDF que funcionan en contexto y no hay documentación de esta asignación (nunca sucede, ¿verdad?), por lo que antes de moverla a SAP Integration Suite, desea cambiarla, por lo que prefiere crear una nueva asignación. Para generar un nuevo programa de mapeo, comenzaremos con la descarga de muchos pares de entrada-salida existentes/históricos del paisaje productivo. Sobre la base de esos pares de entrada-salida solo el sistema consultará ChatGPT o cualquier otra IA generativa que pueda generar asignaciones XSLT, Groovy. Una vez que se actualiza la asignación en la plataforma de integración, debe volver a ejecutar todos los pares históricos de entrada-salida disponibles y asegurarse de que se cubran todas las variantes.
Recuerde que las soluciones de IA generativa como ChatGPT no son tan inteligentes. Pueden generar el mapeo en cualquier idioma pero tienes que validarlo. Por lo tanto, la generación automatizada de asignaciones tiene un costo: debe aprender a validar sus nuevas asignaciones.
Descargue algunos cientos de pares históricos de entrada y salida para la interfaz que planea migrar. Esta es la idea del desarrollo dirigido por pruebas: comienza con casos de prueba y solo sobre la base de eso comienza a hacer el trabajo de desarrollo (o generación).
Figura: uso de Int4 Robotic Crawler para descargar 200 pares históricos de entrada y salida y crear casos de prueba a partir de ellos en Int4 Shield
Ahora comienza la diversión (generación).
Pide al sistema que prepare un mapeo basado en la colección en un idioma específico, por ejemplo XSLT.
Y la propuesta de mapeo se genera y se puede cargar en SAP Integration Suite
Valide el mapeo con todos los casos de prueba (en este caso 200) a la vez.
Figura: vuelva a probar todos los casos de prueba automáticamente para validar el mapeo generado en Int4 Shield
Un momento, algo no está bien, la asignación funcionó desde el punto de vista de la estructura, pero no desde el punto de vista del valor, ya que todos los números de material tienen un «_» innecesario en la descripción que se eliminó en la asignación anterior.
Figura: resultado de la comparación de mensajes del mapeo nuevo y antiguo en Int4 Shield
¿Qué hacer ahora? Repita los pasos 2 y 3 hasta que obtenga la validación correcta sin ningún error.
¡Éxito, la validación no devuelve ningún error!
Figura: resultado de la comparación de mensajes del mapeo nuevo y antiguo en Int4 Shield
Ahora puede finalizar la validación y su nuevo programa de mapeo se genera automáticamente y se valida por completo, gracias al poder del enfoque TDD generativo.
La generación automatizada de programas de mapeo es solo un comienzo, pero ¿qué pasa con el rendimiento? Si podemos generar mapeos y validarlos en cuestión de minutos, ¿por qué no generarlos en 2 o 3 idiomas (XSLT, Groovy) y comparar el tiempo de ejecución?
La idea del ejemplo aquí no es mostrar la función de cómo funciona exactamente el TDD generativo, sino cuáles son los pasos para generar automáticamente programas de mapeo a partir de mensajes históricos existentes y asegurarse de que pueda validarlos para que funcionen correctamente. Es un proceso iterativo que aún requiere la comprensión de lo que debe suceder, cómo debería suceder y por qué debería suceder.
Calle Eloy Gonzalo, 27
Madrid, Madrid.
Código Postal 28010
Paseo de la Reforma 26
Colonia Juárez, Cuauhtémoc
Ciudad de México 06600
Real Cariari
Autopista General Cañas,
San José, SJ 40104
Av. Jorge Basadre 349
San Isidro
Lima, LIM 15073